This commit is contained in:
Catouse
2019-10-22 09:49:36 +08:00
154 changed files with 9972 additions and 145 deletions
+1 -1
View File
@@ -1 +1 @@
11.6.3
11.6.4
+2 -1
View File
@@ -16,7 +16,7 @@ if(!class_exists('config')){class config{}}
if(!function_exists('getWebRoot')){function getWebRoot(){}}
/* 基本设置。Basic settings. */
$config->version = '11.6.3'; // ZenTaoPHP的版本。 The version of ZenTaoPHP. Don't change it.
$config->version = '11.6.4'; // ZenTaoPHP的版本。 The version of ZenTaoPHP. Don't change it.
$config->charset = 'UTF-8'; // ZenTaoPHP的编码。 The encoding of ZenTaoPHP.
$config->cookieLife = time() + 2592000; // Cookie的生存时间。The cookie life time.
$config->timezone = 'Asia/Shanghai'; // 时区设置。 The time zone setting, for more see http://www.php.net/manual/en/timezones.php.
@@ -37,6 +37,7 @@ $config->langs['zh-cn'] = '简体';
$config->langs['zh-tw'] = '繁體';
$config->langs['en'] = 'English';
$config->langs['de'] = 'Deutsch';
$config->langs['fr'] = 'Français';
/* 设备类型视图文件前缀。The prefix for view file for different device. */
$config->devicePrefix['mhtml'] = '';
+6
View File
@@ -40,6 +40,10 @@ $config->productCommonList['de'][0] = 'Produkt';
$config->productCommonList['de'][1] = 'Projekt';
$config->projectCommonList['de'][0] = 'Projekt';
$config->projectCommonList['de'][1] = 'Iteration';
$config->productCommonList['fr'][0] = 'Product';
$config->productCommonList['fr'][1] = 'Projet';
$config->projectCommonList['fr'][0] = 'Projet';
$config->projectCommonList['fr'][1] = 'Sprint';
/* Supported charsets. */
$config->charsets['zh-cn']['utf-8'] = 'UTF-8';
@@ -50,6 +54,8 @@ $config->charsets['en']['utf-8'] = 'UTF-8';
$config->charsets['en']['GBK'] = 'GBK';
$config->charsets['de']['utf-8'] = 'UTF-8';
$config->charsets['de']['GBK'] = 'GBK';
$config->charsets['fr']['utf-8'] = 'UTF-8';
$config->charsets['fr']['GBK'] = 'GBK';
/* IP white list settings.*/
$config->ipWhiteList = '*';
+937
View File
@@ -0,0 +1,937 @@
CREATE TABLE `zt_action` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`objectType` varchar(30) NOT NULL DEFAULT '',
`objectID` mediumint(8) unsigned NOT NULL DEFAULT '0',
`product` varchar(255) NOT NULL,
`project` mediumint(9) NOT NULL,
`actor` varchar(30) NOT NULL DEFAULT '',
`action` varchar(30) NOT NULL DEFAULT '',
`date` datetime NOT NULL,
`comment` text NOT NULL,
`extra` text NOT NULL,
`read` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `date` (`date`),
KEY `actor` (`actor`),
KEY `project` (`project`),
KEY `objectID` (`objectID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_block` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`account` char(30) NOT NULL,
`module` varchar(20) NOT NULL,
`title` varchar(100) NOT NULL,
`source` varchar(20) NOT NULL,
`block` varchar(20) NOT NULL,
`params` text NOT NULL,
`order` tinyint(3) unsigned NOT NULL DEFAULT '0',
`grid` tinyint(3) unsigned NOT NULL DEFAULT '0',
`height` smallint(5) unsigned NOT NULL DEFAULT '0',
`hidden` tinyint(1) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
UNIQUE KEY `accountModuleOrder` (`account`,`module`,`order`),
KEY `account` (`account`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_branch` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`product` mediumint(8) unsigned NOT NULL,
`name` varchar(255) NOT NULL,
`order` smallint(5) unsigned NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `product` (`product`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_bug` (
`id` mediumint(8) NOT NULL AUTO_INCREMENT,
`product` mediumint(8) unsigned NOT NULL DEFAULT '0',
`branch` mediumint(8) unsigned NOT NULL DEFAULT '0',
`module` mediumint(8) unsigned NOT NULL DEFAULT '0',
`project` mediumint(8) unsigned NOT NULL DEFAULT '0',
`plan` mediumint(8) unsigned NOT NULL DEFAULT '0',
`story` mediumint(8) unsigned NOT NULL DEFAULT '0',
`storyVersion` smallint(6) NOT NULL DEFAULT '1',
`task` mediumint(8) unsigned NOT NULL DEFAULT '0',
`toTask` mediumint(8) unsigned NOT NULL DEFAULT '0',
`toStory` mediumint(8) NOT NULL DEFAULT '0',
`title` varchar(255) NOT NULL,
`keywords` varchar(255) NOT NULL,
`severity` tinyint(4) NOT NULL DEFAULT '0',
`pri` tinyint(3) unsigned NOT NULL,
`type` varchar(30) NOT NULL DEFAULT '',
`os` varchar(30) NOT NULL DEFAULT '',
`browser` varchar(30) NOT NULL DEFAULT '',
`hardware` varchar(30) NOT NULL,
`found` varchar(30) NOT NULL DEFAULT '',
`steps` text NOT NULL,
`status` enum('active','resolved','closed') NOT NULL DEFAULT 'active',
`subStatus` varchar(30) NOT NULL DEFAULT '',
`color` char(7) NOT NULL,
`confirmed` tinyint(1) NOT NULL DEFAULT '0',
`activatedCount` smallint(6) NOT NULL,
`activatedDate` datetime NOT NULL,
`mailto` text,
`openedBy` varchar(30) NOT NULL DEFAULT '',
`openedDate` datetime NOT NULL,
`openedBuild` varchar(255) NOT NULL,
`assignedTo` varchar(30) NOT NULL DEFAULT '',
`assignedDate` datetime NOT NULL,
`deadline` date NOT NULL,
`resolvedBy` varchar(30) NOT NULL DEFAULT '',
`resolution` varchar(30) NOT NULL DEFAULT '',
`resolvedBuild` varchar(30) NOT NULL DEFAULT '',
`resolvedDate` datetime NOT NULL,
`closedBy` varchar(30) NOT NULL DEFAULT '',
`closedDate` datetime NOT NULL,
`duplicateBug` mediumint(8) unsigned NOT NULL,
`linkBug` varchar(255) NOT NULL,
`case` mediumint(8) unsigned NOT NULL,
`caseVersion` smallint(6) NOT NULL DEFAULT '1',
`result` mediumint(8) unsigned NOT NULL,
`testtask` mediumint(8) unsigned NOT NULL,
`lastEditedBy` varchar(30) NOT NULL DEFAULT '',
`lastEditedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `product` (`product`),
KEY `project` (`project`),
KEY `status` (`status`),
KEY `plan` (`plan`),
KEY `story` (`story`),
KEY `case` (`case`),
KEY `assignedTo` (`assignedTo`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_build` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`product` mediumint(8) unsigned NOT NULL DEFAULT '0',
`branch` mediumint(8) unsigned NOT NULL DEFAULT '0',
`project` mediumint(8) unsigned NOT NULL DEFAULT '0',
`name` char(150) NOT NULL,
`scmPath` char(255) NOT NULL,
`filePath` char(255) NOT NULL,
`date` date NOT NULL,
`stories` text NOT NULL,
`bugs` text NOT NULL,
`builder` char(30) NOT NULL DEFAULT '',
`desc` text NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `product` (`product`),
KEY `project` (`project`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_burn` (
`project` mediumint(8) unsigned NOT NULL,
`task` mediumint(8) unsigned NOT NULL DEFAULT '0',
`date` date NOT NULL,
`estimate` float NOT NULL,
`left` float NOT NULL,
`consumed` float NOT NULL,
PRIMARY KEY (`project`,`date`,`task`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_case` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`product` mediumint(8) unsigned NOT NULL DEFAULT '0',
`branch` mediumint(8) unsigned NOT NULL DEFAULT '0',
`lib` mediumint(8) unsigned NOT NULL DEFAULT '0',
`module` mediumint(8) unsigned NOT NULL DEFAULT '0',
`path` mediumint(8) unsigned NOT NULL DEFAULT '0',
`story` mediumint(30) unsigned NOT NULL DEFAULT '0',
`storyVersion` smallint(6) NOT NULL DEFAULT '1',
`title` varchar(255) NOT NULL,
`precondition` text NOT NULL,
`keywords` varchar(255) NOT NULL,
`pri` tinyint(3) unsigned NOT NULL DEFAULT '3',
`type` char(30) NOT NULL DEFAULT '1',
`stage` varchar(255) NOT NULL,
`howRun` varchar(30) NOT NULL,
`scriptedBy` varchar(30) NOT NULL,
`scriptedDate` date NOT NULL,
`scriptStatus` varchar(30) NOT NULL,
`scriptLocation` varchar(255) NOT NULL,
`status` char(30) NOT NULL DEFAULT '1',
`subStatus` varchar(30) NOT NULL DEFAULT '',
`color` char(7) NOT NULL,
`frequency` enum('1','2','3') NOT NULL DEFAULT '1',
`order` tinyint(30) unsigned NOT NULL DEFAULT '0',
`openedBy` char(30) NOT NULL DEFAULT '',
`openedDate` datetime NOT NULL,
`reviewedBy` varchar(255) NOT NULL,
`reviewedDate` date NOT NULL,
`lastEditedBy` char(30) NOT NULL DEFAULT '',
`lastEditedDate` datetime NOT NULL,
`version` tinyint(3) unsigned NOT NULL DEFAULT '0',
`linkCase` varchar(255) NOT NULL,
`fromBug` mediumint(8) unsigned NOT NULL,
`fromCaseID` mediumint(8) unsigned NOT NULL,
`fromCaseVersion` mediumint(8) unsigned NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
`lastRunner` varchar(30) NOT NULL,
`lastRunDate` datetime NOT NULL,
`lastRunResult` char(30) NOT NULL,
PRIMARY KEY (`id`),
KEY `product` (`product`),
KEY `story` (`story`),
KEY `module` (`module`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_casestep` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`parent` mediumint(8) unsigned NOT NULL DEFAULT '0',
`case` mediumint(8) unsigned NOT NULL DEFAULT '0',
`version` smallint(3) unsigned NOT NULL DEFAULT '0',
`type` varchar(10) NOT NULL DEFAULT 'step',
`desc` text NOT NULL,
`expect` text NOT NULL,
PRIMARY KEY (`id`),
KEY `case` (`case`),
KEY `version` (`version`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_company` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`name` char(120) DEFAULT NULL,
`phone` char(20) DEFAULT NULL,
`fax` char(20) DEFAULT NULL,
`address` char(120) DEFAULT NULL,
`zipcode` char(10) DEFAULT NULL,
`website` char(120) DEFAULT NULL,
`backyard` char(120) DEFAULT NULL,
`guest` enum('1','0') NOT NULL DEFAULT '0',
`admins` char(255) DEFAULT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_config` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`owner` char(30) NOT NULL DEFAULT '',
`module` varchar(30) NOT NULL,
`section` char(30) NOT NULL DEFAULT '',
`key` char(30) NOT NULL DEFAULT '',
`value` text NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `unique` (`owner`,`module`,`section`,`key`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_cron` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`m` varchar(20) NOT NULL,
`h` varchar(20) NOT NULL,
`dom` varchar(20) NOT NULL,
`mon` varchar(20) NOT NULL,
`dow` varchar(20) NOT NULL,
`command` text NOT NULL,
`remark` varchar(255) NOT NULL,
`type` varchar(20) NOT NULL,
`buildin` tinyint(1) NOT NULL DEFAULT '0',
`status` varchar(20) NOT NULL,
`lastTime` datetime NOT NULL,
PRIMARY KEY (`id`),
KEY `lastTime` (`lastTime`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_dept` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`name` char(60) NOT NULL,
`parent` mediumint(8) unsigned NOT NULL DEFAULT '0',
`path` char(255) NOT NULL DEFAULT '',
`grade` tinyint(3) unsigned NOT NULL DEFAULT '0',
`order` tinyint(3) unsigned NOT NULL DEFAULT '0',
`position` char(30) NOT NULL DEFAULT '',
`function` char(255) NOT NULL DEFAULT '',
`manager` char(30) NOT NULL DEFAULT '',
PRIMARY KEY (`id`),
KEY `parent` (`parent`),
KEY `path` (`path`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_doc` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`product` mediumint(8) unsigned NOT NULL,
`project` mediumint(8) unsigned NOT NULL,
`lib` varchar(30) NOT NULL,
`module` varchar(30) NOT NULL,
`title` varchar(255) NOT NULL,
`keywords` varchar(255) NOT NULL,
`type` varchar(30) NOT NULL,
`views` smallint(5) unsigned NOT NULL,
`collector` text NOT NULL,
`addedBy` varchar(30) NOT NULL,
`addedDate` datetime NOT NULL,
`editedBy` varchar(30) NOT NULL,
`editedDate` datetime NOT NULL,
`acl` varchar(10) NOT NULL DEFAULT 'open',
`groups` varchar(255) NOT NULL,
`users` text NOT NULL,
`version` smallint(5) unsigned NOT NULL DEFAULT '1',
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `product` (`product`),
KEY `project` (`project`),
KEY `lib` (`lib`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_doccontent` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`doc` mediumint(8) unsigned NOT NULL,
`title` varchar(255) NOT NULL,
`digest` varchar(255) NOT NULL,
`content` text NOT NULL,
`files` text NOT NULL,
`type` varchar(10) NOT NULL,
`version` smallint(5) unsigned NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `doc_version` (`doc`,`version`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_doclib` (
`id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
`type` varchar(30) NOT NULL,
`product` mediumint(8) unsigned NOT NULL,
`project` mediumint(8) unsigned NOT NULL,
`name` varchar(60) NOT NULL,
`acl` varchar(10) NOT NULL DEFAULT 'open',
`groups` varchar(255) NOT NULL,
`users` text NOT NULL,
`main` enum('0','1') NOT NULL DEFAULT '0',
`collector` text NOT NULL,
`order` tinyint(5) unsigned NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `product` (`product`),
KEY `project` (`project`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_effort` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`user` char(30) NOT NULL DEFAULT '',
`todo` enum('1','0') NOT NULL DEFAULT '1',
`date` date NOT NULL,
`begin` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`end` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`type` enum('1','2','3') NOT NULL DEFAULT '1',
`idvalue` mediumint(8) unsigned NOT NULL DEFAULT '0',
`name` char(30) NOT NULL DEFAULT '',
`desc` char(255) NOT NULL DEFAULT '',
`status` enum('1','2','3') NOT NULL DEFAULT '1',
PRIMARY KEY (`id`),
KEY `user` (`user`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `zt_entry` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(50) NOT NULL,
`account` varchar(30) NOT NULL DEFAULT '',
`code` varchar(20) NOT NULL,
`key` varchar(32) NOT NULL,
`freePasswd` enum('0','1') NOT NULL DEFAULT '0',
`ip` varchar(100) NOT NULL,
`desc` text NOT NULL,
`createdBy` varchar(30) NOT NULL,
`createdDate` datetime NOT NULL,
`calledTime` int(10) unsigned NOT NULL DEFAULT '0',
`editedBy` varchar(30) NOT NULL,
`editedDate` datetime NOT NULL,
`deleted` enum('0', '1') NOT NULL DEFAULT '0',
PRIMARY KEY `id` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_extension` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(150) NOT NULL,
`code` varchar(30) NOT NULL,
`version` varchar(50) NOT NULL,
`author` varchar(100) NOT NULL,
`desc` text NOT NULL,
`license` text NOT NULL,
`type` varchar(20) NOT NULL DEFAULT 'extension',
`site` varchar(150) NOT NULL,
`zentaoCompatible` varchar(100) NOT NULL,
`installedTime` datetime NOT NULL,
`depends` varchar(100) NOT NULL,
`dirs` mediumtext NOT NULL,
`files` mediumtext NOT NULL,
`status` varchar(20) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `code` (`code`),
KEY `name` (`name`),
KEY `installedTime` (`installedTime`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_file` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`pathname` char(100) NOT NULL,
`title` char(255) NOT NULL,
`extension` char(30) NOT NULL,
`size` int(10) unsigned NOT NULL DEFAULT '0',
`objectType` char(30) NOT NULL,
`objectID` mediumint(9) NOT NULL,
`addedBy` char(30) NOT NULL DEFAULT '',
`addedDate` datetime NOT NULL,
`downloads` mediumint(8) unsigned NOT NULL DEFAULT '0',
`extra` varchar(255) NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `objectType` (`objectType`),
KEY `objectID` (`objectID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_group` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`name` char(30) NOT NULL,
`role` char(30) NOT NULL DEFAULT '',
`desc` char(255) NOT NULL DEFAULT '',
`acl` text,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_grouppriv` (
`group` mediumint(8) unsigned NOT NULL DEFAULT '0',
`module` char(30) NOT NULL DEFAULT '',
`method` char(30) NOT NULL DEFAULT '',
UNIQUE KEY `group` (`group`,`module`,`method`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_history` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`action` mediumint(8) unsigned NOT NULL DEFAULT '0',
`field` varchar(30) NOT NULL DEFAULT '',
`old` text NOT NULL,
`new` text NOT NULL,
`diff` mediumtext NOT NULL,
PRIMARY KEY (`id`),
KEY `action` (`action`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_lang` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`lang` varchar(30) NOT NULL,
`module` varchar(30) NOT NULL,
`section` varchar(30) NOT NULL,
`key` varchar(60) NOT NULL,
`value` text NOT NULL,
`system` enum('0','1') NOT NULL DEFAULT '1',
PRIMARY KEY (`id`),
UNIQUE KEY `lang` (`lang`,`module`,`section`,`key`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_log` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`objectType` varchar(30) NOT NULL,
`objectID` mediumint(8) unsigned NOT NULL,
`action` mediumint(8) unsigned NOT NULL,
`date` datetime NOT NULL,
`url` varchar(255) NOT NULL,
`contentType` varchar(30) NOT NULL,
`data` text NOT NULL,
`result` text NOT NULL,
PRIMARY KEY (`id`),
KEY `objectType` (`objectType`),
KEY `obejctID` (`objectID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_module` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`root` mediumint(8) unsigned NOT NULL DEFAULT '0',
`branch` mediumint(8) unsigned NOT NULL DEFAULT '0',
`name` char(60) NOT NULL DEFAULT '',
`parent` mediumint(8) unsigned NOT NULL DEFAULT '0',
`path` char(255) NOT NULL DEFAULT '',
`grade` tinyint(3) unsigned NOT NULL DEFAULT '0',
`order` smallint(5) unsigned NOT NULL DEFAULT '0',
`type` char(30) NOT NULL,
`owner` varchar(30) NOT NULL,
`collector` text NOT NULL,
`short` varchar(30) NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `root` (`root`),
KEY `type` (`type`),
KEY `path` (`path`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_notify` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`objectType` varchar(50) NOT NULL,
`objectID` mediumint(8) unsigned NOT NULL,
`action` mediumint(9) NOT NULL,
`toList` varchar(255) NOT NULL,
`ccList` text NOT NULL,
`subject` varchar(255) NOT NULL,
`data` text NOT NULL,
`createdBy` char(30) NOT NULL,
`createdDate` datetime NOT NULL,
`sendTime` datetime NOT NULL,
`status` varchar(10) NOT NULL DEFAULT 'wait',
`failReason` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_product` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(90) NOT NULL,
`code` varchar(45) NOT NULL,
`line` mediumint(8) NOT NULL,
`type` varchar(30) NOT NULL DEFAULT 'normal',
`status` varchar(30) NOT NULL DEFAULT '',
`subStatus` varchar(30) NOT NULL DEFAULT '',
`desc` text NOT NULL,
`PO` varchar(30) NOT NULL,
`QD` varchar(30) NOT NULL,
`RD` varchar(30) NOT NULL,
`acl` enum('open','private','custom') NOT NULL DEFAULT 'open',
`whitelist` text NOT NULL,
`createdBy` varchar(30) NOT NULL,
`createdDate` datetime NOT NULL,
`createdVersion` varchar(20) NOT NULL,
`order` mediumint(8) unsigned NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `order` (`order`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_productplan` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`product` mediumint(8) unsigned NOT NULL,
`branch` mediumint(8) unsigned NOT NULL,
`parent` mediumint(9) NOT NULL DEFAULT '0',
`title` varchar(90) NOT NULL,
`desc` text NOT NULL,
`begin` date NOT NULL,
`end` date NOT NULL,
`order` text NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `product` (`product`),
KEY `end` (`end`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_project` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`isCat` enum('1','0') NOT NULL DEFAULT '0',
`catID` mediumint(8) unsigned NOT NULL,
`type` varchar(20) NOT NULL DEFAULT 'sprint',
`parent` mediumint(8) unsigned NOT NULL DEFAULT '0',
`name` varchar(90) NOT NULL,
`code` varchar(45) NOT NULL,
`begin` date NOT NULL,
`end` date NOT NULL,
`days` smallint(5) unsigned NOT NULL,
`status` varchar(10) NOT NULL,
`subStatus` varchar(30) NOT NULL DEFAULT '',
`statge` enum('1','2','3','4','5') NOT NULL DEFAULT '1',
`pri` enum('1','2','3','4') NOT NULL DEFAULT '1',
`desc` text NOT NULL,
`openedBy` varchar(30) NOT NULL DEFAULT '',
`openedDate` datetime NOT NULL,
`openedVersion` varchar(20) NOT NULL,
`closedBy` varchar(30) NOT NULL DEFAULT '',
`closedDate` datetime NOT NULL,
`canceledBy` varchar(30) NOT NULL DEFAULT '',
`canceledDate` datetime NOT NULL,
`PO` varchar(30) NOT NULL DEFAULT '',
`PM` varchar(30) NOT NULL DEFAULT '',
`QD` varchar(30) NOT NULL DEFAULT '',
`RD` varchar(30) NOT NULL DEFAULT '',
`team` varchar(90) NOT NULL,
`acl` enum('open','private','custom') NOT NULL DEFAULT 'open',
`whitelist` text NOT NULL,
`order` mediumint(8) unsigned NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `parent` (`parent`),
KEY `begin` (`begin`),
KEY `end` (`end`),
KEY `status` (`status`),
KEY `order` (`order`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_projectproduct` (
`project` mediumint(8) unsigned NOT NULL,
`product` mediumint(8) unsigned NOT NULL,
`branch` mediumint(8) unsigned NOT NULL,
`plan` mediumint(8) unsigned NOT NULL,
PRIMARY KEY (`project`,`product`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_projectstory` (
`project` mediumint(8) unsigned NOT NULL DEFAULT '0',
`product` mediumint(8) unsigned NOT NULL,
`story` mediumint(8) unsigned NOT NULL DEFAULT '0',
`version` smallint(6) NOT NULL DEFAULT '1',
`order` smallint(6) unsigned NOT NULL,
UNIQUE KEY `project` (`project`,`story`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_release` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`product` mediumint(8) unsigned NOT NULL DEFAULT '0',
`branch` mediumint(8) unsigned NOT NULL DEFAULT '0',
`build` mediumint(8) unsigned NOT NULL,
`name` varchar(255) NOT NULL DEFAULT '',
`marker` enum('0','1') NOT NULL DEFAULT '0',
`date` date NOT NULL,
`stories` text NOT NULL,
`bugs` text NOT NULL,
`leftBugs` text NOT NULL,
`desc` text NOT NULL,
`status` varchar(20) NOT NULL DEFAULT 'normal',
`subStatus` varchar(30) NOT NULL DEFAULT '',
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `product` (`product`),
KEY `build` (`build`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_score` (
`id` bigint(12) unsigned NOT NULL AUTO_INCREMENT,
`account` varchar(30) NOT NULL,
`module` varchar(30) NOT NULL DEFAULT '',
`method` varchar(30) NOT NULL,
`desc` varchar(250) NOT NULL DEFAULT '',
`before` int(11) NOT NULL DEFAULT '0',
`score` int(11) NOT NULL DEFAULT '0',
`after` int(11) NOT NULL DEFAULT '0',
`time` datetime NOT NULL,
PRIMARY KEY (`id`),
KEY `account` (`account`),
KEY `model` (`module`),
KEY `method` (`method`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `zt_story` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
`product` mediumint(8) unsigned NOT NULL default '0',
`branch` mediumint(8) unsigned NOT NULL default '0',
`module` mediumint(8) unsigned NOT NULL default '0',
`plan` text,
`source` varchar(20) NOT NULL,
`sourceNote` varchar(255) NOT NULL,
`fromBug` mediumint(8) unsigned NOT NULL default '0',
`title` varchar(255) NOT NULL,
`keywords` varchar(255) NOT NULL,
`type` varchar(30) NOT NULL default '',
`pri` tinyint(3) unsigned NOT NULL default '3',
`estimate` float unsigned NOT NULL,
`status` enum('','changed','active','draft','closed') NOT NULL default '',
`subStatus` varchar(30) NOT NULL DEFAULT '',
`color` char(7) NOT NULL,
`stage` enum('','wait','planned','projected','developing','developed','testing','tested','verified','released', 'closed') NOT NULL DEFAULT 'wait',
`stagedBy` char(30) NOT NULL,
`mailto` text,
`openedBy` varchar(30) NOT NULL default '',
`openedDate` datetime NOT NULL,
`assignedTo` varchar(30) NOT NULL default '',
`assignedDate` datetime NOT NULL,
`lastEditedBy` varchar(30) NOT NULL default '',
`lastEditedDate` datetime NOT NULL,
`reviewedBy` varchar(255) NOT NULL,
`reviewedDate` date NOT NULL,
`closedBy` varchar(30) NOT NULL default '',
`closedDate` datetime NOT NULL,
`closedReason` varchar(30) NOT NULL,
`toBug` mediumint(8) unsigned NOT NULL,
`childStories` varchar(255) NOT NULL,
`linkStories` varchar(255) NOT NULL,
`duplicateStory` mediumint(8) unsigned NOT NULL,
`version` smallint(6) NOT NULL default '1',
`deleted` enum('0','1') NOT NULL default '0',
PRIMARY KEY (`id`),
KEY `product` (`product`),
KEY `status` (`status`),
KEY `assignedTo` (`assignedTo`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_storyspec` (
`story` mediumint(9) NOT NULL,
`version` smallint(6) NOT NULL,
`title` varchar(255) NOT NULL,
`spec` text NOT NULL,
`verify` text NOT NULL,
UNIQUE KEY `story` (`story`,`version`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `zt_storystage` (
`story` mediumint(8) unsigned NOT NULL,
`branch` mediumint(8) unsigned NOT NULL,
`stage` varchar(50) NOT NULL,
`stagedBy` char(30) NOT NULL,
UNIQUE KEY `story_branch` (`story`,`branch`),
KEY `story` (`story`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_suitecase` (
`suite` mediumint(8) unsigned NOT NULL,
`product` mediumint(8) unsigned NOT NULL,
`case` mediumint(8) unsigned NOT NULL,
`version` smallint(5) unsigned NOT NULL,
UNIQUE KEY `suitecase` (`suite`,`case`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_task` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`parent` mediumint(8) NOT NULL DEFAULT '0',
`project` mediumint(8) unsigned NOT NULL DEFAULT '0',
`module` mediumint(8) unsigned NOT NULL DEFAULT '0',
`story` mediumint(8) unsigned NOT NULL DEFAULT '0',
`storyVersion` smallint(6) NOT NULL DEFAULT '1',
`fromBug` mediumint(8) unsigned NOT NULL DEFAULT '0',
`name` varchar(255) NOT NULL,
`type` varchar(20) NOT NULL,
`pri` tinyint(3) unsigned NOT NULL DEFAULT '0',
`estimate` float unsigned NOT NULL,
`consumed` float unsigned NOT NULL,
`left` float unsigned NOT NULL,
`deadline` date NOT NULL,
`status` enum('wait','doing','done','pause','cancel','closed') NOT NULL DEFAULT 'wait',
`subStatus` varchar(30) NOT NULL DEFAULT '',
`color` char(7) NOT NULL,
`mailto` text,
`desc` text NOT NULL,
`openedBy` varchar(30) NOT NULL,
`openedDate` datetime NOT NULL,
`assignedTo` varchar(30) NOT NULL,
`assignedDate` datetime NOT NULL,
`estStarted` date NOT NULL,
`realStarted` date NOT NULL,
`finishedBy` varchar(30) NOT NULL,
`finishedDate` datetime NOT NULL,
`finishedList` text NOT NULL,
`canceledBy` varchar(30) NOT NULL,
`canceledDate` datetime NOT NULL,
`closedBy` varchar(30) NOT NULL,
`closedDate` datetime NOT NULL,
`closedReason` varchar(30) NOT NULL,
`lastEditedBy` varchar(30) NOT NULL,
`lastEditedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `project` (`project`),
KEY `story` (`story`),
KEY `assignedTo` (`assignedTo`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_taskestimate` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`task` mediumint(8) unsigned NOT NULL DEFAULT '0',
`date` date NOT NULL,
`left` float unsigned NOT NULL DEFAULT '0',
`consumed` float unsigned NOT NULL,
`account` char(30) NOT NULL DEFAULT '',
`work` text,
PRIMARY KEY (`id`),
KEY `task` (`task`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_team` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`root` mediumint(8) unsigned NOT NULL DEFAULT '0',
`type` enum('project','task') NOT NULL DEFAULT 'project',
`account` char(30) NOT NULL DEFAULT '',
`role` char(30) NOT NULL DEFAULT '',
`limited` char(8) NOT NULL DEFAULT 'no',
`join` date NOT NULL DEFAULT '0000-00-00',
`days` smallint(5) unsigned NOT NULL,
`hours` float(2,1) unsigned NOT NULL DEFAULT '0.0',
`estimate` decimal(12,2) unsigned NOT NULL DEFAULT '0.00',
`consumed` decimal(12,2) unsigned NOT NULL DEFAULT '0.00',
`left` decimal(12,2) unsigned NOT NULL DEFAULT '0.00',
`order` tinyint(3) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
UNIQUE KEY `team` (`root`,`type`,`account`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_testreport` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`product` mediumint(8) unsigned NOT NULL,
`project` mediumint(8) unsigned NOT NULL,
`tasks` varchar(255) NOT NULL,
`builds` varchar(255) NOT NULL,
`title` varchar(255) NOT NULL,
`begin` date NOT NULL,
`end` date NOT NULL,
`owner` char(30) NOT NULL,
`members` text NOT NULL,
`stories` text NOT NULL,
`bugs` text NOT NULL,
`cases` text NOT NULL,
`report` text NOT NULL,
`objectType` varchar(20) NOT NULL,
`objectID` mediumint(8) unsigned NOT NULL,
`createdBy` char(30) NOT NULL,
`createdDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_testresult` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`run` mediumint(8) unsigned NOT NULL,
`case` mediumint(8) unsigned NOT NULL,
`version` smallint(5) unsigned NOT NULL,
`caseResult` char(30) NOT NULL,
`stepResults` text NOT NULL,
`lastRunner` varchar(30) NOT NULL,
`date` datetime NOT NULL,
PRIMARY KEY (`id`),
KEY `case` (`case`),
KEY `version` (`version`),
KEY `run` (`run`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_testrun` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`task` mediumint(8) unsigned NOT NULL DEFAULT '0',
`case` mediumint(8) unsigned NOT NULL DEFAULT '0',
`version` tinyint(3) unsigned NOT NULL DEFAULT '0',
`assignedTo` char(30) NOT NULL DEFAULT '',
`lastRunner` varchar(30) NOT NULL,
`lastRunDate` datetime NOT NULL,
`lastRunResult` char(30) NOT NULL,
`status` char(30) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `task` (`task`,`case`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_testsuite` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`product` mediumint(8) unsigned NOT NULL,
`name` varchar(255) NOT NULL,
`desc` text NOT NULL,
`type` varchar(20) NOT NULL,
`addedBy` char(30) NOT NULL,
`addedDate` datetime NOT NULL,
`lastEditedBy` char(30) NOT NULL,
`lastEditedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL,
PRIMARY KEY (`id`),
KEY `product` (`product`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_testtask` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`name` char(90) NOT NULL,
`product` mediumint(8) unsigned NOT NULL,
`project` mediumint(8) unsigned NOT NULL DEFAULT '0',
`build` char(30) NOT NULL,
`owner` varchar(30) NOT NULL,
`pri` tinyint(3) unsigned NOT NULL DEFAULT '0',
`begin` date NOT NULL,
`end` date NOT NULL,
`mailto` text,
`desc` text NOT NULL,
`report` text NOT NULL,
`status` enum('blocked','doing','wait','done') NOT NULL DEFAULT 'wait',
`subStatus` varchar(30) NOT NULL DEFAULT '',
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `product` (`product`),
KEY `build` (`build`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_translation` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`lang` varchar(30) NOT NULL,
`module` varchar(30) NOT NULL,
`key` varchar(100) NOT NULL,
`value` text NOT NULL,
`referer` text NOT NULL,
`status` varchar(30) NOT NULL,
`translator` char(30) NOT NULL,
`translatedTime` datetime NOT NULL,
`reviewer` char(30) NOT NULL,
`reviewedTime` datetime NOT NULL,
`reason` text NOT NULL,
`version` varchar(20) NOT NULL,
`mode` varchar(20) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `lang_module_key_mode` (`lang`,`module`,`key`,`mode`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_todo` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`account` char(30) NOT NULL,
`date` date NOT NULL,
`begin` smallint(4) unsigned zerofill NOT NULL,
`end` smallint(4) unsigned zerofill NOT NULL,
`type` char(10) NOT NULL,
`cycle` tinyint(3) unsigned NOT NULL DEFAULT '0',
`idvalue` mediumint(8) unsigned NOT NULL DEFAULT '0',
`pri` tinyint(3) unsigned NOT NULL,
`name` char(150) NOT NULL,
`desc` text NOT NULL,
`status` enum('wait','doing','done','closed') NOT NULL DEFAULT 'wait',
`private` tinyint(1) NOT NULL,
`config` varchar(255) NOT NULL,
`assignedTo` varchar(30) NOT NULL DEFAULT '',
`assignedBy` varchar(30) NOT NULL DEFAULT '',
`assignedDate` datetime NOT NULL,
`finishedBy` varchar(30) NOT NULL DEFAULT '',
`finishedDate` datetime NOT NULL,
`closedBy` varchar(30) NOT NULL DEFAULT '',
`closedDate` datetime NOT NULL,
PRIMARY KEY (`id`),
KEY `account` (`account`),
KEY `assignedTo` (`assignedTo`),
KEY `finishedBy` (`finishedBy`),
KEY `date` (`date`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_user` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`dept` mediumint(8) unsigned NOT NULL DEFAULT '0',
`account` char(30) NOT NULL DEFAULT '',
`password` char(32) NOT NULL DEFAULT '',
`role` char(10) NOT NULL DEFAULT '',
`realname` varchar(100) NOT NULL DEFAULT '',
`nickname` char(60) NOT NULL DEFAULT '',
`commiter` varchar(100) NOT NULL,
`avatar` char(30) NOT NULL DEFAULT '',
`birthday` date NOT NULL DEFAULT '0000-00-00',
`gender` enum('f','m') NOT NULL DEFAULT 'f',
`email` char(90) NOT NULL DEFAULT '',
`skype` char(90) NOT NULL DEFAULT '',
`qq` char(20) NOT NULL DEFAULT '',
`mobile` char(11) NOT NULL DEFAULT '',
`phone` char(20) NOT NULL DEFAULT '',
`weixin` varchar(90) NOT NULL DEFAULT '',
`dingding` varchar(90) NOT NULL DEFAULT '',
`slack` varchar(90) NOT NULL DEFAULT '',
`whatsapp` varchar(90) NOT NULL DEFAULT '',
`address` char(120) NOT NULL DEFAULT '',
`zipcode` char(10) NOT NULL DEFAULT '',
`join` date NOT NULL DEFAULT '0000-00-00',
`visits` mediumint(8) unsigned NOT NULL DEFAULT '0',
`ip` char(15) NOT NULL DEFAULT '',
`last` int(10) unsigned NOT NULL DEFAULT '0',
`fails` tinyint(5) NOT NULL DEFAULT '0',
`locked` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`ranzhi` char(30) NOT NULL DEFAULT '',
`score` int(11) NOT NULL DEFAULT '0',
`scoreLevel` int(11) NOT NULL DEFAULT '0',
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
UNIQUE KEY `account` (`account`),
KEY `dept` (`dept`),
KEY `email` (`email`),
KEY `commiter` (`commiter`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_usercontact` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`account` char(30) NOT NULL,
`listName` varchar(60) NOT NULL,
`userList` text NOT NULL,
PRIMARY KEY (`id`),
KEY `account` (`account`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_usergroup` (
`account` char(30) NOT NULL DEFAULT '',
`group` mediumint(8) unsigned NOT NULL DEFAULT '0',
UNIQUE KEY `account` (`account`,`group`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_userquery` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`account` char(30) NOT NULL,
`module` varchar(30) NOT NULL,
`title` varchar(90) NOT NULL,
`form` text NOT NULL,
`sql` text NOT NULL,
`shortcut` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `account` (`account`),
KEY `module` (`module`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_usertpl` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`account` char(30) NOT NULL,
`type` char(30) NOT NULL,
`title` varchar(150) NOT NULL,
`content` text NOT NULL,
`public` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `account` (`account`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_userview` (
`account` char(30) NOT NULL,
`products` mediumtext NOT NULL,
`projects` mediumtext NOT NULL,
UNIQUE KEY `account` (`account`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `zt_webhook` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`type` varchar(10) NOT NULL DEFAULT 'default',
`name` varchar(50) NOT NULL,
`url` varchar(255) NOT NULL,
`domain` varchar(255) NOT NULL,
`contentType` varchar(30) NOT NULL DEFAULT 'application/json',
`sendType` enum('sync','async') NOT NULL DEFAULT 'sync',
`products` text NOT NULL,
`projects` text NOT NULL,
`params` varchar(100) NOT NULL,
`actions` text NOT NULL,
`desc` text NOT NULL,
`createdBy` varchar(30) NOT NULL,
`createdDate` datetime NOT NULL,
`editedBy` varchar(30) NOT NULL,
`editedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-1
View File
@@ -1026,7 +1026,6 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(1, 'admin', 'index'),
(1, 'admin', 'safe'),
(1, 'api', 'debug'),
(1, 'api', 'sql'),
(1, 'backup', 'backup'),
(1, 'backup', 'change'),
(1, 'backup', 'delete'),
+36
View File
@@ -1,3 +1,39 @@
2019-10-17 11.6.4
完成的需求:
4392 维护文档分类切换所属文档库后把分类下面的文档也带到新文档库中
4390 禅道英文版的About 中增加翻译者的名字
4349 用户名中可以加“.”
修复的Bug:
2621 禅道集成客户端版本显示问题
2648 bug的视图权限提示不准确
2652 移除测试单中关联的用例,分页栏显示异常
2657 内网禅道提交需求时,所属模块下拉时无法定位到模块对应的值
2661 测试用例库提示页面错误
2662 创建需求提交没有响应
2663 项目文档,项目下拉菜单已结束显示位置不正确
2666 需求已完成的键 由 done 改成了 fixed,导致需求关联的计划丢失
2684 文档设置不显示子分类文档无效
2691 产品下拉框样式重叠
2692 保存按钮提示不统一
2714 测试单中搜索用例状态显示结果不准确
2716 激活测试单时显示报错窗口
2717 邮件列表状态提示不一致
2719 套件关联用例后,进入套件详情界面报错。
2720 测试单详情的测试用例,右侧的执行按钮可用状态与下方的执行按钮不一致。
2721 编辑器中的代码功能自动增加多余空格
2724 创建项目关联多个产品,不提示导入关联计划下需求
2728 项目导入bug会列出已经解决的bug
2729 客户端登录禅道用户登录次数会+2
2731 搜索框更换条件搜索后选择上周没有反应
2733 php7.2版本兼容问题
2737 在项目模块下下创建任务无法关联需求
2739 测试-bug-批量建用例 同一个需求可以关联多个模块
2742 漏洞需要修复
2744 添加用户页面和修改密码页面存在密码明文传输
2748 禅道翻译功能,翻译日语时, 当翻译结果与原文一致时,无法保存。
2754 翻译功能,新手教程中,创建账号,创建产品与创建需求,对照翻译时,复制到所翻译语言中的变量没有作用
2767 翻译功能限制打开无效
2019-09-24 11.6.3
修复的Bug:
2722 多人任务轮流完成之后状态异常
+5
View File
@@ -594,6 +594,11 @@ class baseRouter
unset($GLOBALS);
unset($_REQUEST);
/* Change for CSRF. */
$httpType = (isset($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] == 'on') ? 'https' : 'http';
$httpHost = $_SERVER['HTTP_HOST'];
if(strpos($this->server->http_referer, "$httpType://$httpHost") !== 0) $_FILES = $_POST = array();
$_FILES = validater::filterFiles();
$_POST = validater::filterSuper($_POST);
$_GET = validater::filterSuper($_GET);
+14 -8
View File
@@ -337,11 +337,16 @@ class router extends baseRouter
$this->loadModuleConfig('workflowaction');
$moduleName = 'flow';
$methodName = $this->methodName;
/*
* 工作流中除了browse、create、edit、view、delete、export外其他的方法都调用operate方法来执行。
* In addition to browse, create, edit, view, delete and export, all methods in the workflow call the operate method to execute.
* 工作流中除了内置方法外的方法,如果是批量操作调用batchOperate方法,其它操作调用operate方法来执行。
* In addition to the built-in methods in the workflow, if the batch operation calls the batchOperate method, other operations call the operate method to execute.
*/
$methodName = in_array($this->methodName, $this->config->workflowaction->default->actions) ? $this->methodName : 'operate';
if(!in_array($this->methodName, $this->config->workflowaction->default->actions))
{
if($action->type == 'single') $methodName = 'operate';
if($action->type == 'batch') $methodName = 'batchOperate';
}
$this->setFlowURI($moduleName, $methodName);
}
@@ -388,12 +393,13 @@ class router extends baseRouter
$params = array_slice($params, 2); // $params = array(1);
/* Prepend other params. */
if($methodName == 'operate') array_unshift($params, $this->rawMethod); // $params = array('close', 1);
array_unshift($params, $this->rawModule); // $params = array($module, 'close', 1);
array_unshift($params, $methodName); // $params = array('operate', $module, 'close', 1);
array_unshift($params, $moduleName); // $params = array('flow', 'operate', $module, 'close', 1);
if($methodName == 'operate') array_unshift($params, $this->rawMethod); // $params = array('close', 1);
if($methodName == 'batchOperate') array_unshift($params, $this->rawMethod); // $params = array('close', 1);
array_unshift($params, $this->rawModule); // $params = array($module, 'close', 1);
array_unshift($params, $methodName); // $params = array('operate', $module, 'close', 1);
array_unshift($params, $moduleName); // $params = array('flow', 'operate', $module, 'close', 1);
$this->URI = implode($this->config->requestFix, $params); // $this->URI = flow-operate-$module-close-1.html;
$this->URI = implode($this->config->requestFix, $params); // $this->URI = flow-operate-$module-close-1.html;
}
else
{
+27 -3
View File
@@ -643,7 +643,7 @@ class baseValidater
$var = (string) $var;
$evils = array('eval', 'exec', 'passthru', 'proc_open', 'shell_exec', 'system', '$$', 'include', 'require', 'assert');
$replaces = array('e v a l', 'e x e c', ' p a s s t h r u', ' p r o c _ o p e n', 's h e l l _ e x e c', 's y s t e m', '$ $', 'i n c l u d e', 'r e q u i r e', 'a s s e r t');
$replaces = array('e v a l', 'e x e c', 'p a s s t h r u', 'p r o c _ o p e n', 's h e l l _ e x e c', 's y s t e m', '$ $', 'i n c l u d e', 'r e q u i r e', 'a s s e r t');
$var = str_ireplace($evils, $replaces, $var);
return $var;
@@ -666,12 +666,12 @@ class baseValidater
{
$var = (string) $var;
$evils = array('appendchild(', 'createElement(', 'xss.re', 'onfocus', 'onclick', 'innerHTML', 'replaceChild(', 'html(', 'append(', 'appendTo(', 'prepend(', 'prependTo(', 'after(', 'insertBefore', 'before(', 'replaceWith(');
$replaces = array('a p p e n d c h i l d (', 'c r e a t e E l e m e n t (', 'x s s . r e', 'o n f o c u s', 'o n c l i c k', 'i n n e r H T M L', 'r e p l a c e C h i l d (', 'h t m l (', 'a p p e n d (', 'a p p e n d T o (', 'p r e p e n d (', 'p r e p e n d T o (', 'a f t e r (', 'i n s e r t B e f o r e(', 'b e f o r e (', 'r e p l a c e W i t h (');
$replaces = array('a p p e n d c h i l d (', 'c r e a t e E l e m e n t (', 'x s s . r e', 'o n f o c u s', 'o n c l i c k', 'i n n e r H T M L', 'r e p l a c e C h i l d (', 'h t m l (', 'a p p e n d (', 'a p p e n d T o (', 'p r e p e n d (', 'p r e p e n d T o (', 'a f t e r (', 'i n s e r t B e f o r e (', 'b e f o r e (', 'r e p l a c e W i t h (');
$var = str_ireplace($evils, $replaces, $var);
}
/* Process like 'javascript:' */
$var = preg_replace('/j\s*a\s*v\s*a\s*s\s*c\s*r\s*i\s*p\s*t\s*:/Ui', 'j a v a s c r i p t :', $var);
$var = preg_replace('/j\s*a\s*v\s*a\s*s\s*c\s*r\s*i\s*p\s*t\s*:/Ui', "j a v a s c r i p t :", $var);
return $var;
}
@@ -721,6 +721,27 @@ class baseValidater
return $var;
}
/**
* Replace space to i tag.
*
* @param string $var
* @static
* @access public
* @return string
*/
public static function replaceSpace2Tag($var)
{
$replacedTrojan = array('e v a l', 'e x e c', 'p a s s t h r u', 'p r o c _ o p e n', 's h e l l _ e x e c', 's y s t e m', '$ $', 'i n c l u d e', 'r e q u i r e', 'a s s e r t');
$replacedXSS = array('a p p e n d c h i l d (', 'c r e a t e E l e m e n t (', 'x s s . r e', 'o n f o c u s', 'o n c l i c k', 'i n n e r H T M L', 'r e p l a c e C h i l d (', 'h t m l (', 'a p p e n d (', 'a p p e n d T o (', 'p r e p e n d (', 'p r e p e n d T o (', 'a f t e r (', 'i n s e r t B e f o r e (', 'b e f o r e (', 'r e p l a c e W i t h (');
$replacsTrojan = array('e<i></i>v<i></i>a<i></i>l', 'e<i></i>x<i></i>e<i></i>c', 'p<i></i>a<i></i>s<i></i>s<i></i>t<i></i>h<i></i>r<i></i>u', 'p<i></i>r<i></i>o<i></i>c<i></i>_<i></i>o<i></i>p<i></i>e<i></i>n', 's<i></i>h<i></i>e<i></i>l<i></i>l<i></i>_<i></i>e<i></i>x<i></i>e<i></i>c', 's<i></i>y<i></i>s<i></i>t<i></i>e<i></i>m', '$<i></i>$', 'i<i></i>n<i></i>c<i></i>l<i></i>u<i></i>d<i></i>e', 'r<i></i>e<i></i>q<i></i>u<i></i>i<i></i>r<i></i>e', 'a<i></i>s<i></i>s<i></i>e<i></i>r<i></i>t');
$replacsXSS = array('a<i></i>p<i></i>p<i></i>e<i></i>n<i></i>d<i></i>c<i></i>h<i></i>i<i></i>l<i></i>d<i></i>(', 'c<i></i>r<i></i>e<i></i>a<i></i>t<i></i>e<i></i>E<i></i>l<i></i>e<i></i>m<i></i>e<i></i>n<i></i>t<i></i>(', 'x<i></i>s<i></i>s<i></i>.<i></i>r<i></i>e', 'o<i></i>n<i></i>f<i></i>o<i></i>c<i></i>u<i></i>s', 'o<i></i>n<i></i>c<i></i>l<i></i>i<i></i>c<i></i>k', 'i<i></i>n<i></i>n<i></i>e<i></i>r<i></i>H<i></i>T<i></i>M<i></i>L', 'r<i></i>e<i></i>p<i></i>l<i></i>a<i></i>c<i></i>e<i></i>C<i></i>h<i></i>i<i></i>l<i></i>d<i></i>(', 'h<i></i>t<i></i>m<i></i>l<i></i>(', 'a<i></i>p<i></i>p<i></i>e<i></i>n<i></i>d<i></i>(', 'a<i></i>p<i></i>p<i></i>e<i></i>n<i></i>d<i></i>T<i></i>o<i></i>(', 'p<i></i>r<i></i>e<i></i>p<i></i>e<i></i>n<i></i>d<i></i>(', 'p<i></i>r<i></i>e<i></i>p<i></i>e<i></i>n<i></i>d<i></i>T<i></i>o<i></i>(', 'a<i></i>f<i></i>t<i></i>e<i></i>r<i></i>(', 'i<i></i>n<i></i>s<i></i>e<i></i>r<i></i>t<i></i>B<i></i>e<i></i>f<i></i>o<i></i>r<i></i>e<i></i>(', 'b<i></i>e<i></i>f<i></i>o<i></i>r<i></i>e<i></i>(', 'r<i></i>e<i></i>p<i></i>l<i></i>a<i></i>c<i></i>e<i></i>W<i></i>i<i></i>t<i></i>h<i></i>(', 'j<i></i>a<i></i>v<i></i>a<i></i>s<i></i>c<i></i>r<i></i>i<i></i>p<i></i>t<i></i>:');
$var = str_ireplace($replacedTrojan, $replacsTrojan, $var);
$var = str_ireplace($replacedXSS, $replacsXSS, $var);
return $var;
}
/**
* Check by rule.
*
@@ -1008,6 +1029,9 @@ class baseFixer
if(!isset($this->stripedFields[$fieldName]) and (!defined('RUN_MODE') or RUN_MODE != 'admin'))
{
$this->data->$fieldName = self::dataStripTags($this->data->$fieldName);
/* Code for bug #2721. */
$this->data->$fieldName = baseValidater::replaceSpace2Tag($this->data->$fieldName);
}
$this->stripedFields[$fieldName] = $fieldName;
}
+3
View File
@@ -137,6 +137,7 @@ $lang->action->desc->linkchildtask = '$date, <strong>$actor</strong> linked
$lang->action->desc->unlinkchildrentask = '$date, <strong>$actor</strong> unlinked a child task <strong>$extra</strong>。' . "\n";
$lang->action->desc->linkparenttask = '$date, <strong>$actor</strong> linked to a parent task <strong>$extra</strong>。' . "\n";
$lang->action->desc->unlinkparenttask = '$date, <strong>$actor</strong> unlinked a parent task <strong>$extra</strong>。' . "\n";
$lang->action->desc->deletechildrentask = '$date, <strong>$actor</strong> deleted a child task <strong>$extra</strong>。' . "\n";
/* 关联用例和移除用例时的历史操作记录。*/
$lang->action->desc->linkrelatedcase = '$date, <strong>$actor</strong> hat einen Fall verknüpft <strong>$extra</strong>.' . "\n";
@@ -209,6 +210,7 @@ $lang->action->label->unlinkparenttask = "unlink from parent task";
$lang->action->label->batchcreate = "batch created tasks";
$lang->action->label->createchildren = "create child tasks";
$lang->action->label->managed = "managed";
$lang->action->label->deletechildrentask = "delete children task";
/* 动态信息按照对象分组 */
$lang->action->dynamicAction = new stdclass;
@@ -281,6 +283,7 @@ $lang->action->dynamicAction->task['canceled'] = 'Cancel Task';
$lang->action->dynamicAction->task['activated'] = 'Activate Task';
$lang->action->dynamicAction->task['createchildren'] = 'Create Child Task';
$lang->action->dynamicAction->task['unlinkparenttask'] = 'Unlink Parent Task';
$lang->action->dynamicAction->task['deletechildrentask'] = 'Delete children task';
$lang->action->dynamicAction->task['linkparenttask'] = 'Link Parent Task';
$lang->action->dynamicAction->task['linkchildtask'] = 'Link Child Task';
$lang->action->dynamicAction->task['undeleted'] = 'Restore Task';
+451
View File
@@ -0,0 +1,451 @@
<?php
/**
* The action module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package action
* @version $Id: en.php 4729 2013-05-03 07:53:55Z chencongzhi520@gmail.com $
* @link https://www.zentao.pm
*/
$lang->action->common = 'Log';
$lang->action->product = $lang->productCommon;
$lang->action->project = $lang->projectCommon;
$lang->action->objectType = "Type d'objet";
$lang->action->objectID = 'ID';
$lang->action->objectName = "Nom de l'object";
$lang->action->actor = 'User';
$lang->action->action = 'Action';
$lang->action->actionID = 'Action ID';
$lang->action->date = 'Date';
$lang->action->extra = 'Extra';
$lang->action->trash = 'Corbeille';
$lang->action->undelete = 'Restaurer';
$lang->action->hideOne = 'Masquer';
$lang->action->hideAll = 'Masquer Tout';
$lang->action->editComment = 'Editer commentaire';
$lang->action->create = 'Ajouter commentaire';
$lang->action->comment = 'Commentaire';
$lang->action->trashTips = 'Note: Les suppressions dans ZenTao sont purement logiques.';
$lang->action->textDiff = 'Text Format';
$lang->action->original = 'Original Format';
$lang->action->confirmHideAll = 'Voulez-vous masquer tous les enregistrements ?';
$lang->action->needEdit = '%s que vous voulez restaurer. SVP éditez la.';
$lang->action->historyEdit = "l'historique Edité Par ne peut pas être vide.";
$lang->action->noDynamic = "Pas d'historique.";
$lang->action->history = new stdclass();
$lang->action->history->action = 'Lien';
$lang->action->history->field = 'Champ';
$lang->action->history->old = 'Ancienne valeur';
$lang->action->history->new = 'Nouvelle valeur';
$lang->action->history->diff = 'Comparer';
$lang->action->dynamic = new stdclass();
$lang->action->dynamic->today = "Aujourd'hui";
$lang->action->dynamic->yesterday = 'Hier';
$lang->action->dynamic->twoDaysAgo = 'Il y a 2 jours';
$lang->action->dynamic->thisWeek = 'Cette semaine';
$lang->action->dynamic->lastWeek = 'La semaine dernière';
$lang->action->dynamic->thisMonth = 'Ce mois';
$lang->action->dynamic->lastMonth = 'Le mois dernier';
$lang->action->dynamic->all = 'Tout';
$lang->action->dynamic->hidden = 'Caché';
$lang->action->dynamic->search = 'Rechercher';
$lang->action->periods['all'] = $lang->action->dynamic->all;
$lang->action->periods['today'] = $lang->action->dynamic->today;
$lang->action->periods['yesterday'] = $lang->action->dynamic->yesterday;
$lang->action->periods['thisweek'] = $lang->action->dynamic->thisWeek;
$lang->action->periods['lastweek'] = $lang->action->dynamic->lastWeek;
$lang->action->periods['thismonth'] = $lang->action->dynamic->thisMonth;
$lang->action->periods['lastmonth'] = $lang->action->dynamic->lastMonth;
$lang->action->objectTypes['product'] = $lang->productCommon;
$lang->action->objectTypes['story'] = 'Story';
$lang->action->objectTypes['productplan'] = 'Plan';
$lang->action->objectTypes['release'] = 'Release';
$lang->action->objectTypes['project'] = 'Projet';
$lang->action->objectTypes['task'] = 'Tâche';
$lang->action->objectTypes['build'] = 'Build';
$lang->action->objectTypes['bug'] = 'Bug';
$lang->action->objectTypes['case'] = 'CasTest';
$lang->action->objectTypes['caseresult'] = 'CasTest Result';
$lang->action->objectTypes['stepresult'] = 'CasTest Steps';
$lang->action->objectTypes['testtask'] = 'Recette';
$lang->action->objectTypes['user'] = 'Utilisateur';
$lang->action->objectTypes['doc'] = 'Document';
$lang->action->objectTypes['doclib'] = 'Répertoire Documents';
$lang->action->objectTypes['todo'] = 'Todo';
$lang->action->objectTypes['branch'] = 'Branche';
$lang->action->objectTypes['module'] = 'Module';
$lang->action->objectTypes['testsuite'] = 'Cahier recette';
$lang->action->objectTypes['caselib'] = 'Library';
$lang->action->objectTypes['testreport'] = 'Edition';
$lang->action->objectTypes['entry'] = 'Entrée';
$lang->action->objectTypes['webhook'] = 'Webhook';
/* 用来描述操作历史记录。*/
$lang->action->desc = new stdclass();
$lang->action->desc->common = '$date, <strong>$action</strong> par <strong>$actor</strong>.' . "\n";
$lang->action->desc->extra = '$date, <strong>$action</strong> en tant que <strong>$extra</strong> par <strong>$actor</strong>.' . "\n";
$lang->action->desc->opened = '$date, initié par <strong>$actor</strong> .' . "\n";
$lang->action->desc->created = '$date, créé par <strong>$actor</strong> .' . "\n";
$lang->action->desc->changed = '$date, modifié par <strong>$actor</strong> .' . "\n";
$lang->action->desc->edited = '$date, édité par <strong>$actor</strong> .' . "\n";
$lang->action->desc->assigned = '$date, <strong>$actor</strong> affecté à <strong>$extra</strong>.' . "\n";
$lang->action->desc->closed = '$date, fermé par <strong>$actor</strong> .' . "\n";
$lang->action->desc->deleted = '$date, supprimé par <strong>$actor</strong> .' . "\n";
$lang->action->desc->deletedfile = '$date, <strong>$actor</strong> a supprimé <strong><i>$extra</i></strong>.' . "\n";
$lang->action->desc->editfile = '$date, <strong>$actor</strong> a édité <strong><i>$extra</i></strong>.' . "\n";
$lang->action->desc->erased = '$date, supprimé par <strong>$actor</strong> .' . "\n";
$lang->action->desc->undeleted = '$date, restauré par <strong>$actor</strong> .' . "\n";
$lang->action->desc->hidden = '$date, masqué par <strong>$actor</strong> .' . "\n";
$lang->action->desc->commented = '$date, ajouté par <strong>$actor</strong>.' . "\n";
$lang->action->desc->activated = '$date, activé par <strong>$actor</strong> .' . "\n";
$lang->action->desc->blocked = '$date, bloqué par <strong>$actor</strong> .' . "\n";
$lang->action->desc->moved = '$date, déplacé par <strong>$actor</strong> , qui était "$extra".' . "\n";
$lang->action->desc->confirmed = '$date, <strong>$actor</strong> a confirmé la modification de la story. Le dernier build est <strong>#$extra</strong>.' . "\n";
$lang->action->desc->caseconfirmed = '$date, <strong>$actor</strong> a confirmé la modification du CasTest. Le dernier build est <strong>#$extra</strong>' . "\n";
$lang->action->desc->bugconfirmed = '$date, <strong>$actor</strong> a confirmé le Bug.' . "\n";
$lang->action->desc->frombug = '$date, converti par <strong>$actor</strong>. Son ID était <strong>$extra</strong>.';
$lang->action->desc->started = '$date, commencé par <strong>$actor</strong>.' . "\n";
$lang->action->desc->restarted = '$date, reprise par <strong>$actor</strong>.' . "\n";
$lang->action->desc->delayed = '$date, ajourné par <strong>$actor</strong>.' . "\n";
$lang->action->desc->suspended = '$date, suspendu par <strong>$actor</strong>.' . "\n";
$lang->action->desc->recordestimate = '$date, enregistré par <strong>$actor</strong> et son coût est de <strong>$extra</strong> heures.';
$lang->action->desc->editestimate = '$date, <strong>$actor</strong> a édité son temps estimé.';
$lang->action->desc->deleteestimate = '$date, <strong>$actor</strong> a supprimé son estimation de temps.';
$lang->action->desc->canceled = '$date, annulé par <strong>$actor</strong>.' . "\n";
$lang->action->desc->svncommited = '$date, <strong>$actor</strong> a validé, le build est <strong>#$extra</strong>.' . "\n";
$lang->action->desc->gitcommited = '$date, <strong>$actor</strong> a validé, le build est <strong>#$extra</strong>.' . "\n";
$lang->action->desc->finished = '$date, terminé par <strong>$actor</strong>.' . "\n";
$lang->action->desc->paused = '$date, mis en pause par <strong>$actor</strong>.' . "\n";
$lang->action->desc->verified = '$date, verifié par <strong>$actor</strong>.' . "\n";
$lang->action->desc->diff1 = '<strong><i>%s</i></strong> a changé. Il est passé de "%s" à "%s".<br />' . "\n";
$lang->action->desc->diff2 = '<strong><i>%s</i></strong> a changé. La différence est ' . "\n" . "<blockquote class='textdiff'>%s</blockquote>" . "\n<blockquote class='original'>%s</blockquote>";
$lang->action->desc->diff3 = 'Le nom du fichier %s a changé pour %s .' . "\n";
$lang->action->desc->linked2bug = '$date, affecté à <strong>$extra</strong> par <strong>$actor</strong>';
/* 子任务修改父任务的历史操作记录 */
$lang->action->desc->createchildren = '$date, <strong>$actor</strong> a créé un sous-tâche <strong>$extra</strong>。' . "\n";
$lang->action->desc->linkchildtask = '$date, <strong>$actor</strong> a raccroché une sous-tâche <strong>$extra</strong>。' . "\n";
$lang->action->desc->linkchildtask = '$date, <strong>$actor</strong> a raccroché une sous-tâche <strong>$extra</strong>。' . "\n";
$lang->action->desc->unlinkchildrentask = '$date, <strong>$actor</strong> a décroché une sous-tâche <strong>$extra</strong>。' . "\n";
$lang->action->desc->linkparenttask = '$date, <strong>$actor</strong> a accroché une tâche parent <strong>$extra</strong>。' . "\n";
$lang->action->desc->unlinkparenttask = '$date, <strong>$actor</strong> a décroché une tâche parent <strong>$extra</strong>。' . "\n";
$lang->action->desc->deletechildrentask = '$date, <strong>$actor</strong> deleted a child task <strong>$extra</strong>。' . "\n";
/* 关联用例和移除用例时的历史操作记录。*/
$lang->action->desc->linkrelatedcase = '$date, <strong>$actor</strong> a fait le lien avec un CasTest <strong>$extra</strong>.' . "\n";
$lang->action->desc->unlinkrelatedcase = '$date, <strong>$actor</strong> a délié le CasTest <strong>$extra</strong>.' . "\n";
/* 用来显示动态信息。*/
$lang->action->label = new stdclass();
$lang->action->label->created = 'a créé ';
$lang->action->label->opened = 'a ouvert ';
$lang->action->label->changed = 'a changé ';
$lang->action->label->edited = 'a édité ';
$lang->action->label->assigned = 'a affecté ';
$lang->action->label->closed = 'a fermé ';
$lang->action->label->deleted = 'a supprimé ';
$lang->action->label->deletedfile = 'a supprimé ';
$lang->action->label->editfile = 'a édité ';
$lang->action->label->erased = 'a détruit ';
$lang->action->label->undeleted = 'a restauré ';
$lang->action->label->hidden = 'a masqué ';
$lang->action->label->commented = 'a commenté ';
$lang->action->label->activated = 'a activé ';
$lang->action->label->blocked = 'a bloqué ';
$lang->action->label->resolved = 'a résolu ';
$lang->action->label->reviewed = 'a revu ';
$lang->action->label->moved = 'a déplacé ';
$lang->action->label->confirmed = 'a confirmé Story ';
$lang->action->label->bugconfirmed = 'a confirmé le Bug ';
$lang->action->label->tostory = 'a converti en Story ';
$lang->action->label->frombug = 'a converti du Bug ';
$lang->action->label->fromlib = 'a importé de la Library ';
$lang->action->label->totask = 'a converti en Tâche ';
$lang->action->label->svncommited = 'a committé SVN ';
$lang->action->label->gitcommited = 'a committé Git ';
$lang->action->label->linked2plan = 'a racordé au Plan ';
$lang->action->label->unlinkedfromplan = 'a extrait du plan ';
$lang->action->label->changestatus = 'a changé le statut ';
$lang->action->label->marked = 'a marqué';
$lang->action->label->linked2project = "a ajouté à {$lang->projectCommon}";
$lang->action->label->unlinkedfromproject = "a enlevé de {$lang->projectCommon}";
$lang->action->label->unlinkedfrombuild = "a enlevé du Build ";
$lang->action->label->linked2release = "a ajouté à une Release ";
$lang->action->label->unlinkedfromrelease = "a enlevé de la Release ";
$lang->action->label->linkrelatedbug = "a lié à un Bug ";
$lang->action->label->unlinkrelatedbug = "a délié du Bug ";
$lang->action->label->linkrelatedcase = "a mis en relation avec un CasTest ";
$lang->action->label->unlinkrelatedcase = "a libéré du CasTest ";
$lang->action->label->linkrelatedstory = "a lié à une Story ";
$lang->action->label->unlinkrelatedstory = "a dégagé de la Story ";
$lang->action->label->subdividestory = "a décomposé la Story ";
$lang->action->label->unlinkchildstory = "a dissocié de la Story fille ";
$lang->action->label->started = 'a commencé ';
$lang->action->label->restarted = 'a continué ';
$lang->action->label->recordestimate = 'a estimé ';
$lang->action->label->editestimate = 'a réestimé ';
$lang->action->label->canceled = 'a annulé ';
$lang->action->label->finished = 'a fini ';
$lang->action->label->paused = 'a stoppé ';
$lang->action->label->verified = 'a vérifié ';
$lang->action->label->delayed = 'a ajourné ';
$lang->action->label->suspended = 'a suspendu ';
$lang->action->label->login = "s'est Connecté";
$lang->action->label->logout = "s'est Déconnecté";
$lang->action->label->deleteestimate = "a remis à zéro ";
$lang->action->label->linked2build = "a ajouté au Build ";
$lang->action->label->linked2bug = "a lié au Bug ";
$lang->action->label->linkchildtask = "a raccroché à une sous-tâche";
$lang->action->label->unlinkchildrentask = "a décroché la sous-tâche";
$lang->action->label->linkparenttask = "a raccroché à une tâche parent";
$lang->action->label->unlinkparenttask = "a décroché de la tâche parent";
$lang->action->label->batchcreate = "a créé tâches par lot";
$lang->action->label->createchildren = "a créé sous-tâches par lot";
$lang->action->label->managed = "a managé";
$lang->action->label->deletechildrentask = "delete children task";
/* 动态信息按照对象分组 */
$lang->action->dynamicAction = new stdclass;
$lang->action->dynamicAction->todo['opened'] = 'Créer Todo';
$lang->action->dynamicAction->todo['edited'] = 'Edit Todo';
$lang->action->dynamicAction->todo['erased'] = 'Détruire Todo';
$lang->action->dynamicAction->todo['finished'] = 'Finir Todo';
$lang->action->dynamicAction->todo['activated'] = 'Activer Todo';
$lang->action->dynamicAction->todo['closed'] = 'Fermer Todo';
$lang->action->dynamicAction->todo['deleted'] = 'Suppr Todo';
$lang->action->dynamicAction->todo['assigned'] = 'Assigner Todo';
$lang->action->dynamicAction->todo['undeleted'] = 'Restaurer Todo';
$lang->action->dynamicAction->todo['hidden'] = 'Masquer Todo';
$lang->action->dynamicAction->product['opened'] = 'Créer ' . $lang->productCommon;
$lang->action->dynamicAction->product['edited'] = 'Editer ' . $lang->productCommon;
$lang->action->dynamicAction->product['deleted'] = 'Supprimer ' . $lang->productCommon;
$lang->action->dynamicAction->product['closed'] = 'Fermer ' . $lang->productCommon;
$lang->action->dynamicAction->product['undeleted'] = 'Restaurer ' . $lang->productCommon;
$lang->action->dynamicAction->product['hidden'] = 'Masquer ' . $lang->productCommon;
$lang->action->dynamicAction->productplan['opened'] = 'Créer Plan';
$lang->action->dynamicAction->productplan['edited'] = 'Editer Plan';
$lang->action->dynamicAction->release['opened'] = 'Créer Release';
$lang->action->dynamicAction->release['edited'] = 'Editer Release';
$lang->action->dynamicAction->release['changestatus'] = 'Changer Statut Release';
$lang->action->dynamicAction->release['undeleted'] = 'Restaurer Release';
$lang->action->dynamicAction->release['hidden'] = 'Masquer Release';
$lang->action->dynamicAction->story['opened'] = 'Créer Story';
$lang->action->dynamicAction->story['edited'] = 'Editer Story';
$lang->action->dynamicAction->story['activated'] = 'Activer Story';
$lang->action->dynamicAction->story['reviewed'] = 'Consulter Story';
$lang->action->dynamicAction->story['closed'] = 'Fermer Story';
$lang->action->dynamicAction->story['assigned'] = 'Assigner Story';
$lang->action->dynamicAction->story['changed'] = 'Changer Story';
$lang->action->dynamicAction->story['linked2plan'] = 'Inclure Story au Plan';
$lang->action->dynamicAction->story['unlinkedfromplan'] = 'Enlever Story du Plan';
$lang->action->dynamicAction->story['linked2release'] = 'Inclure Story à la Release';
$lang->action->dynamicAction->story['unlinkedfromrelease'] = 'Enlever Story de la Release';
$lang->action->dynamicAction->story['linked2build'] = 'Ajouter Story au Build';
$lang->action->dynamicAction->story['unlinkedfrombuild'] = 'Détacher Story du Build';
$lang->action->dynamicAction->story['unlinkedfromproject'] = 'Détacher du Project';
$lang->action->dynamicAction->story['undeleted'] = 'Restaurer Story';
$lang->action->dynamicAction->story['hidden'] = 'Masquer Story';
$lang->action->dynamicAction->project['opened'] = 'Créer ' . $lang->projectCommon;
$lang->action->dynamicAction->project['edited'] = 'Editer ' . $lang->projectCommon;
$lang->action->dynamicAction->project['deleted'] = 'Supprimer ' . $lang->projectCommon;
$lang->action->dynamicAction->project['started'] = 'Commencer ' . $lang->projectCommon;
$lang->action->dynamicAction->project['delayed'] = 'Ajouter ' . $lang->projectCommon;
$lang->action->dynamicAction->project['suspended'] = 'Suspendre ' . $lang->projectCommon;
$lang->action->dynamicAction->project['activated'] = 'Activer ' . $lang->projectCommon;
$lang->action->dynamicAction->project['closed'] = 'Fermer ' . $lang->projectCommon;
$lang->action->dynamicAction->project['managed'] = 'Manager ' . $lang->projectCommon;
$lang->action->dynamicAction->project['undeleted'] = 'Restaurer ' . $lang->projectCommon;
$lang->action->dynamicAction->project['hidden'] = 'Masquer ' . $lang->projectCommon;
$lang->action->dynamicAction->project['moved'] = 'Déplacer Tâche';
$lang->action->dynamicAction->task['opened'] = 'Créer Tâche';
$lang->action->dynamicAction->task['edited'] = 'Editer Tâche';
$lang->action->dynamicAction->task['commented'] = 'Commenter Tâche';
$lang->action->dynamicAction->task['assigned'] = 'Assigner Tâche';
$lang->action->dynamicAction->task['confirmed'] = 'Confirmer Tâche';
$lang->action->dynamicAction->task['started'] = 'Commencer Tâche';
$lang->action->dynamicAction->task['finished'] = 'Terminer Tâche';
$lang->action->dynamicAction->task['recordestimate'] = 'Ajouter Estimation';
$lang->action->dynamicAction->task['editestimate'] = 'Editer Estimation';
$lang->action->dynamicAction->task['deleteestimate'] = 'RAZ Estimation';
$lang->action->dynamicAction->task['paused'] = 'Stopper Tâche';
$lang->action->dynamicAction->task['closed'] = 'Fermer Tâche';
$lang->action->dynamicAction->task['canceled'] = 'Supprimer Tâche';
$lang->action->dynamicAction->task['activated'] = 'Activer Tâche';
$lang->action->dynamicAction->task['createchildren'] = 'Créer Sous-Tâche';
$lang->action->dynamicAction->task['unlinkparenttask'] = 'Délier Tâche Parent';
$lang->action->dynamicAction->task['deletechildrentask'] = 'Delete children task';
$lang->action->dynamicAction->task['linkparenttask'] = 'Lier Tâche Parent';
$lang->action->dynamicAction->task['linkchildtask'] = 'Lier sous-tâche';
$lang->action->dynamicAction->task['undeleted'] = 'Restaurer Tâche';
$lang->action->dynamicAction->task['hidden'] = 'Masquer Tâche';
$lang->action->dynamicAction->task['svncommited'] = 'SVN Commit';
$lang->action->dynamicAction->task['gitcommited'] = 'GIT Commit';
$lang->action->dynamicAction->build['opened'] = 'Créer Build';
$lang->action->dynamicAction->build['edited'] = 'Editer Build';
$lang->action->dynamicAction->bug['opened'] = 'Remonter Bug';
$lang->action->dynamicAction->bug['edited'] = 'Editer Bug';
$lang->action->dynamicAction->bug['activated'] = 'Activer Bug';
$lang->action->dynamicAction->bug['assigned'] = 'Assigner Bug';
$lang->action->dynamicAction->bug['closed'] = 'Fermer Bug';
$lang->action->dynamicAction->bug['bugconfirmed'] = 'Confirmer Bug';
$lang->action->dynamicAction->bug['resolved'] = 'Resolu Bug';
$lang->action->dynamicAction->bug['undeleted'] = 'Restaurer Bug';
$lang->action->dynamicAction->bug['hidden'] = 'Masquer Bug';
$lang->action->dynamicAction->bug['confirmed'] = 'Confirme Chang Story';
$lang->action->dynamicAction->bug['tostory'] = 'Converti en Story';
$lang->action->dynamicAction->bug['totask'] = 'Converti en Tâche';
$lang->action->dynamicAction->bug['linked2plan'] = 'Lié au Plan';
$lang->action->dynamicAction->bug['unlinkedfromplan'] = 'Enlevé du Plan';
$lang->action->dynamicAction->bug['linked2release'] = 'Ajouté à la Release';
$lang->action->dynamicAction->bug['unlinkedfromrelease'] = 'Enlevé de la Release';
$lang->action->dynamicAction->bug['linked2bug'] = 'Lié au Build';
$lang->action->dynamicAction->bug['unlinkedfrombuild'] = 'Retiré du Build';
$lang->action->dynamicAction->testtask['opened'] = 'Créé Recette';
$lang->action->dynamicAction->testtask['edited'] = 'Edité Recette';
$lang->action->dynamicAction->testtask['started'] = 'Commencé Recette';
$lang->action->dynamicAction->testtask['activated'] = 'Activé Recette';
$lang->action->dynamicAction->testtask['closed'] = 'Fermé Recette';
$lang->action->dynamicAction->testtask['blocked'] = 'Bloqué Recette';
$lang->action->dynamicAction->case['opened'] = 'Créé CasTest';
$lang->action->dynamicAction->case['edited'] = 'Edité CasTest';
$lang->action->dynamicAction->case['deleted'] = 'Supprimé CasTest';
$lang->action->dynamicAction->case['undeleted'] = 'Restauré CasTest';
$lang->action->dynamicAction->case['hidden'] = 'Masqué CasTest';
$lang->action->dynamicAction->case['reviewed'] = 'Ajouté Revue Résultats';
$lang->action->dynamicAction->case['confirmed'] = 'Confirmé CasTest';
$lang->action->dynamicAction->case['fromlib'] = 'Importé de CasTest Lib';
$lang->action->dynamicAction->testreport['opened'] = 'Créé Test Report';
$lang->action->dynamicAction->testreport['edited'] = 'Edité Test Report';
$lang->action->dynamicAction->testreport['deleted'] = 'Supprimé Test Report';
$lang->action->dynamicAction->testreport['undeleted'] = 'Restauré Test Report';
$lang->action->dynamicAction->testreport['hidden'] = 'Masqué Test Report';
$lang->action->dynamicAction->testsuite['opened'] = 'Créé Test Suite';
$lang->action->dynamicAction->testsuite['edited'] = 'Edité Test Suite';
$lang->action->dynamicAction->testsuite['deleted'] = 'Supprimé Test Suite';
$lang->action->dynamicAction->testsuite['undeleted'] = 'Restauré Test Suite';
$lang->action->dynamicAction->testsuite['hidden'] = 'Masqué Test Suite';
$lang->action->dynamicAction->caselib['opened'] = 'Créé CasTest Lib';
$lang->action->dynamicAction->caselib['edited'] = 'Edité CasTest Lib';
$lang->action->dynamicAction->caselib['deleted'] = 'Supprimé CasTest Lib';
$lang->action->dynamicAction->caselib['undeleted'] = 'Restauré CasTest Lib';
$lang->action->dynamicAction->caselib['hidden'] = 'Masqué CasTest Lib';
$lang->action->dynamicAction->doclib['created'] = 'Créer Doc Library';
$lang->action->dynamicAction->doclib['edited'] = 'Editer Doc Library';
$lang->action->dynamicAction->doc['created'] = 'Créer Document';
$lang->action->dynamicAction->doc['edited'] = 'Editer Document';
$lang->action->dynamicAction->doc['commented'] = 'Commenter Document';
$lang->action->dynamicAction->doc['deleted'] = 'Supprimer Document';
$lang->action->dynamicAction->doc['undeleted'] = 'Restaurer Document';
$lang->action->dynamicAction->doc['hidden'] = 'Masquer Document';
$lang->action->dynamicAction->user['created'] = 'Créer User';
$lang->action->dynamicAction->user['edited'] = 'Editer User';
$lang->action->dynamicAction->user['login'] = 'Connexion';
$lang->action->dynamicAction->user['logout'] = 'Déconnexion';
$lang->action->dynamicAction->user['undeleted'] = 'Restaure User';
$lang->action->dynamicAction->user['hidden'] = 'Masquer User';
$lang->action->dynamicAction->user['loginxuanxuan'] = 'Login Desktop';
$lang->action->dynamicAction->entry['created'] = 'Ajouter Application';
$lang->action->dynamicAction->entry['edited'] = 'Editer Application';
/* 用来生成相应对象的链接。*/
$lang->action->label->product = $lang->productCommon . '|product|view|productID=%s';
$lang->action->label->productplan = 'Plan|productplan|view|productID=%s';
$lang->action->label->release = 'Release|release|view|productID=%s';
$lang->action->label->story = 'Story|story|view|storyID=%s';
$lang->action->label->project = "{$lang->projectCommon}|project|view|projectID=%s";
$lang->action->label->task = 'Tâche|task|view|taskID=%s';
$lang->action->label->build = 'Build|build|view|buildID=%s';
$lang->action->label->bug = 'Bug|bug|view|bugID=%s';
$lang->action->label->case = 'CasTest|testcase|view|caseID=%s';
$lang->action->label->testtask = 'Recette|testtask|view|caseID=%s';
$lang->action->label->testsuite = 'Cahier Recette|testsuite|view|suiteID=%s';
$lang->action->label->caselib = 'Library Recette|testsuite|libview|libID=%s';
$lang->action->label->todo = 'Agenda|todo|view|todoID=%s';
$lang->action->label->doclib = 'Bibliothèque|doc|browse|libID=%s';
$lang->action->label->doc = 'Document|doc|view|docID=%s';
$lang->action->label->user = 'Utilisateur|user|view|account=%s';
$lang->action->label->testreport = 'Rapport|testreport|view|report=%s';
$lang->action->label->entry = 'Application|entry|browse|';
$lang->action->label->webhook = 'Webhook|webhook|browse|';
$lang->action->label->space = ' ';
/* Object type. */
$lang->action->search->objectTypeList[''] = '';
$lang->action->search->objectTypeList['product'] = $lang->productCommon;
$lang->action->search->objectTypeList['project'] = $lang->projectCommon;
$lang->action->search->objectTypeList['bug'] = 'Bug';
$lang->action->search->objectTypeList['case'] = 'CasTest';
$lang->action->search->objectTypeList['caseresult'] = 'CasTest Result';
$lang->action->search->objectTypeList['stepresult'] = 'CasTest Steps';
$lang->action->search->objectTypeList['story'] = 'Story';
$lang->action->search->objectTypeList['task'] = 'Tâche';
$lang->action->search->objectTypeList['testtask'] = 'Recette';
$lang->action->search->objectTypeList['user'] = 'Utilisateur';
$lang->action->search->objectTypeList['doc'] = 'Doc';
$lang->action->search->objectTypeList['doclib'] = 'Doc Lib';
$lang->action->search->objectTypeList['todo'] = 'Todo';
$lang->action->search->objectTypeList['build'] = 'Build';
$lang->action->search->objectTypeList['release'] = 'Release';
$lang->action->search->objectTypeList['productplan'] = 'Plan';
$lang->action->search->objectTypeList['branch'] = 'Branche';
$lang->action->search->objectTypeList['testsuite'] = 'Cahier Recette';
$lang->action->search->objectTypeList['caselib'] = 'Library';
$lang->action->search->objectTypeList['testreport'] = 'Etat';
/* 用来在动态显示中显示动作 */
$lang->action->search->label[''] = '';
$lang->action->search->label['created'] = $lang->action->label->created;
$lang->action->search->label['opened'] = $lang->action->label->opened;
$lang->action->search->label['changed'] = $lang->action->label->changed;
$lang->action->search->label['edited'] = $lang->action->label->edited;
$lang->action->search->label['assigned'] = $lang->action->label->assigned;
$lang->action->search->label['closed'] = $lang->action->label->closed;
$lang->action->search->label['deleted'] = $lang->action->label->deleted;
$lang->action->search->label['deletedfile'] = $lang->action->label->deletedfile;
$lang->action->search->label['editfile'] = $lang->action->label->editfile;
$lang->action->search->label['erased'] = $lang->action->label->erased;
$lang->action->search->label['undeleted'] = $lang->action->label->undeleted;
$lang->action->search->label['hidden'] = $lang->action->label->hidden;
$lang->action->search->label['commented'] = $lang->action->label->commented;
$lang->action->search->label['activated'] = $lang->action->label->activated;
$lang->action->search->label['blocked'] = $lang->action->label->blocked;
$lang->action->search->label['resolved'] = $lang->action->label->resolved;
$lang->action->search->label['reviewed'] = $lang->action->label->reviewed;
$lang->action->search->label['moved'] = $lang->action->label->moved;
$lang->action->search->label['confirmed'] = $lang->action->label->confirmed;
$lang->action->search->label['bugconfirmed'] = $lang->action->label->bugconfirmed;
$lang->action->search->label['tostory'] = $lang->action->label->tostory;
$lang->action->search->label['frombug'] = $lang->action->label->frombug;
$lang->action->search->label['totask'] = $lang->action->label->totask;
$lang->action->search->label['svncommited'] = $lang->action->label->svncommited;
$lang->action->search->label['gitcommited'] = $lang->action->label->gitcommited;
$lang->action->search->label['linked2plan'] = $lang->action->label->linked2plan;
$lang->action->search->label['unlinkedfromplan'] = $lang->action->label->unlinkedfromplan;
$lang->action->search->label['changestatus'] = $lang->action->label->changestatus;
$lang->action->search->label['marked'] = $lang->action->label->marked;
$lang->action->search->label['linked2project'] = $lang->action->label->linked2project;
$lang->action->search->label['unlinkedfromproject'] = $lang->action->label->unlinkedfromproject;
$lang->action->search->label['started'] = $lang->action->label->started;
$lang->action->search->label['restarted'] = $lang->action->label->restarted;
$lang->action->search->label['recordestimate'] = $lang->action->label->recordestimate;
$lang->action->search->label['editestimate'] = $lang->action->label->editestimate;
$lang->action->search->label['canceled'] = $lang->action->label->canceled;
$lang->action->search->label['finished'] = $lang->action->label->finished;
$lang->action->search->label['paused'] = $lang->action->label->paused;
$lang->action->search->label['verified'] = $lang->action->label->verified;
$lang->action->search->label['login'] = $lang->action->label->login;
$lang->action->search->label['logout'] = $lang->action->label->logout;
+3
View File
@@ -137,6 +137,7 @@ $lang->action->desc->linkchildtask = '$date, 由 <strong>$actor</strong>
$lang->action->desc->unlinkchildrentask = '$date, 由 <strong>$actor</strong> 移除子任務 <strong>$extra</strong>。' . "\n";
$lang->action->desc->linkparenttask = '$date, 由 <strong>$actor</strong> 關聯到父任務 <strong>$extra</strong>。' . "\n";
$lang->action->desc->unlinkparenttask = '$date, 由 <strong>$actor</strong> 從父任務<strong>$extra</strong>取消關聯。' . "\n";
$lang->action->desc->deletechildrentask = '$date, 由 <strong>$actor</strong> 刪除子任務<strong>$extra</strong>。' . "\n";
/* 關聯用例和移除用例時的歷史操作記錄。*/
$lang->action->desc->linkrelatedcase = '$date, 由 <strong>$actor</strong> 關聯相關用例 <strong>$extra</strong>。' . "\n";
@@ -209,6 +210,7 @@ $lang->action->label->unlinkparenttask = "從父任務取消關聯";
$lang->action->label->batchcreate = "批量創建任務";
$lang->action->label->createchildren = "創建子任務";
$lang->action->label->managed = "維護";
$lang->action->label->deletechildrentask = "刪除子任務";
/* 動態信息按照對象分組 */
$lang->action->dynamicAction = new stdclass();
@@ -281,6 +283,7 @@ $lang->action->dynamicAction->task['canceled'] = '取消任務';
$lang->action->dynamicAction->task['activated'] = '激活任務';
$lang->action->dynamicAction->task['createchildren'] = '創建子任務';
$lang->action->dynamicAction->task['unlinkparenttask'] = '從父任務取消關聯';
$lang->action->dynamicAction->task['deletechildrentask'] = '刪除子任務';
$lang->action->dynamicAction->task['linkparenttask'] = '關聯到父任務';
$lang->action->dynamicAction->task['linkchildtask'] = '關聯子任務';
$lang->action->dynamicAction->task['undeleted'] = '還原任務';
+82
View File
@@ -0,0 +1,82 @@
<?php
/**
* The admin module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package admin
* @version $Id: en.php 4460 2013-02-26 02:28:02Z chencongzhi520@gmail.com $
* @link https://www.zentao.pm
*/
$lang->admin->common = 'Admin';
$lang->admin->index = 'Admin Home';
$lang->admin->checkDB = 'Check Database';
$lang->admin->sso = 'Zdoo';
$lang->admin->ssoAction = 'Link Zdoo';
$lang->admin->safeIndex = 'Sécurité';
$lang->admin->checkWeak = 'Contrôle niveau de sécurité des mots de passe';
$lang->admin->certifyMobile = 'Vérifier votre smartphone';
$lang->admin->certifyEmail = 'Vérifier votre Email';
$lang->admin->ztCompany = 'Vérifier votre entreprise';
$lang->admin->captcha = 'Code de vérification';
$lang->admin->getCaptcha = 'Obtenir le Code de vérification';
$lang->admin->api = 'API';
$lang->admin->log = 'Log';
$lang->admin->setting = 'Paramétrage';
$lang->admin->days = 'Durée de conservation';
$lang->admin->info = new stdclass();
$lang->admin->info->version = 'La version actuelle est %s customisée. ';
$lang->admin->info->links = 'Vous pouvez visiter les liens ci-dessous';
$lang->admin->info->account = 'Votre identifiant client ZenTao est %s.';
$lang->admin->info->log = 'Les logs qui dépassent la durée de conservation seront supprimés et vous devrez exécuter un cron.';
$lang->admin->notice = new stdclass();
$lang->admin->notice->register = "Note: Vous n'êtes pas enregistré sur le site officiel de ZenTao (www.zentao.pm). %s vous pourrez ensuite obtenir les dernières Mises à Jour de ZenTao et des informations.";
$lang->admin->notice->ignore = "Ignorer";
$lang->admin->notice->int = "『 %s 』 devrait être un entier positif.";
$lang->admin->register = new stdclass();
$lang->admin->register->common = 'Connectez-vous avec votre nouveau compte';
$lang->admin->register->caption = "S'enregistrer sur la communauté Zentao";
$lang->admin->register->click = "S'enregistrer ici";
$lang->admin->register->lblAccount = '>= 3 lettres et chiffres';
$lang->admin->register->lblPasswd = '>= 6 lettres et chiffres';
$lang->admin->register->submit = "S'enregistrer";
$lang->admin->register->bind = "S'associer à un compte existant";
$lang->admin->register->success = "Vous êtes enregistré !";
$lang->admin->bind = new stdclass();
$lang->admin->bind->caption = 'Lier au compte';
$lang->admin->bind->success = "Le compte est associé !";
$lang->admin->safe = new stdclass();
$lang->admin->safe->common = 'Politique de sécurité';
$lang->admin->safe->set = 'Paramétrages du Mot de passe';
$lang->admin->safe->password = 'Force du Mot de passe';
$lang->admin->safe->weak = 'Mots de passes non sécurisés courrants';
$lang->admin->safe->reason = 'Type';
$lang->admin->safe->checkWeak = 'Balayage des mots de passe faibles';
$lang->admin->safe->changeWeak = 'Forcer le changement des mots de passe faibles';
$lang->admin->safe->modifyPasswordFirstLogin = 'Forcer le changement du mot de passe après la première connexion';
$lang->admin->safe->modeList[0] = "Contrôle Modéré";
$lang->admin->safe->modeList[1] = 'Contrôle Moyen';
$lang->admin->safe->modeList[2] = 'Contrôle Fort';
$lang->admin->safe->modeRuleList[1] = ' >= 6 Majuscules, minuscules et chiffres';
$lang->admin->safe->modeRuleList[2] = ' >= 10 Majuscules, minuscules, chiffres et caractères spéciaux';
$lang->admin->safe->reasonList['weak'] = 'Mots de passe faibles courants';
$lang->admin->safe->reasonList['account'] = 'Identique au compte';
$lang->admin->safe->reasonList['mobile'] = 'Identique au numéro de mobile';
$lang->admin->safe->reasonList['phone'] = 'Identique au téléphone fixe';
$lang->admin->safe->reasonList['birthday'] = 'Identique à la date de naissance';
$lang->admin->safe->modifyPasswordList[1] = 'Oui';
$lang->admin->safe->modifyPasswordList[0] = 'Non';
$lang->admin->safe->noticeMode = "Le mot de passe sera vérifié quand un utilisateur se connectera ou qu'un utilisateur sera créé ou modifier.";
$lang->admin->safe->noticeStrong = '';
+30
View File
@@ -0,0 +1,30 @@
<?php
/**
* The api module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package api
* @version $Id: English.php 824 2010-05-02 15:32:06Z wwccss $
* @link https://www.zentao.pm
*/
$lang->api = new stdclass();
$lang->api->common = 'API';
$lang->api->getModel = 'Super Model API';
$lang->api->sql = 'SQL Query API';
$lang->api->position = 'Position';
$lang->api->startLine = "%s,%s";
$lang->api->desc = 'Description';
$lang->api->debug = 'Debug';
$lang->api->submit = 'Soumission';
$lang->api->url = 'Request URL';
$lang->api->result = 'Résultats';
$lang->api->status = 'Statut';
$lang->api->data = 'Données';
$lang->api->noParam = "Aucun paramètre n'est requis si GET Debug";
$lang->api->post = 'Se référer à la liste si POST Debug';
$lang->api->error = new stdclass();
$lang->api->error->onlySelect = 'Cette interface SQL ne supporte que les requêtes SELECT.';
+42
View File
@@ -0,0 +1,42 @@
<?php
$lang->backup->common = 'Backup';
$lang->backup->index = 'Accueil Backup';
$lang->backup->history = 'Historique';
$lang->backup->delete = 'Suppression Backup';
$lang->backup->backup = 'Backup';
$lang->backup->restore = 'Restaurer';
$lang->backup->change = 'Editer Expiration';
$lang->backup->changeAB = 'Editer';
$lang->backup->rmPHPHeader = 'Enlever PHP header';
$lang->backup->time = 'Date';
$lang->backup->files = 'Fichiers';
$lang->backup->size = 'Taille';
$lang->backup->setting = 'Paramétrage';
$lang->backup->settingDir = 'Répertoire Backup';
$lang->backup->settingList['nofile'] = 'Ne pas archiver fichiers et codes.';
$lang->backup->settingList['nozip'] = 'Copier seulement les fichiers sans les compresser.';
$lang->backup->settingList['nosafe'] = 'Ne pas prévenir du téléchargement par PHP file header.';
$lang->backup->waitting = '<span id="backupType"></span> est en cours. Patientez s´il vous plait...';
$lang->backup->progressSQL = '<p>SQL backup: %s est sauvegardé.</p>';
$lang->backup->progressAttach = '<p>SQL backup est terminé.</p><p>Attachment backup: %s est sauvegardé avec succès.</p>';
$lang->backup->progressCode = '<p>SQL backup est terminé.</p><p>Attachment backup est terminé.</p><p>Code backup: %s est sauvegardé avec succès.</p>';
$lang->backup->confirmDelete = 'Voulez-vous supprimer la sauvegarde ?';
$lang->backup->confirmRestore = 'Voulez-vous restaurer la sauvegarde ?';
$lang->backup->holdDays = 'conserver les derniers %s jours de backup';
$lang->backup->restoreTip = 'Seulement les fichiers et les bases peuvent être restaurées en cliquant sur Restaurer. Le code doit être restauré manuellement.';
$lang->backup->success = new stdclass();
$lang->backup->success->backup = 'Terminé avec succès !';
$lang->backup->success->restore = 'Restauré avec succès !';
$lang->backup->error = new stdclass();
$lang->backup->error->noCreateDir = "Le répertoire n'existe pas et ne peut pas être créer. C'est problématique.";
$lang->backup->error->noWritable = "<code>%s</code> n'est pas autorisé à l'écriture ! Vérifier les privilèges sinon le backup ne pourra pas se faire.";
$lang->backup->error->noDelete = "%s ne peut pas être supprimé. Modifiez les privilèges ou supprimez-le avec vos petites mains.";
$lang->backup->error->restoreSQL = "Echec pour restaurer la database library. Error %s.";
$lang->backup->error->restoreFile = "Echec pour restaurer le fichier. Erreur %s.";
$lang->backup->error->backupFile = "Echec pour sauvegarder le fichier. Erreur %s.";
$lang->backup->error->backupCode = "Echec pour sauvegarder le code. Erreur %s.";
+1 -13
View File
@@ -713,20 +713,8 @@ class block extends control
$pager = pager::init(0, $num , 1);
$productStats = $this->loadModel('product')->getStats('order_desc', $this->viewType != 'json' ? $pager : '', $type);
$projects = $this->loadModel('project')->getPairs();
$productIdList = array();
$this->loadModel('action');
foreach($productStats as $product)
{
$currentProjectID = $this->dao->select('objectID')->from(TABLE_ACTION)
->where('objectType')->eq('project')
->andWhere('action')->eq('managed')
->andWhere("CONCAT(extra, ',,')")->like("%$product->id,,")
->orderBy('id_desc')
->fetch('objectID');
$product->currentProject = zget($projects, $currentProjectID, '');
$productIdList[] = $product->id;
}
foreach($productStats as $product) $productIdList[] = $product->id;
$this->view->projects = $this->dao->select('t1.product,t2.name')->from(TABLE_PROJECTPRODUCT)->alias('t1')
->leftJoin(TABLE_PROJECT)->alias('t2')->on('t1.project=t2.id')
+404
View File
@@ -0,0 +1,404 @@
<?php
/**
* The en file of crm block module of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Yidong Wang <yidong@cnezsoft.com>
* @package block
* @version $Id$
* @link https://www.zentao.pm
*/
$lang->block = new stdclass();
$lang->block->common = 'Bloc';
$lang->block->name = 'Nom';
$lang->block->style = 'Style';
$lang->block->grid = 'Position';
$lang->block->color = 'Couleur';
$lang->block->reset = 'Réinit';
$lang->block->account = 'Compte';
$lang->block->module = 'Module';
$lang->block->title = 'Titre';
$lang->block->source = 'Source Module';
$lang->block->block = 'Source Bloc';
$lang->block->order = 'Ordre';
$lang->block->height = 'Hauteur';
$lang->block->role = 'Rôle';
$lang->block->lblModule = 'Module';
$lang->block->lblBlock = 'Bloc';
$lang->block->lblNum = 'Numéro';
$lang->block->lblHtml = 'HTML';
$lang->block->dynamic = 'Historique';
$lang->block->assignToMe = 'Assigné à moi';
$lang->block->lblFlowchart = 'Organigramme';
$lang->block->welcome = 'Bienvenue';
$lang->block->lblTesttask = 'Détail Recette';
$lang->block->leftToday = 'Reste à faire';
$lang->block->myTask = 'Mes Tâches';
$lang->block->myStory = 'Stories';
$lang->block->myBug = 'Bugs';
$lang->block->myProject = $lang->projectCommon . 's';
$lang->block->myProduct = '' . $lang->productCommon . 's';
$lang->block->delayed = 'Ajourné';
$lang->block->noData = 'Pas de données pour ce type de rapport.';
$lang->block->emptyTip = 'No data.';
$lang->block->params = new stdclass();
$lang->block->params->name = 'Nom';
$lang->block->params->value = 'Valeur';
$lang->block->createBlock = 'Ajouter Bloc';
$lang->block->editBlock = 'Editer Bloc';
$lang->block->ordersSaved = 'L´ordre a été sauvegardé.';
$lang->block->confirmRemoveBlock = 'Voulez-vous vraiment supprimer ce bloc ?';
$lang->block->noticeNewBlock = 'Une nouvelle disposition est disponible. Voulez-vous la consulter ?';
$lang->block->confirmReset = 'Voulez-vous vraiment réinitialiser la disposition ?';
$lang->block->closeForever = 'Fermeture Permanente';
$lang->block->confirmClose = 'Voulez-vous vraiment fermer de façon permanente ce bloc ? Ensuite, plus personne ne pourra l´utiliser. Il pourra être réactivé par l´admin.';
$lang->block->remove = 'Supprimer';
$lang->block->refresh = 'Rafraichir';
$lang->block->nbsp = ' ';
$lang->block->hidden = 'Masquer';
$lang->block->dynamicInfo = "<span class='timeline-tag'>%s</span> <span class='timeline-text'>%s <em>%s</em> %s <a href='%s' title='%s'>%s</a></span>";
$lang->block->default['product']['1']['title'] = ' Rapport de ' . $lang->productCommon;
$lang->block->default['product']['1']['block'] = 'statistic';
$lang->block->default['product']['1']['grid'] = 8;
$lang->block->default['product']['1']['params']['type'] = 'all';
$lang->block->default['product']['1']['params']['num'] = '20';
$lang->block->default['product']['2']['title'] = "Vue d'ensemble du " . $lang->productCommon;
$lang->block->default['product']['2']['block'] = 'overview';
$lang->block->default['product']['2']['grid'] = 4;
$lang->block->default['product']['3']['title'] = $lang->productCommon . 's Actifs';
$lang->block->default['product']['3']['block'] = 'list';
$lang->block->default['product']['3']['grid'] = 8;
$lang->block->default['product']['3']['params']['num'] = 15;
$lang->block->default['product']['3']['params']['type'] = 'noclosed';
$lang->block->default['product']['4']['title'] = 'Mes Stories';
$lang->block->default['product']['4']['block'] = 'story';
$lang->block->default['product']['4']['grid'] = 4;
$lang->block->default['product']['4']['params']['num'] = 15;
$lang->block->default['product']['4']['params']['orderBy'] = 'id_desc';
$lang->block->default['product']['4']['params']['type'] = 'assignedTo';
$lang->block->default['project']['1']['title'] = 'Rapport de ' . $lang->projectCommon;
$lang->block->default['project']['1']['block'] = 'statistic';
$lang->block->default['project']['1']['grid'] = 8;
$lang->block->default['project']['1']['params']['type'] = 'all';
$lang->block->default['project']['1']['params']['num'] = '20';
$lang->block->default['project']['2']['title'] = "Vue d'ensemble du " . $lang->projectCommon;
$lang->block->default['project']['2']['block'] = 'overview';
$lang->block->default['project']['2']['grid'] = 4;
$lang->block->default['project']['3']['title'] = $lang->projectCommon . 's Actifs';
$lang->block->default['project']['3']['block'] = 'list';
$lang->block->default['project']['3']['grid'] = 8;
$lang->block->default['project']['3']['params']['num'] = 15;
$lang->block->default['project']['3']['params']['orderBy'] = 'id_desc';
$lang->block->default['project']['3']['params']['type'] = 'undone';
$lang->block->default['project']['4']['title'] = 'Mes Tâches';
$lang->block->default['project']['4']['block'] = 'task';
$lang->block->default['project']['4']['grid'] = 4;
$lang->block->default['project']['4']['params']['num'] = 15;
$lang->block->default['project']['4']['params']['orderBy'] = 'id_desc';
$lang->block->default['project']['4']['params']['type'] = 'assignedTo';
$lang->block->default['qa']['1']['title'] = 'Rapport de Tests';
$lang->block->default['qa']['1']['block'] = 'statistic';
$lang->block->default['qa']['1']['grid'] = 8;
$lang->block->default['qa']['1']['params']['type'] = 'noclosed';
$lang->block->default['qa']['1']['params']['num'] = '20';
//$lang->block->default['qa']['2']['title'] = 'Testcase Overview';
//$lang->block->default['qa']['2']['block'] = 'overview';
//$lang->block->default['qa']['2']['grid'] = 4;
$lang->block->default['qa']['2']['title'] = 'Mes Bugs';
$lang->block->default['qa']['2']['block'] = 'bug';
$lang->block->default['qa']['2']['grid'] = 4;
$lang->block->default['qa']['2']['params']['num'] = 15;
$lang->block->default['qa']['2']['params']['orderBy'] = 'id_desc';
$lang->block->default['qa']['2']['params']['type'] = 'assignedTo';
$lang->block->default['qa']['3']['title'] = 'Mes CasTests';
$lang->block->default['qa']['3']['block'] = 'case';
$lang->block->default['qa']['3']['grid'] = 4;
$lang->block->default['qa']['3']['params']['num'] = 15;
$lang->block->default['qa']['3']['params']['orderBy'] = 'id_desc';
$lang->block->default['qa']['3']['params']['type'] = 'assigntome';
$lang->block->default['qa']['4']['title'] = 'Builds en attente';
$lang->block->default['qa']['4']['block'] = 'testtask';
$lang->block->default['qa']['4']['grid'] = 4;
$lang->block->default['qa']['4']['params']['num'] = 15;
$lang->block->default['qa']['4']['params']['orderBy'] = 'id_desc';
$lang->block->default['qa']['4']['params']['type'] = 'wait';
$lang->block->default['full']['my']['1']['title'] = 'Bienvenue';
$lang->block->default['full']['my']['1']['block'] = 'welcome';
$lang->block->default['full']['my']['1']['grid'] = 8;
$lang->block->default['full']['my']['1']['source'] = '';
$lang->block->default['full']['my']['2']['title'] = 'Historique';
$lang->block->default['full']['my']['2']['block'] = 'dynamic';
$lang->block->default['full']['my']['2']['grid'] = 4;
$lang->block->default['full']['my']['2']['source'] = '';
$lang->block->default['full']['my']['3']['title'] = 'Organigramme';
$lang->block->default['full']['my']['3']['block'] = 'flowchart';
$lang->block->default['full']['my']['3']['grid'] = 8;
$lang->block->default['full']['my']['3']['source'] = '';
$lang->block->default['full']['my']['4']['title'] = 'Mon Agenda';
$lang->block->default['full']['my']['4']['block'] = 'list';
$lang->block->default['full']['my']['4']['grid'] = 4;
$lang->block->default['full']['my']['4']['source'] = 'todo';
$lang->block->default['full']['my']['4']['params']['num'] = '20';
$lang->block->default['full']['my']['5'] = $lang->block->default['project']['1'];
$lang->block->default['full']['my']['5']['source'] = 'project';
$lang->block->default['full']['my']['6'] = $lang->block->default['project']['2'];
$lang->block->default['full']['my']['6']['source'] = 'project';
$lang->block->default['full']['my']['7'] = $lang->block->default['product']['1'];
$lang->block->default['full']['my']['7']['source'] = 'product';
$lang->block->default['full']['my']['8'] = $lang->block->default['product']['2'];
$lang->block->default['full']['my']['8']['source'] = 'product';
$lang->block->default['full']['my']['9'] = $lang->block->default['qa']['2'];
$lang->block->default['full']['my']['9']['source'] = 'qa';
$lang->block->default['onlyTest']['my']['1'] = $lang->block->default['qa']['1'];
$lang->block->default['onlyTest']['my']['1']['source'] = 'qa';
$lang->block->default['onlyTest']['my']['1']['grid'] = '8';
$lang->block->default['onlyTest']['my']['2']['title'] = 'Historique';
$lang->block->default['onlyTest']['my']['2']['block'] = 'dynamic';
$lang->block->default['onlyTest']['my']['2']['grid'] = 4;
$lang->block->default['onlyTest']['my']['2']['source'] = '';
$lang->block->default['onlyTest']['my']['3']['title'] = 'Mon Agenday';
$lang->block->default['onlyTest']['my']['3']['block'] = 'list';
$lang->block->default['onlyTest']['my']['3']['grid'] = 6;
$lang->block->default['onlyTest']['my']['3']['source'] = 'todo';
$lang->block->default['onlyTest']['my']['3']['params']['num'] = '20';
$lang->block->default['onlyTest']['my']['4'] = $lang->block->default['qa']['2'];
$lang->block->default['onlyTest']['my']['4']['source'] = 'qa';
$lang->block->default['onlyTest']['my']['4']['grid'] = 6;
$lang->block->default['onlyStory']['my']['1'] = $lang->block->default['project']['1'];
$lang->block->default['onlyStory']['my']['1']['source'] = 'project';
$lang->block->default['onlyStory']['my']['1']['grid'] = 8;
$lang->block->default['onlyStory']['my']['2']['title'] = 'Historique';
$lang->block->default['onlyStory']['my']['2']['block'] = 'dynamic';
$lang->block->default['onlyStory']['my']['2']['grid'] = 4;
$lang->block->default['onlyStory']['my']['2']['source'] = '';
$lang->block->default['onlyStory']['my']['3']['title'] = 'Mon Agenda';
$lang->block->default['onlyStory']['my']['3']['block'] = 'list';
$lang->block->default['onlyStory']['my']['3']['grid'] = 6;
$lang->block->default['onlyStory']['my']['3']['source'] = 'todo';
$lang->block->default['onlyStory']['my']['3']['params']['num'] = '20';
$lang->block->default['onlyStory']['my']['4'] = $lang->block->default['product']['2'];
$lang->block->default['onlyStory']['my']['4']['source'] = 'product';
$lang->block->default['onlyStory']['my']['4']['grid'] = 6;
$lang->block->default['onlyTask']['my']['1'] = $lang->block->default['project']['1'];
$lang->block->default['onlyTask']['my']['1']['source'] = 'project';
$lang->block->default['onlyTask']['my']['1']['grid'] = 8;
$lang->block->default['onlyTask']['my']['2']['title'] = 'Historique';
$lang->block->default['onlyTask']['my']['2']['block'] = 'dynamic';
$lang->block->default['onlyTask']['my']['2']['grid'] = 4;
$lang->block->default['onlyTask']['my']['2']['source'] = '';
$lang->block->default['onlyTask']['my']['3']['title'] = 'Mon Agenda';
$lang->block->default['onlyTask']['my']['3']['block'] = 'list';
$lang->block->default['onlyTask']['my']['3']['grid'] = 6;
$lang->block->default['onlyTask']['my']['3']['source'] = 'todo';
$lang->block->default['onlyTask']['my']['3']['params']['num'] = '20';
$lang->block->default['onlyTask']['my']['4'] = $lang->block->default['project']['2'];
$lang->block->default['onlyTask']['my']['4']['source'] = 'project';
$lang->block->default['onlyTask']['my']['4']['grid'] = 6;
$lang->block->num = 'Numéro';
$lang->block->type = 'Type';
$lang->block->orderBy = 'Trié par';
$lang->block->availableBlocks = new stdclass();
$lang->block->availableBlocks->todo = 'Ma Todo List';
$lang->block->availableBlocks->task = 'Mes Tâches';
$lang->block->availableBlocks->bug = 'Mes Bugs';
$lang->block->availableBlocks->case = 'Mes CasTests';
$lang->block->availableBlocks->story = 'Mes Stories';
$lang->block->availableBlocks->product = $lang->productCommon . 's';
$lang->block->availableBlocks->project = $lang->projectCommon . 's';
$lang->block->availableBlocks->plan = 'Plans';
$lang->block->availableBlocks->release = 'Releases';
$lang->block->availableBlocks->build = 'Builds';
$lang->block->availableBlocks->testtask = 'Recettes';
$lang->block->moduleList['product'] = $lang->productCommon;
$lang->block->moduleList['project'] = $lang->projectCommon;
$lang->block->moduleList['qa'] = 'QA';
$lang->block->moduleList['todo'] = 'Todo';
$lang->block->modules['product'] = new stdclass();
$lang->block->modules['product']->availableBlocks = new stdclass();
$lang->block->modules['product']->availableBlocks->statistic = 'Rapport de ' . $lang->productCommon;
$lang->block->modules['product']->availableBlocks->overview = "Vue d'ensemble du " . $lang->productCommon;
$lang->block->modules['product']->availableBlocks->list = 'Liste ' . $lang->productCommon;
$lang->block->modules['product']->availableBlocks->story = 'Story';
$lang->block->modules['product']->availableBlocks->plan = 'Plan';
$lang->block->modules['product']->availableBlocks->release = 'Release';
$lang->block->modules['project'] = new stdclass();
$lang->block->modules['project']->availableBlocks = new stdclass();
$lang->block->modules['project']->availableBlocks->statistic = 'Rapport de ' . $lang->projectCommon;
$lang->block->modules['project']->availableBlocks->overview = "Vue d'ensemble du " . $lang->projectCommon;
$lang->block->modules['project']->availableBlocks->list = 'Liste ' . $lang->projectCommon;
$lang->block->modules['project']->availableBlocks->task = 'Tâches';
$lang->block->modules['project']->availableBlocks->build = 'Build';
$lang->block->modules['qa'] = new stdclass();
$lang->block->modules['qa']->availableBlocks = new stdclass();
$lang->block->modules['qa']->availableBlocks->statistic = 'Rapport de Tests';
//$lang->block->modules['qa']->availableBlocks->overview = 'Testcase Overview';
$lang->block->modules['qa']->availableBlocks->bug = 'Bug';
$lang->block->modules['qa']->availableBlocks->case = 'CasTests';
$lang->block->modules['qa']->availableBlocks->testtask = 'Build';
$lang->block->modules['todo'] = new stdclass();
$lang->block->modules['todo']->availableBlocks = new stdclass();
$lang->block->modules['todo']->availableBlocks->list = 'Todo';
$lang->block->orderByList = new stdclass();
$lang->block->orderByList->product = array();
$lang->block->orderByList->product['id_asc'] = 'Tri par ID Produit ASC';
$lang->block->orderByList->product['id_desc'] = 'Tri par ID Produit DESC';
$lang->block->orderByList->product['status_asc'] = 'Tri par Statut ASC';
$lang->block->orderByList->product['status_desc'] = 'Tri par Statut DESC';
$lang->block->orderByList->project = array();
$lang->block->orderByList->project['id_asc'] = 'Tri par ID Projet ASC';
$lang->block->orderByList->project['id_desc'] = 'Tri par ID Projet DESC';
$lang->block->orderByList->project['status_asc'] = 'Tri par Statut ASC';
$lang->block->orderByList->project['status_desc'] = 'Tri par Statut DESC';
$lang->block->orderByList->task = array();
$lang->block->orderByList->task['id_asc'] = 'Tri par ID Tâche ASC';
$lang->block->orderByList->task['id_desc'] = 'Tri par ID Tâche DESC';
$lang->block->orderByList->task['pri_asc'] = 'Tri par Priorité de tâche ASC';
$lang->block->orderByList->task['pri_desc'] = 'Tri par Priorité de tâche DESC';
$lang->block->orderByList->task['estimate_asc'] = 'Tri par durée estimée tâche ASC';
$lang->block->orderByList->task['estimate_desc'] = 'Tri par durée estimée tâche DESC';
$lang->block->orderByList->task['status_asc'] = 'Tri par Statut ASC';
$lang->block->orderByList->task['status_desc'] = 'Tri par Statut DESC';
$lang->block->orderByList->task['deadline_asc'] = 'Tri par Date Butoir Tâche ASC';
$lang->block->orderByList->task['deadline_desc'] = 'Tri par Date Butoir Tâche DESC';
$lang->block->orderByList->bug = array();
$lang->block->orderByList->bug['id_asc'] = 'Tri par ID Bug ASC';
$lang->block->orderByList->bug['id_desc'] = 'Tri par ID Bug DESC';
$lang->block->orderByList->bug['pri_asc'] = 'Tri par Priorité Bug ASC';
$lang->block->orderByList->bug['pri_desc'] = 'Tri par Priorité Bug DESC';
$lang->block->orderByList->bug['severity_asc'] = 'Tri par Sévérité Bug ASC';
$lang->block->orderByList->bug['severity_desc'] = 'Tri par Sévérité Bug DESC';
$lang->block->orderByList->case = array();
$lang->block->orderByList->case['id_asc'] = 'Tri par ID CasTest ASC';
$lang->block->orderByList->case['id_desc'] = 'Tri par ID CasTest DESC';
$lang->block->orderByList->case['pri_asc'] = 'Tri par Priorité ASC';
$lang->block->orderByList->case['pri_desc'] = 'Tri par Priorité DESC';
$lang->block->orderByList->story = array();
$lang->block->orderByList->story['id_asc'] = 'Tri par ID Story ASC';
$lang->block->orderByList->story['id_desc'] = 'Tri par ID Story DESC';
$lang->block->orderByList->story['pri_asc'] = 'Tri par Priorité Story ASC';
$lang->block->orderByList->story['pri_desc'] = 'Tri par Priorité Story DESC';
$lang->block->orderByList->story['status_asc'] = 'Tri par Statut Story ASC';
$lang->block->orderByList->story['status_desc'] = 'Tri par Statut Story DESC';
$lang->block->orderByList->story['stage_asc'] = 'Tri par Phase Story ASC';
$lang->block->orderByList->story['stage_desc'] = 'Tri par Phase Story DESC';
$lang->block->todoNum = 'Todo';
$lang->block->taskNum = 'Task';
$lang->block->bugNum = 'Bug';
$lang->block->typeList = new stdclass();
$lang->block->typeList->task['assignedTo'] = 'Tâches qui me sont assignées';
$lang->block->typeList->task['openedBy'] = "Tâches que j'ai créées";
$lang->block->typeList->task['finishedBy'] = "Tâches que j'ai terminées";
$lang->block->typeList->task['closedBy'] = "Tâches que j'ai fermées";
$lang->block->typeList->task['canceledBy'] = "Tâches que j'ai annulées";
$lang->block->typeList->bug['assignedTo'] = 'Bugs qui me sont assignés';
$lang->block->typeList->bug['openedBy'] = "Bugs que j'ai détectés";
$lang->block->typeList->bug['resolvedBy'] = "Bugs que j'ai résolus";
$lang->block->typeList->bug['closedBy'] = "Bugs que j'ai fermés";
$lang->block->typeList->case['assigntome'] = 'CasTests qui me sont assignés';
$lang->block->typeList->case['openedbyme'] = "CasTests que j'ai créés";;
$lang->block->typeList->story['assignedTo'] = 'Stories qui me sont assignées';
$lang->block->typeList->story['openedBy'] = "Stories que j'ai créées";
$lang->block->typeList->story['reviewedBy'] = "Stories que j'ai acceptées";
$lang->block->typeList->story['closedBy'] = "Stories que j'ai fermées";
$lang->block->typeList->product['noclosed'] = 'Ouverts';
$lang->block->typeList->product['closed'] = 'Fermés';
$lang->block->typeList->product['all'] = 'Tous';
$lang->block->typeList->product['involved'] = 'Impliqués';
$lang->block->typeList->project['undone'] = 'Non terminés';
$lang->block->typeList->project['doing'] = 'En cours';
$lang->block->typeList->project['all'] = 'Tous';
$lang->block->typeList->project['involved'] = 'Impliqués';
$lang->block->typeList->testtask['wait'] = 'En attente';
$lang->block->typeList->testtask['doing'] = 'En cours';
$lang->block->typeList->testtask['blocked'] = 'Bloquées';
$lang->block->typeList->testtask['done'] = 'Jouées';
$lang->block->typeList->testtask['all'] = 'Toutes';
$lang->block->modules['product']->moreLinkList = new stdclass();
$lang->block->modules['product']->moreLinkList->list = 'product|all|product=&line=0&status=%s';
$lang->block->modules['product']->moreLinkList->story = 'my|story|type=%s';
$lang->block->modules['project']->moreLinkList = new stdclass();
$lang->block->modules['project']->moreLinkList->list = 'project|all|status=%s&project=';
$lang->block->modules['project']->moreLinkList->task = 'my|task|type=%s';
$lang->block->modules['qa']->moreLinkList = new stdclass();
$lang->block->modules['qa']->moreLinkList->bug = 'my|bug|type=%s';
$lang->block->modules['qa']->moreLinkList->case = 'my|testcase|type=%s';
$lang->block->modules['qa']->moreLinkList->testtask = 'testtask|browse|type=%s';
$lang->block->modules['todo']->moreLinkList = new stdclass();
$lang->block->modules['todo']->moreLinkList->list = 'my|todo|type=all';
$lang->block->modules['common'] = new stdclass();
$lang->block->modules['common']->moreLinkList = new stdclass();
$lang->block->modules['common']->moreLinkList->dynamic = 'company|dynamic|';
$lang->block->welcomeList['06:00'] = 'Bonjour, %s';
$lang->block->welcomeList['11:30'] = 'Bonjour, %s';
$lang->block->welcomeList['13:30'] = 'Bonjour, %s';
$lang->block->welcomeList['19:00'] = 'Bonsoir, %s';
$lang->block->gridOptions[8] = 'Left';
$lang->block->gridOptions[4] = 'Right';
$lang->block->flowchart = array();
$lang->block->flowchart[] = array('Administrateur', 'Ajoute Compartiment', 'Ajoute Utilisateurs', 'Administre Privilèges');
$lang->block->flowchart[] = array($lang->productCommon . ' Owner', 'Ajoute ' . $lang->productCommon . '/Modules', 'Ajoute ' . $lang->projectCommon . 's', 'Ajoute Stories', 'Maintient Plans', 'Crée Releases');
$lang->block->flowchart[] = array('Scrum Master', 'Ajoute ' . $lang->projectCommon . 's', 'Constitue Equipes', 'Associe ' . $lang->productCommon . 's', 'Rattache Stories', 'Crée/Affecte Tâches');
$lang->block->flowchart[] = array('Développeurs', 'Réclament Tâches/Bugs', 'Effectuent Tâches', 'Corrigent Bugs', 'MàJ Statuts', 'Terminent Tâches/Bugs');
$lang->block->flowchart[] = array('Testeurs', 'Rédigent CasTests', 'Jouent CasTests', 'Détectent Bugs', 'Vérifient Corrections', 'Ferment Bugs');
+1 -1
View File
@@ -39,7 +39,7 @@
<tr class='text-center' data-url='<?php echo empty($sso) ? $viewLink : $sso . $sign . 'referer=' . base64_encode($viewLink); ?>' <?php echo $appid?>>
<td class='c-name text-left' title='<?php echo $product->name?>'><?php echo $product->name?></td>
<?php if($longBlock):?>
<?php $projectName = $product->currentProject ? $product->currentProject : zget($projects, $product->id, '');?>
<?php $projectName = zget($projects, $product->id, '');?>
<td class='c-name c-project text-left' title='<?php echo $projectName;?>'><?php echo $projectName;?></td>
<?php endif;?>
<td class="c-num"><?php echo $product->plans?></td>
+18
View File
@@ -0,0 +1,18 @@
<?php
$lang->branch->common = 'Etablissements';
$lang->branch->manage = 'Gérer Etablissements';
$lang->branch->sort = 'Classer Etablissement';
$lang->branch->delete = 'Supprimer Etablissement';
$lang->branch->add = 'Ajout';
$lang->branch->manageTitle = 'Gestion %s';
$lang->branch->all = 'Tous';
$lang->branch->id = 'ID';
$lang->branch->product = 'Product';
$lang->branch->name = 'Nom';
$lang->branch->order = 'Ordre';
$lang->branch->deleted = 'Delete';
$lang->branch->confirmDelete = "Voulez-vous vraiment supprimer l'établissement @branch@ ?";
$lang->branch->canNotDelete = 'Attention ! Il y a des données dans @branch@. Suppression impossible !';
+1
View File
@@ -198,6 +198,7 @@ $lang->bug->priList[4] = '4';
$lang->bug->osList[''] = '';
$lang->bug->osList['all'] = 'Alle';
$lang->bug->osList['windows'] = 'Windows';
$lang->bug->osList['win10'] = 'Windows 10';
$lang->bug->osList['win8'] = 'Windows 8';
$lang->bug->osList['win7'] = 'Windows 7';
$lang->bug->osList['vista'] = 'Windows Vista';
+1
View File
@@ -198,6 +198,7 @@ $lang->bug->priList[4] = '4';
$lang->bug->osList[''] = '';
$lang->bug->osList['all'] = 'All';
$lang->bug->osList['windows'] = 'Windows';
$lang->bug->osList['win10'] = 'Windows 10';
$lang->bug->osList['win8'] = 'Windows 8';
$lang->bug->osList['win7'] = 'Windows 7';
$lang->bug->osList['vista'] = 'Windows Vista';
+407
View File
@@ -0,0 +1,407 @@
<?php
/**
* The bug module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package bug
* @version $Id: en.php 4536 2013-03-02 13:39:37Z wwccss $
* @link https://www.zentao.pm
*/
/* Fieldlist. */
$lang->bug->common = 'Bug';
$lang->bug->id = 'ID';
$lang->bug->product = $lang->productCommon;
$lang->bug->branch = 'Branche/Platforme';
$lang->bug->productplan = 'Plan';
$lang->bug->module = 'Module';
$lang->bug->moduleAB = 'Module';
$lang->bug->project = $lang->projectCommon;
$lang->bug->story = 'Story';
$lang->bug->storyVersion = 'Story Version';
$lang->bug->color = 'Color';
$lang->bug->task = 'Tâche';
$lang->bug->title = 'Titre';
$lang->bug->severity = 'Sévérité';
$lang->bug->severityAB = 'S';
$lang->bug->pri = 'Priorité';
$lang->bug->type = 'Type';
$lang->bug->os = 'OS';
$lang->bug->browser = 'Browser';
$lang->bug->steps = 'Repro Steps';
$lang->bug->status = 'Statut';
$lang->bug->statusAB = 'Statut';
$lang->bug->subStatus = 'Sub Statut';
$lang->bug->activatedCount = 'Heures Activation';
$lang->bug->activatedCountAB = 'Actif';
$lang->bug->activatedDate = 'Date Activation';
$lang->bug->confirmed = 'Confirmé';
$lang->bug->confirmedAB = 'C';
$lang->bug->toTask = 'Convertir en Tâche';
$lang->bug->toStory = 'Convertir en Story';
$lang->bug->mailto = 'Mailto';
$lang->bug->openedBy = 'Signalé par';
$lang->bug->openedByAB = 'Détecteur';
$lang->bug->openedDate = 'Date signalement';
$lang->bug->openedDateAB = 'Signalé';
$lang->bug->openedBuild = 'Open Build';
$lang->bug->assignedTo = 'Bugs qui me sont affectés';
$lang->bug->assignBug = 'Affecter à';
$lang->bug->assignedToAB = 'Affecté à';
$lang->bug->assignedDate = 'Date affectation';
$lang->bug->resolvedBy = 'Résolus par moi';
$lang->bug->resolvedByAB = 'Résolu par';
$lang->bug->resolution = 'Résolution';
$lang->bug->resolutionAB = 'Résolution';
$lang->bug->resolvedBuild = 'Build';
$lang->bug->resolvedDate = 'Date Correction';
$lang->bug->resolvedDateAB = 'Date Correction';
$lang->bug->deadline = 'Date Butoir';
$lang->bug->plan = 'Plan';
$lang->bug->closedBy = 'Fermé par';
$lang->bug->closedDate = 'Date Fermeture';
$lang->bug->duplicateBug = 'Bug ID en doublon';
$lang->bug->lastEditedBy = 'Edité par';
$lang->bug->linkBug = 'Bugs Liés';
$lang->bug->linkBugs = 'Associer Bug';
$lang->bug->unlinkBug = 'Dissocier';
$lang->bug->case = 'CasTests';
$lang->bug->caseVersion = 'Case Version';
$lang->bug->testtask = 'Request';
$lang->bug->files = 'Fichiers';
$lang->bug->keywords = 'Tags';
$lang->bug->lastEditedByAB = 'Edité par';
$lang->bug->lastEditedDateAB = 'Date Modif';
$lang->bug->lastEditedDate = 'Date Modif';
$lang->bug->fromCase = 'du CasTest';
$lang->bug->toCase = 'vers CasTest';
$lang->bug->colorTag = 'Couleur';
/* 方法列表。*/
$lang->bug->index = 'Accueil Bug';
$lang->bug->create = 'Signaler un Bug';
$lang->bug->batchCreate = 'Signaler par Lot';
$lang->bug->confirmBug = 'Confirmer';
$lang->bug->confirmAction = 'Confirmer Bug';
$lang->bug->batchConfirm = 'Confirmé par Lot';
$lang->bug->edit = 'Editer Bug';
$lang->bug->batchEdit = 'Editer par Lot';
$lang->bug->batchChangeModule = 'Batch Edit Modules';
$lang->bug->batchChangeBranch = 'Batch Edit Branches';
$lang->bug->batchClose = 'Fermer par Lot';
$lang->bug->assignTo = 'Affecter à';
$lang->bug->assignAction = 'Affecter Bug';
$lang->bug->batchAssignTo = 'Affecter par Lot';
$lang->bug->browse = 'Liste des Bugs';
$lang->bug->view = 'Détail Bug';
$lang->bug->resolve = 'Résoudre';
$lang->bug->resolveAction = 'Résoudre Bug';
$lang->bug->batchResolve = 'Résoudre par Lot';
$lang->bug->close = 'Clôturer';
$lang->bug->closeAction = 'Clôturer Bug';
$lang->bug->activate = 'Activer';
$lang->bug->activateAction = 'Activer Bug';
$lang->bug->batchActivate = 'Activer par Lot';
$lang->bug->reportChart = 'Signalements';
$lang->bug->reportAction = 'Signalement Bugs';
$lang->bug->export = 'Exporter Données';
$lang->bug->exportAction = 'Exporter Bug';
$lang->bug->delete = 'Supprimer';
$lang->bug->deleteAction = 'Supprimer Bug';
$lang->bug->deleted = 'Supprimé';
$lang->bug->confirmStoryChange = 'Confirmer Changement Story';
$lang->bug->copy = 'Copier';
$lang->bug->search = 'Rechercher';
/* 查询条件列表。*/
$lang->bug->assignToMe = 'Affectés à moi';
$lang->bug->openedByMe = 'Détectés par moi';
$lang->bug->resolvedByMe = 'Résolus par moi';
$lang->bug->closedByMe = 'Fermés par moi';
$lang->bug->assignToNull = 'Non affectés';
$lang->bug->unResolved = 'Actifs';
$lang->bug->toClosed = 'A Fermer';
$lang->bug->unclosed = 'Non fermés';
$lang->bug->unconfirmed = 'Non confirmés';
$lang->bug->longLifeBugs = 'Persistant';
$lang->bug->postponedBugs = 'Reporté';
$lang->bug->overdueBugs = 'Retard';
$lang->bug->allBugs = 'Tous';
$lang->bug->byQuery = 'Rechercher';
$lang->bug->needConfirm = 'Story Changée';
$lang->bug->allProduct = 'Tous les ' . $lang->productCommon . 's';
$lang->bug->my = 'Mes';
$lang->bug->yesterdayResolved = 'Bugs Résolus Hier ';
$lang->bug->yesterdayConfirmed = 'Bugs Confirmés Hier ';
$lang->bug->yesterdayClosed = 'Bugs Fermés Hier ';
$lang->bug->assignToMeAB = 'Affectés à Moi';
$lang->bug->openedByMeAB = 'Signalés par Moi';
$lang->bug->resolvedByMeAB = 'Résolus par Moi';
$lang->bug->ditto = 'Idem';
$lang->bug->dittoNotice = "Ce bug n'est pas lié au même product que le précédent !";
$lang->bug->noAssigned = 'Non affectés';
$lang->bug->noBug = "Pas de bug pour l'instant. Bravo !";
$lang->bug->noModule = "<div>Vous n'avez pas de modules.</div><div>Gérer Modules maintenant</div>";
$lang->bug->delayWarning = " <strong class='text-danger'> Retard %s jours </strong>";
/* 页面标签。*/
$lang->bug->lblAssignedTo = 'Affecté à4';
$lang->bug->lblMailto = 'Mailto';
$lang->bug->lblLastEdited = 'Edité par';
$lang->bug->lblResolved = 'Résolu par';
$lang->bug->allUsers = 'Charger Tous';
$lang->bug->allBuilds = 'Tous les Builds';
$lang->bug->createBuild = 'Nouveau';
/* legend列表。*/
$lang->bug->legendBasicInfo = 'Infos de Base';
$lang->bug->legendAttatch = 'Fichiers';
$lang->bug->legendPrjStoryTask = $lang->projectCommon . '/Story/Tâche';
$lang->bug->lblTypeAndSeverity = 'Type/Severité';
$lang->bug->lblSystemBrowserAndHardware = 'Système/Browser';
$lang->bug->legendSteps = 'Etapes Repro';
$lang->bug->legendComment = 'Note';
$lang->bug->legendLife = 'Vie du Bug';
$lang->bug->legendMisc = 'Divers';
$lang->bug->legendRelated = 'Infos connexes';
/* 功能按钮。*/
$lang->bug->buttonConfirm = 'Confirmer';
/* 交互提示。*/
$lang->bug->summary = "Total de <strong>%s</strong> bugs sur cette page, et <strong>%s</strong> sont Actifs.";
$lang->bug->confirmChangeProduct = "Tout changement aux {$lang->productCommon} fera que les {$lang->projectCommon}s, stories et tâches associées vont changer. Voulez-vous faire cela ?";
$lang->bug->confirmDelete = 'Voulez-vous supprimer ce bug ?';
$lang->bug->remindTask = 'Ce bug a été converti en tâche. Voulez-vous mettre à jour le statut de la Tâche(ID %s) ?';
$lang->bug->skipClose = 'Bug %s est actif. Vous ne pouvez pas le fermer.';
/* 模板。*/
$lang->bug->tplStep = "<p>[Etape]</p><br/>";
$lang->bug->tplResult = "<p>[Résultats]</p><br/>";
$lang->bug->tplExpect = "<p>[Résultats attendus]</p><br/>";
/* 各个字段取值列表。*/
$lang->bug->severityList[1] = '1';
$lang->bug->severityList[2] = '2';
$lang->bug->severityList[3] = '3';
$lang->bug->severityList[4] = '4';
$lang->bug->priList[0] = '';
$lang->bug->priList[1] = '1';
$lang->bug->priList[2] = '2';
$lang->bug->priList[3] = '3';
$lang->bug->priList[4] = '4';
$lang->bug->osList[''] = '';
$lang->bug->osList['all'] = 'Tous';
$lang->bug->osList['windows'] = 'Windows';
$lang->bug->osList['win10'] = 'Windows 10';
$lang->bug->osList['win8'] = 'Windows 8';
$lang->bug->osList['win7'] = 'Windows 7';
$lang->bug->osList['vista'] = 'Windows Vista';
$lang->bug->osList['winxp'] = 'Windows XP';
$lang->bug->osList['win2012'] = 'Windows 2012';
$lang->bug->osList['win2008'] = 'Windows 2008';
$lang->bug->osList['win2003'] = 'Windows 2003';
$lang->bug->osList['win2000'] = 'Windows 2000';
$lang->bug->osList['android'] = 'Android';
$lang->bug->osList['ios'] = 'IOS';
$lang->bug->osList['wp8'] = 'WP8';
$lang->bug->osList['wp7'] = 'WP7';
$lang->bug->osList['symbian'] = 'Symbian';
$lang->bug->osList['linux'] = 'Linux';
$lang->bug->osList['freebsd'] = 'FreeBSD';
$lang->bug->osList['osx'] = 'OS X';
$lang->bug->osList['unix'] = 'Unix';
$lang->bug->osList['others'] = 'Autres';
$lang->bug->browserList[''] = '';
$lang->bug->browserList['all'] = 'Tous';
$lang->bug->browserList['ie'] = 'IE series';
$lang->bug->browserList['ie11'] = 'IE11';
$lang->bug->browserList['ie10'] = 'IE10';
$lang->bug->browserList['ie9'] = 'IE9';
$lang->bug->browserList['ie8'] = 'IE8';
$lang->bug->browserList['ie7'] = 'IE7';
$lang->bug->browserList['ie6'] = 'IE6';
$lang->bug->browserList['chrome'] = 'Chrome';
$lang->bug->browserList['firefox'] = 'Firefox series';
$lang->bug->browserList['firefox4'] = 'Firefox4';
$lang->bug->browserList['firefox3'] = 'Firefox3';
$lang->bug->browserList['firefox2'] = 'Firefox2';
$lang->bug->browserList['opera'] = 'Opera series';
$lang->bug->browserList['oprea11'] = 'Opera11';
$lang->bug->browserList['oprea10'] = 'Opera10';
$lang->bug->browserList['opera9'] = 'Opera9';
$lang->bug->browserList['safari'] = 'Safari';
$lang->bug->browserList['maxthon'] = 'Maxthon';
$lang->bug->browserList['uc'] = 'UC';
$lang->bug->browserList['other'] = 'Autres';
$lang->bug->typeList[''] = '';
$lang->bug->typeList['codeerror'] = 'Code Erreur';
$lang->bug->typeList['interface'] = 'Interface';
$lang->bug->typeList['config'] = 'Configuration';
$lang->bug->typeList['install'] = 'Installation';
$lang->bug->typeList['security'] = 'Faille Sécurité';
$lang->bug->typeList['performance'] = 'Performance';
$lang->bug->typeList['standard'] = 'Convention de Code';
$lang->bug->typeList['automation'] = 'Script automatisation';
$lang->bug->typeList['designchange'] = 'Design Change';
$lang->bug->typeList['newfeature'] = 'Nouvelle fonctionnalité';
$lang->bug->typeList['designdefect'] = 'Erreur de Design';
$lang->bug->typeList['trackthings'] = 'Tracking';
$lang->bug->typeList['others'] = 'Autres';
$lang->bug->statusList[''] = '';
$lang->bug->statusList['active'] = 'Actif';
$lang->bug->statusList['resolved'] = 'Résolu';
$lang->bug->statusList['closed'] = 'Fermé';
$lang->bug->confirmedList[1] = 'Oui';
$lang->bug->confirmedList[0] = 'Non';
$lang->bug->resolutionList[''] = '';
$lang->bug->resolutionList['bydesign'] = 'Du Design';
$lang->bug->resolutionList['duplicate'] = 'Doublon';
$lang->bug->resolutionList['external'] = 'Externe';
$lang->bug->resolutionList['fixed'] = 'Résolu';
$lang->bug->resolutionList['notrepro'] = 'Irreproductible';
$lang->bug->resolutionList['postponed'] = 'Reporté à +tard';
$lang->bug->resolutionList['willnotfix'] = "On ne corrigera pas";
$lang->bug->resolutionList['tostory'] = 'Converti en Story';
/* 统计报表。*/
$lang->bug->report = new stdclass();
$lang->bug->report->common = 'Rapport';
$lang->bug->report->select = 'Sélect Type de Rapport';
$lang->bug->report->create = 'Créer Rapport';
$lang->bug->report->charts['bugsPerProject'] = 'Bugs ' . $lang->projectCommon;
$lang->bug->report->charts['bugsPerBuild'] = 'Bugs Par Build';
$lang->bug->report->charts['bugsPerModule'] = 'Bugs Par Module';
$lang->bug->report->charts['openedBugsPerDay'] = 'Bugs Détectés Par Jour';
$lang->bug->report->charts['resolvedBugsPerDay'] = 'Bugs Résolus Par Jour';
$lang->bug->report->charts['closedBugsPerDay'] = 'Bugs Fermés Par Jour';
$lang->bug->report->charts['openedBugsPerUser'] = 'Bugs Détectés Par User';
$lang->bug->report->charts['resolvedBugsPerUser'] = 'Bugs Résolus Par User';
$lang->bug->report->charts['closedBugsPerUser'] = 'Bugs Fermés Par User';
$lang->bug->report->charts['bugsPerSeverity'] = 'Sévérité Bug';
$lang->bug->report->charts['bugsPerResolution'] = 'Résulution Bug';
$lang->bug->report->charts['bugsPerStatus'] = 'Statut Bug';
$lang->bug->report->charts['bugsPerActivatedCount'] = 'Heure Activation';
$lang->bug->report->charts['bugsPerPri'] = 'Priorité Bug';
$lang->bug->report->charts['bugsPerType'] = 'Type de Bug';
$lang->bug->report->charts['bugsPerAssignedTo'] = 'Bug Affecté à';
//$lang->bug->report->charts['bugLiveDays'] = 'Bug Handling Time Report';
//$lang->bug->report->charts['bugHistories'] = 'Bug Handling Steps Report';
$lang->bug->report->options = new stdclass();
$lang->bug->report->options->graph = new stdclass();
$lang->bug->report->options->type = 'pie';
$lang->bug->report->options->width = 500;
$lang->bug->report->options->height = 140;
$lang->bug->report->bugsPerProject = new stdclass();
$lang->bug->report->bugsPerBuild = new stdclass();
$lang->bug->report->bugsPerModule = new stdclass();
$lang->bug->report->openedBugsPerDay = new stdclass();
$lang->bug->report->resolvedBugsPerDay = new stdclass();
$lang->bug->report->closedBugsPerDay = new stdclass();
$lang->bug->report->openedBugsPerUser = new stdclass();
$lang->bug->report->resolvedBugsPerUser = new stdclass();
$lang->bug->report->closedBugsPerUser = new stdclass();
$lang->bug->report->bugsPerSeverity = new stdclass();
$lang->bug->report->bugsPerResolution = new stdclass();
$lang->bug->report->bugsPerStatus = new stdclass();
$lang->bug->report->bugsPerActivatedCount = new stdclass();
$lang->bug->report->bugsPerType = new stdclass();
$lang->bug->report->bugsPerPri = new stdclass();
$lang->bug->report->bugsPerAssignedTo = new stdclass();
$lang->bug->report->bugLiveDays = new stdclass();
$lang->bug->report->bugHistories = new stdclass();
$lang->bug->report->bugsPerProject->graph = new stdclass();
$lang->bug->report->bugsPerBuild->graph = new stdclass();
$lang->bug->report->bugsPerModule->graph = new stdclass();
$lang->bug->report->openedBugsPerDay->graph = new stdclass();
$lang->bug->report->resolvedBugsPerDay->graph = new stdclass();
$lang->bug->report->closedBugsPerDay->graph = new stdclass();
$lang->bug->report->openedBugsPerUser->graph = new stdclass();
$lang->bug->report->resolvedBugsPerUser->graph = new stdclass();
$lang->bug->report->closedBugsPerUser->graph = new stdclass();
$lang->bug->report->bugsPerSeverity->graph = new stdclass();
$lang->bug->report->bugsPerResolution->graph = new stdclass();
$lang->bug->report->bugsPerStatus->graph = new stdclass();
$lang->bug->report->bugsPerActivatedCount->graph = new stdclass();
$lang->bug->report->bugsPerType->graph = new stdclass();
$lang->bug->report->bugsPerPri->graph = new stdclass();
$lang->bug->report->bugsPerAssignedTo->graph = new stdclass();
$lang->bug->report->bugLiveDays->graph = new stdclass();
$lang->bug->report->bugHistories->graph = new stdclass();
$lang->bug->report->bugsPerProject->graph->xAxisName = $lang->projectCommon;
$lang->bug->report->bugsPerBuild->graph->xAxisName = 'Build';
$lang->bug->report->bugsPerModule->graph->xAxisName = 'Module';
$lang->bug->report->openedBugsPerDay->type = 'bar';
$lang->bug->report->openedBugsPerDay->graph->xAxisName = 'Date';
$lang->bug->report->resolvedBugsPerDay->type = 'bar';
$lang->bug->report->resolvedBugsPerDay->graph->xAxisName = 'Date';
$lang->bug->report->closedBugsPerDay->type = 'bar';
$lang->bug->report->closedBugsPerDay->graph->xAxisName = 'Date';
$lang->bug->report->openedBugsPerUser->graph->xAxisName = 'User';
$lang->bug->report->resolvedBugsPerUser->graph->xAxisName = 'User';
$lang->bug->report->closedBugsPerUser->graph->xAxisName = 'User';
$lang->bug->report->bugsPerSeverity->graph->xAxisName = 'Sévérité';
$lang->bug->report->bugsPerResolution->graph->xAxisName = 'Résolution';
$lang->bug->report->bugsPerStatus->graph->xAxisName = 'Statut';
$lang->bug->report->bugsPerActivatedCount->graph->xAxisName = 'Heure Activation';
$lang->bug->report->bugsPerPri->graph->xAxisName = 'Priorité';
$lang->bug->report->bugsPerType->graph->xAxisName = 'Type';
$lang->bug->report->bugsPerAssignedTo->graph->xAxisName = 'Affecté à';
$lang->bug->report->bugLiveDays->graph->xAxisName = 'Handling Time';
$lang->bug->report->bugHistories->graph->xAxisName = 'Handling Steps';
/* 操作记录。*/
$lang->bug->action = new stdclass();
$lang->bug->action->resolved = array('main' => '$date, résolu par <strong>$actor</strong> et la résolution est <strong>$extra</strong> $appendLink.', 'extra' => 'resolutionList');
$lang->bug->action->tostory = array('main' => '$date, converti par <strong>$actor</strong> en <strong>Story</strong> avec ID <strong>$extra</strong>.');
$lang->bug->action->totask = array('main' => '$date, importé par <strong>$actor</strong> en tant que <strong>Task</strong> avec ID <strong>$extra</strong>.');
$lang->bug->action->linked2plan = array('main' => '$date, lié par <strong>$actor</strong> au Plan <strong>$extra</strong>.');
$lang->bug->action->unlinkedfromplan = array('main' => '$date, supprimé par <strong>$actor</strong> du Plan <strong>$extra</strong>.');
$lang->bug->action->linked2build = array('main' => '$date, lié par <strong>$actor</strong> au Build <strong>$extra</strong>.');
$lang->bug->action->unlinkedfrombuild = array('main' => '$date, retiré par <strong>$actor</strong> du Build <strong>$extra</strong>.');
$lang->bug->action->linked2release = array('main' => '$date, ajouté par <strong>$actor</strong> à la Release <strong>$extra</strong>.');
$lang->bug->action->unlinkedfromrelease = array('main' => '$date, retiré par <strong>$actor</strong> de la Release <strong>$extra</strong>.');
$lang->bug->action->linkrelatedbug = array('main' => '$date, associé par <strong>$actor</strong> au Bug <strong>$extra</strong>.');
$lang->bug->action->unlinkrelatedbug = array('main' => '$date, dissocié par <strong>$actor</strong> du Bug <strong>$extra</strong>.');
$lang->bug->placeholder = new stdclass();
$lang->bug->placeholder->chooseBuilds = 'Sélect Build';
$lang->bug->placeholder->newBuildName = 'Nom Nouv Build';
$lang->bug->featureBar['browse']['all'] = $lang->bug->allBugs;
$lang->bug->featureBar['browse']['unclosed'] = $lang->bug->unclosed;
$lang->bug->featureBar['browse']['openedbyme'] = $lang->bug->openedByMe;
$lang->bug->featureBar['browse']['assigntome'] = $lang->bug->assignToMe;
$lang->bug->featureBar['browse']['resolvedbyme'] = $lang->bug->resolvedByMe;
$lang->bug->featureBar['browse']['more'] = $lang->more;
$lang->bug->moreSelects['toclosed'] = $lang->bug->toClosed;
$lang->bug->moreSelects['unresolved'] = $lang->bug->unResolved;
$lang->bug->moreSelects['unconfirmed'] = $lang->bug->unconfirmed;
$lang->bug->moreSelects['assigntonull'] = $lang->bug->assignToNull;
$lang->bug->moreSelects['longlifebugs'] = $lang->bug->longLifeBugs;
$lang->bug->moreSelects['postponedbugs'] = $lang->bug->postponedBugs;
$lang->bug->moreSelects['overduebugs'] = $lang->bug->overdueBugs;
$lang->bug->moreSelects['needconfirm'] = $lang->bug->needConfirm;
+1
View File
@@ -198,6 +198,7 @@ $lang->bug->priList[4] = '4';
$lang->bug->osList[''] = '';
$lang->bug->osList['all'] = '全部';
$lang->bug->osList['windows'] = 'Windows';
$lang->bug->osList['win10'] = 'Windows 10';
$lang->bug->osList['win8'] = 'Windows 8';
$lang->bug->osList['win7'] = 'Windows 7';
$lang->bug->osList['vista'] = 'Windows Vista';
+1
View File
@@ -198,6 +198,7 @@ $lang->bug->priList[4] = '4';
$lang->bug->osList[''] = '';
$lang->bug->osList['all'] = '全部';
$lang->bug->osList['windows'] = 'Windows';
$lang->bug->osList['win10'] = 'Windows 10';
$lang->bug->osList['win8'] = 'Windows 8';
$lang->bug->osList['win7'] = 'Windows 7';
$lang->bug->osList['vista'] = 'Windows Vista';
+61
View File
@@ -0,0 +1,61 @@
<?php
/**
* The build module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package build
* @version $Id: en.php 4129 2013-01-18 01:58:14Z wwccss $
* @link https://www.zentao.pm
*/
$lang->build->common = "Build";
$lang->build->create = "Créer Build";
$lang->build->edit = "Editer Build";
$lang->build->linkStory = "Intégrer Story";
$lang->build->linkBug = "Intégrer Bug";
$lang->build->delete = "Supprimer Build";
$lang->build->deleted = "Supprimé";
$lang->build->view = "Détail Build";
$lang->build->batchUnlink = 'Retirer par Lot';
$lang->build->batchUnlinkStory = 'Retirer Sories par Lot';
$lang->build->batchUnlinkBug = 'Retirer Bugs par Lot';
$lang->build->confirmDelete = "Voulez-vous supprimer ce build ?";
$lang->build->confirmUnlinkStory = "Voulez-vous retirer cette Story du Build ?";
$lang->build->confirmUnlinkBug = "Voulez-vous retirer ce Bug du Build ?";
$lang->build->basicInfo = 'Infos de Base';
$lang->build->id = 'ID';
$lang->build->product = $lang->productCommon;
$lang->build->branch = 'Platforme/Branche';
$lang->build->project = $lang->projectCommon;
$lang->build->name = 'Nom';
$lang->build->date = 'Date';
$lang->build->builder = 'Builder';
$lang->build->scmPath = 'SCM Path';
$lang->build->filePath = 'File Path';
$lang->build->desc = 'Description';
$lang->build->files = 'Fichiers';
$lang->build->last = 'Dernier Build';
$lang->build->packageType = 'Type de Package';
$lang->build->unlinkStory = 'Retirer Story';
$lang->build->unlinkBug = 'Retirer Bug';
$lang->build->stories = 'Stories terminées';
$lang->build->bugs = 'Bugs Résolus';
$lang->build->generatedBugs = 'Bugs signalés';
$lang->build->noProduct = " <span style='color:red'>Ce {$lang->projectCommon} n'est pas associé à un {$lang->productCommon}, le Build ne peut pas être créé. Commencez par <a href='%s'>rattacher le projet à un {$lang->productCommon}</a></span>";
$lang->build->noBuild = 'Aucun builds.';
$lang->build->finishStories = ' Stories Terminées %s';
$lang->build->resolvedBugs = ' Bugs Résolus %s';
$lang->build->createdBugs = ' Bugs Signalés %s';
$lang->build->placeholder = new stdclass();
$lang->build->placeholder->scmPath = ' Source code repository, ex: Subversion/Git Library path';
$lang->build->placeholder->filePath = ' Chemin de téléchargement pour ce Build.';
$lang->build->action = new stdclass();
$lang->build->action->buildopened = '$date, Build <strong>$extra</strong> créé par <strong>$actor</strong>.' . "\n";
$lang->backhome = 'Retour';
+37
View File
@@ -0,0 +1,37 @@
<?php
/**
* The caselib module en file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Yidong Wang <yidong@cnezsoft.com>
* @package caselib
* @version $Id: zh-cn.php 4490 2013-02-27 03:27:05Z wyd621@gmail.com $
* @link http://www.zentao.net
*/
$lang->caselib->common = 'Case Library';
$lang->caselib->all = 'All Case Libraries';
$lang->caselib->index = "Library Home";
$lang->caselib->create = "Create Case Library";
$lang->caselib->edit = 'Edit Case Library';
$lang->caselib->browse = 'View Cases in Library';
$lang->caselib->view = 'Library Detail';
$lang->caselib->createCase = 'Create Case';
$lang->caselib->delete = "Delete Suite";
$lang->caselib->linkVersion = "Version";
$lang->caselib->deleted = 'Deleted';
$lang->caselib->exportTemplet = 'Export Template';
$lang->caselib->batchCreateCase = 'Batch Create';
$lang->caselib->import = 'Import';
$lang->caselib->importAction = 'Import Case';
$lang->caselib->showImport = 'Imported Data';
$lang->caselib->id = 'ID';
$lang->caselib->name = 'Name';
$lang->caselib->desc = 'Description';
$lang->caselib->legendDesc = 'Description';
$lang->caselib->libraryDelete = 'Do you want to delete this library?';
$lang->caselib->noModule = '<div>You have no modules.</div><div>Manage it now.</div>';
+37
View File
@@ -0,0 +1,37 @@
<?php
/**
* The caselib module en file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Yidong Wang <yidong@cnezsoft.com>
* @package caselib
* @version $Id: zh-cn.php 4490 2013-02-27 03:27:05Z wyd621@gmail.com $
* @link http://www.zentao.net
*/
$lang->caselib->common = 'Case Library';
$lang->caselib->all = 'All Case Libraries';
$lang->caselib->index = "Library Home";
$lang->caselib->create = "Create Case Library";
$lang->caselib->edit = 'Edit Case Library';
$lang->caselib->browse = 'View Cases in Library';
$lang->caselib->view = 'Library Detail';
$lang->caselib->createCase = 'Create Case';
$lang->caselib->delete = "Delete Suite";
$lang->caselib->linkVersion = "Version";
$lang->caselib->deleted = 'Deleted';
$lang->caselib->exportTemplet = 'Export Template';
$lang->caselib->batchCreateCase = 'Batch Create';
$lang->caselib->import = 'Import';
$lang->caselib->importAction = 'Import Case';
$lang->caselib->showImport = 'Imported Data';
$lang->caselib->id = 'ID';
$lang->caselib->name = 'Name';
$lang->caselib->desc = 'Description';
$lang->caselib->legendDesc = 'Description';
$lang->caselib->libraryDelete = 'Do you want to delete this library?';
$lang->caselib->noModule = '<div>You have no modules.</div><div>Manage it now.</div>';
+37
View File
@@ -0,0 +1,37 @@
<?php
/**
* The caselib module zh-tw file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青島易軟天創網絡科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Yidong Wang <yidong@cnezsoft.com>
* @package caselib
* @version $Id: zh-tw.php 4490 2013-02-27 03:27:05Z wyd621@gmail.com $
* @link http://www.zentao.net
*/
$lang->caselib->common = '用例庫';
$lang->caselib->all = '所有用例庫';
$lang->caselib->index = "用例庫首頁";
$lang->caselib->create = "創建用例庫";
$lang->caselib->edit = '編輯用例庫';
$lang->caselib->browse = '瀏覽庫用例';
$lang->caselib->view = '查看庫概況';
$lang->caselib->createCase = '創建用例';
$lang->caselib->delete = "刪除";
$lang->caselib->linkVersion = "版本";
$lang->caselib->deleted = '已刪除';
$lang->caselib->exportTemplet = '導出模板';
$lang->caselib->batchCreateCase = '批量創建用例';
$lang->caselib->import = '導入';
$lang->caselib->importAction = '導入用例';
$lang->caselib->showImport = '顯示導入數據';
$lang->caselib->id = '編號';
$lang->caselib->name = '名稱';
$lang->caselib->desc = '描述';
$lang->caselib->legendDesc = '描述';
$lang->caselib->libraryDelete = '您確認要刪除該用例庫嗎?';
$lang->caselib->noModule = '<div>您現在還沒有模組信息</div><div>請維護用例庫模組</div>';
+15 -13
View File
@@ -142,7 +142,7 @@ $lang->searchObjects['release'] = 'Release';
$lang->searchObjects['productplan'] = $lang->productCommon . 'Plan';
$lang->searchObjects['testtask'] = 'Test Aufgabe';
$lang->searchObjects['doc'] = 'Doc';
$lang->searchObjects['testsuite'] = 'Fall Bibliothek';
$lang->searchObjects['caselib'] = 'Case Library';
$lang->searchObjects['testreport'] = 'Test-Bericht';
$lang->searchTips = 'ID (strg+g)';
@@ -273,7 +273,7 @@ $lang->qa->menu->testcase = array('link' => 'Fälle|testcase|browse|productID=%
$lang->qa->menu->testtask = array('link' => 'Build|testtask|browse|productID=%s');
$lang->qa->menu->testsuite = array('link' => 'Suite|testsuite|browse|productID=%s');
$lang->qa->menu->report = array('link' => 'Berichte|testreport|browse|productID=%s');
$lang->qa->menu->caselib = array('link' => 'Bibliothek|testsuite|library');
$lang->qa->menu->caselib = array('link' => 'Bibliothek|caselib|browse');
$lang->bug = new stdclass();
$lang->bug->menu = new stdclass();
@@ -283,7 +283,7 @@ $lang->bug->menu->testcase = array('link' => 'Fälle|testcase|browse|productID=
$lang->bug->menu->testtask = array('link' => 'Build|testtask|browse|productID=%s');
$lang->bug->menu->testsuite = array('link' => 'Suite|testsuite|browse|productID=%s');
$lang->bug->menu->report = array('link' => 'Berichte|testreport|browse|productID=%s');
$lang->bug->menu->caselib = array('link' => 'Bibliothek|testsuite|library');
$lang->bug->menu->caselib = array('link' => 'Bibliothek|caselib|browse');
$lang->testcase = new stdclass();
$lang->testcase->menu = new stdclass();
@@ -292,7 +292,7 @@ $lang->testcase->menu->testcase = array('link' => 'Fälle|testcase|browse|produ
$lang->testcase->menu->testtask = array('link' => 'Build|testtask|browse|productID=%s');
$lang->testcase->menu->testsuite = array('link' => 'Suite|testsuite|browse|productID=%s');
$lang->testcase->menu->report = array('link' => 'Berichte|testreport|browse|productID=%s');
$lang->testcase->menu->caselib = array('link' => 'Bibliothek|testsuite|library');
$lang->testcase->menu->caselib = array('link' => 'Bibliothek|caselib|browse');
$lang->testtask = new stdclass();
$lang->testtask->menu = new stdclass();
@@ -301,7 +301,7 @@ $lang->testtask->menu->testcase = array('link' => 'Fälle|testcase|browse|produ
$lang->testtask->menu->testtask = array('link' => 'Build|testtask|browse|productID=%s', 'alias' => 'view,create,edit,linkcase,cases,start,close,batchrun,groupcase,report');
$lang->testtask->menu->testsuite = array('link' => 'Suite|testsuite|browse|productID=%s');
$lang->testtask->menu->report = array('link' => 'Berichte|testreport|browse|productID=%s');
$lang->testtask->menu->caselib = array('link' => 'Bibliothek|testsuite|library');
$lang->testtask->menu->caselib = array('link' => 'Bibliothek|caselib|browse');
$lang->testsuite = new stdclass();
$lang->testsuite->menu = new stdclass();
@@ -310,7 +310,7 @@ $lang->testsuite->menu->testcase = array('link' => 'Fälle|testcase|browse|prod
$lang->testsuite->menu->testtask = array('link' => 'Build|testtask|browse|productID=%s');
$lang->testsuite->menu->testsuite = array('link' => 'Suite|testsuite|browse|productID=%s', 'alias' => 'view,create,edit,linkcase');
$lang->testsuite->menu->report = array('link' => 'Report|testreport|browse|productID=%s');
$lang->testsuite->menu->caselib = array('link' => 'Library|testsuite|library');
$lang->testsuite->menu->caselib = array('link' => 'Library|caselib|browse');
$lang->testreport = new stdclass();
$lang->testreport->menu = new stdclass();
@@ -319,7 +319,7 @@ $lang->testreport->menu->testcase = array('link' => 'Fälle|testcase|browse|pro
$lang->testreport->menu->testtask = array('link' => 'Build|testtask|browse|productID=%s');
$lang->testreport->menu->testsuite = array('link' => 'Suite|testsuite|browse|productID=%s');
$lang->testreport->menu->report = array('link' => 'Berichte|testreport|browse|productID=%s', 'alias' => 'view,create,edit');
$lang->testreport->menu->caselib = array('link' => 'Bibliothek|testsuite|library');
$lang->testreport->menu->caselib = array('link' => 'Bibliothek|caselib|browse');
$lang->caselib = new stdclass();
$lang->caselib->menu = new stdclass();
@@ -328,7 +328,7 @@ $lang->caselib->menu->testcase = array('link' => 'Fälle|testcase|browse|');
$lang->caselib->menu->testtask = array('link' => 'Build|testtask|browse|');
$lang->caselib->menu->testsuite = array('link' => 'Suite|testsuite|browse|');
$lang->caselib->menu->report = array('link' => 'Berichte|testreport|browse|');
$lang->caselib->menu->caselib = array('link' => 'Bibliothek|testsuite|library', 'alias' => 'createlib,createcase,libview,edit,batchcreatecase,showimport', 'subModule' => 'tree,testcase');
$lang->caselib->menu->caselib = array('link' => 'Bibliothek|caselib|browse', 'alias' => 'create,createcase,view,edit,batchcreatecase,showimport', 'subModule' => 'tree,testcase');
/* 文档视图菜单设置。*/
$lang->doc = new stdclass();
@@ -451,7 +451,6 @@ $lang->menugroup->group = 'company';
$lang->menugroup->bug = 'qa';
$lang->menugroup->testcase = 'qa';
$lang->menugroup->case = 'qa';
$lang->menugroup->caselib = 'qa';
$lang->menugroup->testtask = 'qa';
$lang->menugroup->testsuite = 'qa';
$lang->menugroup->caselib = 'qa';
@@ -691,6 +690,7 @@ if(isset($config->global->flow) and $config->global->flow == 'onlyStory')
unset($lang->searchObjects['build']);
unset($lang->searchObjects['testtask']);
unset($lang->searchObjects['testsuite']);
unset($lang->searchObjects['caselib']);
unset($lang->searchObjects['testreport']);
}
@@ -727,6 +727,7 @@ if(isset($config->global->flow) and $config->global->flow == 'onlyTask')
unset($lang->searchObjects['release']);
unset($lang->searchObjects['productplan']);
unset($lang->searchObjects['testsuite']);
unset($lang->searchObjects['caselib']);
unset($lang->searchObjects['testreport']);
}
@@ -760,7 +761,7 @@ if(isset($config->global->flow) and $config->global->flow == 'onlyTest')
$lang->menu->testcase = 'Test Fälle|testcase|index';
$lang->menu->testsuite = 'Test Suite|testsuite|index';
$lang->menu->testtask = 'Test Aufgaben|testtask|index';
$lang->menu->caselib = 'Fall Bibliothek|testsuite|library';
$lang->menu->caselib = 'Fall Bibliothek|caselib|browse';
$lang->menuOrder[6] = 'bug';
$lang->menuOrder[7] = 'testcase';
@@ -847,9 +848,9 @@ if(isset($config->global->flow) and $config->global->flow == 'onlyTest')
/* Adjust sub menu of caselib module. */
$lang->caselib->menu = new stdclass();
$lang->caselib->menu->all = 'Alle|testsuite|library|libID=%s&browseType=all';
$lang->caselib->menu->wait = 'Warten|testsuite|library|libID=%s&browseType=wait';
$lang->caselib->menu->view = 'Anzeige|testsuite|libview|libID=%s';
$lang->caselib->menu->all = 'Alle|caselib|browse|libID=%s&browseType=all';
$lang->caselib->menu->wait = 'Warten|caselib|browse|libID=%s&browseType=wait';
$lang->caselib->menu->view = 'Anzeige|caselib|view|libID=%s';
$lang->caselib->menuOrder[5] = 'lib';
$lang->caselib->menuOrder[10] = 'all';
@@ -881,6 +882,7 @@ if(isset($config->global->flow) and $config->global->flow == 'onlyTest')
$lang->menugroup->testcase = 'testcase';
$lang->menugroup->testtask = 'testtask';
$lang->menugroup->testsuite = 'testsuite';
$lang->menugroup->caselib = 'caselib';
$lang->menugroup->testreport = 'testtask';
$lang->menugroup->build = 'product';
-1
View File
@@ -451,7 +451,6 @@ $lang->menugroup->group = 'company';
$lang->menugroup->bug = 'qa';
$lang->menugroup->testcase = 'qa';
$lang->menugroup->case = 'qa';
$lang->menugroup->caselib = 'qa';
$lang->menugroup->testtask = 'qa';
$lang->menugroup->testsuite = 'qa';
$lang->menugroup->caselib = 'qa';
+895
View File
@@ -0,0 +1,895 @@
<?php
/**
* The common simplified chinese file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package ZenTaoPMS
* @version $Id: en.php 5116 2013-07-12 06:37:48Z chencongzhi520@gmail.com $
* @link https://www.zentao.pm
*/
$lang->arrow = '&nbsp;<i class="icon-angle-right"></i>&nbsp;';
$lang->colon = '-';
$lang->comma = ',';
$lang->dot = '.';
$lang->at = ' à ';
$lang->downArrow = '↓';
$lang->null = 'Null';
$lang->ellipsis = '…';
$lang->percent = '%';
$lang->dash = '-';
$lang->zentaoPMS = 'ZenTao';
$lang->logoImg = 'zt-logo-en.png';
$lang->welcome = "%s ALM";
$lang->logout = 'Déconnexion';
$lang->login = 'Connexion';
$lang->help = 'Aide';
$lang->aboutZenTao = 'A Propos';
$lang->profile = 'Profil';
$lang->changePassword = 'Mot de Passe';
$lang->runInfo = "<div class='row'><div class='u-1 a-center' id='debugbar'>Time %s MS, Memory %s KB, Query %s. </div></div>";
$lang->agreement = "I have read and agreed to the terms and conditions of <a href='http://zpl.pub/page/zplv12.html' target='_blank'> Z PUBLIC LICENSE 1.2 </a>. <span class='text-danger'>Without authorization, I should not remove, hide or cover any logos/links of ZenTao.</span>";
$lang->designedByAIUX = "<a href='https://api.zentao.pm/goto.php?item=aiux' class='link-aiux' target='_blank'>Designed by <strong>AIUX</strong></a>";
$lang->reset = 'Réinitialiser';
$lang->cancel = 'Annuler';
$lang->refresh = 'Rafraichir';
$lang->edit = 'Editer';
$lang->delete = 'Supprimer';
$lang->close = 'Fermer';
$lang->unlink = 'Dissocier';
$lang->import = 'Importer';
$lang->export = 'Exporter';
$lang->setFileName = 'Nom du Fichier';
$lang->submitting = 'Enregistrement...';
$lang->save = 'Sauvegarde';
$lang->saveSuccess = 'Sauvegardé';
$lang->confirm = 'Confirmer';
$lang->preview = 'Consulter';
$lang->goback = 'Retour';
$lang->goPC = 'PC';
$lang->more = 'Plus';
$lang->day = 'Jour';
$lang->customConfig = 'Personnalisation';
$lang->public = 'Public';
$lang->trunk = 'Tronc';
$lang->sort = 'Ordre';
$lang->required = 'Obligatoire';
$lang->noData = 'No data.';
$lang->actions = 'Action';
$lang->restore = 'Réinitialiser';
$lang->comment = 'Note';
$lang->history = 'Historique';
$lang->attatch = 'Fichiers';
$lang->reverse = 'Inverser';
$lang->switchDisplay = 'Basculer';
$lang->expand = 'Déplier';
$lang->collapse = 'Replier';
$lang->saveSuccess = 'Sauvé';
$lang->fail = 'Echec';
$lang->addFiles = 'Fichiers ajoutés ';
$lang->files = 'Fichiers ';
$lang->pasteText = 'Collage Multi-lignes';
$lang->uploadImages = 'Upload Multi-images';
$lang->timeout = 'Timeout. Vérifier votre connexion réseau, ou réessayez !';
$lang->repairTable = 'La Base de données est peut-être endommagée. Exécutez phpmyadmin ou myisamchk pour corriger.';
$lang->duplicate = '%s a le même titre que le fichier existant.';
$lang->ipLimited = "<html><head><meta http-equiv='Content-Type' content='text/html; charset=utf-8' /></head><body>Sorry, your current IP is restricted. PLease contact your Administer to grant your permissions.</body></html>";
$lang->unfold = '+';
$lang->fold = '-';
$lang->homepage = 'Set Home';
$lang->noviceTutorial = 'Tutoriel ZenTao';
$lang->changeLog = 'Change Log';
$lang->manual = 'User Manual';
$lang->manualUrl = 'https://www.zentao.pm/book/zentaomanual/zentao-installation-11.html';
$lang->customMenu = 'Personnalisation Menu';
$lang->customField = 'Personnalisation Champ';
$lang->lineNumber = 'Ligne No.';
$lang->tutorialConfirm = 'You are using ZenTao tutorial. Do you want to quit right now?';
$lang->preShortcutKey = '[Shortcut:←]';
$lang->nextShortcutKey = '[Shortcut:→]';
$lang->backShortcutKey = '[Shortcut:Alt+↑]';
$lang->select = 'Sélectionner';
$lang->selectAll = 'Tout sélectionner';
$lang->selectReverse = "Sélectionner l'inverse";
$lang->loading = 'Chargement...';
$lang->notFound = 'Not found !';
$lang->notPage = 'Désolé, la fonctionnalité que vous souhaitez utiliser est encore en développement !';
$lang->showAll = '[[Voir Tout]]';
$lang->future = 'En Attente';
$lang->year = 'Année';
$lang->workingHour = 'Heures';
$lang->idAB = 'ID';
$lang->priAB = 'P';
$lang->statusAB = 'Statut';
$lang->openedByAB = 'Créé par';
$lang->assignedToAB = 'Affecté à';
$lang->typeAB = 'Type';
$lang->common = new stdclass();
$lang->common->common = 'Module Commun';
/* Main menu. */
$lang->menu = new stdclass();
$lang->menu->my = '<span>Dashboard</span>|my|index';
$lang->menu->product = $lang->productCommon . '|product|index|locate=no';
$lang->menu->project = $lang->projectCommon . '|project|index|locate=no';
$lang->menu->qa = 'QA|qa|index';
$lang->menu->doc = 'Doc|doc|index';
$lang->menu->report = 'Rapports|report|index';
$lang->menu->company = 'Entreprise|company|index';
$lang->menu->admin = 'Admin|admin|index';
$lang->dividerMenu = ',qa,report,';
/* Object list in search form. */
$lang->searchObjects['bug'] = 'Bug';
$lang->searchObjects['story'] = 'Story';
$lang->searchObjects['task'] = 'Tâche';
$lang->searchObjects['testcase'] = 'CasTest';
$lang->searchObjects['project'] = $lang->projectCommon;
$lang->searchObjects['product'] = $lang->productCommon;
$lang->searchObjects['user'] = 'Utilisateur';
$lang->searchObjects['build'] = 'Build';
$lang->searchObjects['release'] = 'Release';
$lang->searchObjects['productplan'] = $lang->productCommon . 'Plan';
$lang->searchObjects['testtask'] = 'Recette';
$lang->searchObjects['doc'] = 'Document';
$lang->searchObjects['caselib'] = 'Case Library';
$lang->searchObjects['testreport'] = 'CR de Test';
$lang->searchTips = 'ID (ctrl+g)';
/* Code formats for import. */
$lang->importEncodeList['gbk'] = 'GBK';
$lang->importEncodeList['big5'] = 'BIG5';
$lang->importEncodeList['utf-8'] = 'UTF-8';
/* File type list for export. */
$lang->exportFileTypeList['csv'] = 'csv';
$lang->exportFileTypeList['xml'] = 'xml';
$lang->exportFileTypeList['html'] = 'html';
$lang->exportTypeList['all'] = 'Toutes les Données';
$lang->exportTypeList['selected'] = 'Données sélectionnées';
/* Language. */
$lang->lang = 'Langue';
/* Theme style. */
$lang->theme = 'Theme';
$lang->themes['default'] = 'Default';
$lang->themes['green'] = 'Green';
$lang->themes['red'] = 'Red';
$lang->themes['purple'] = 'Purple';
$lang->themes['pink'] = 'Pink';
$lang->themes['blackberry'] = 'Blackberry';
$lang->themes['classic'] = 'Classic';
/* Index menu settings. */
$lang->index = new stdclass();
$lang->index->menu = new stdclass();
$lang->index->menu->product = "{$lang->productCommon}|product|browse";
$lang->index->menu->project = "{$lang->projectCommon}|project|browse";
/* my dashboard menu settings. */
$lang->my = new stdclass();
$lang->my->menu = new stdclass();
$lang->my->menu->index = 'Accueil|my|index';
$lang->my->menu->calendar = array('link' => 'Agenda|my|calendar|', 'subModule' => 'todo', 'alias' => 'todo');
$lang->my->menu->task = array('link' => 'Tâche|my|task|', 'subModule' => 'task');
$lang->my->menu->bug = array('link' => 'Bug|my|bug|', 'subModule' => 'bug');
$lang->my->menu->testtask = array('link' => 'Recette|my|testtask|', 'subModule' => 'testcase,testtask', 'alias' => 'testcase');
$lang->my->menu->story = array('link' => 'Story|my|story|', 'subModule' => 'story');
$lang->my->menu->myProject = "{$lang->projectCommon}|my|project|";
$lang->my->menu->dynamic = 'Historique|my|dynamic|';
$lang->my->menu->profile = array('link' => 'Profil|my|profile', 'alias' => 'editprofile');
$lang->my->menu->changePassword = 'Password|my|changepassword';
$lang->my->menu->manageContacts = 'Contact|my|managecontacts';
$lang->my->menu->score = array('link' => 'Points|my|score', 'subModule' => 'score');
$lang->my->dividerMenu = ',task,myProject,profile,';
$lang->todo = new stdclass();
$lang->todo->menu = $lang->my->menu;
$lang->score = new stdclass();
$lang->score->menu = $lang->my->menu;
/* Product menu settings. */
$lang->product = new stdclass();
$lang->product->menu = new stdclass();
$lang->product->menu->story = array('link' => 'Story|product|browse|productID=%s', 'alias' => 'batchedit', 'subModule' => 'story');
$lang->product->menu->plan = array('link' => 'Plan|productplan|browse|productID=%s', 'subModule' => 'productplan');
$lang->product->menu->release = array('link' => 'Release|release|browse|productID=%s', 'subModule' => 'release');
$lang->product->menu->roadmap = 'Roadmap|product|roadmap|productID=%s';
$lang->product->menu->project = "{$lang->projectCommon}|product|project|status=all&productID=%s";
$lang->product->menu->dynamic = 'Historique|product|dynamic|productID=%s';
$lang->product->menu->doc = array('link' => 'Doc|doc|objectLibs|type=product&objectID=%s&from=product', 'subModule' => 'doc');
$lang->product->menu->branch = '@branch@|branch|manage|productID=%s';
$lang->product->menu->module = 'Module|tree|browse|productID=%s&view=story';
$lang->product->menu->view = array('link' => "Vue d'ensemble|product|view|productID=%s", 'alias' => 'edit');
$lang->product->dividerMenu = ',plan,project,doc,';
$lang->story = new stdclass();
$lang->productplan = new stdclass();
$lang->release = new stdclass();
$lang->branch = new stdclass();
$lang->branch->menu = $lang->product->menu;
$lang->story->menu = $lang->product->menu;
$lang->productplan->menu = $lang->product->menu;
$lang->release->menu = $lang->product->menu;
/* Project menu settings. */
$lang->project = new stdclass();
$lang->project->menu = new stdclass();
$lang->project->menu->task = array('link' => 'Tâche|project|task|projectID=%s', 'subModule' => 'task,tree', 'alias' => 'importtask,importbug');
$lang->project->menu->kanban = array('link' => 'Kanban|project|kanban|projectID=%s');
$lang->project->menu->burn = array('link' => 'Atterrissage|project|burn|projectID=%s');
$lang->project->menu->list = array('link' => 'Plus|project|grouptask|projectID=%s', 'alias' => 'grouptask,tree', 'class' => 'dropdown dropdown-hover');
$lang->project->menu->story = array('link' => 'Story|project|story|projectID=%s', 'subModule' => 'story', 'alias' => 'linkstory,storykanban');
$lang->project->menu->qa = array('link' => 'Test|project|bug|projectID=%s', 'subModule' => 'bug,build,testtask', 'alias' => 'build,testtask', 'class' => 'dropdown dropdown-hover');
$lang->project->menu->doc = array('link' => 'Doc|doc|objectLibs|type=project&objectID=%s&from=project', 'subModule' => 'doc');
$lang->project->menu->action = array('link' => 'Historique|project|dynamic|projectID=%s', 'subModule' => 'dynamic', 'class' => 'dropdown dropdown-hover');
$lang->project->menu->product = $lang->productCommon . '|project|manageproducts|projectID=%s';
$lang->project->menu->team = array('link' => 'Equipe|project|team|projectID=%s', 'alias' => 'managemembers');
$lang->project->menu->view = array('link' => "Vue d'ensemble|project|view|projectID=%s", 'alias' => 'edit,start,suspend,putoff,close');
$lang->project->subMenu = new stdclass();
$lang->project->subMenu->list = new stdclass();
$lang->project->subMenu->list->groupTask = 'Vision Groupée|project|groupTask|projectID=%s';
$lang->project->subMenu->list->tree = 'Arborescence|project|tree|projectID=%s';
$lang->project->subMenu->qa = new stdclass();
$lang->project->subMenu->qa->bug = 'Bug|project|bug|projectID=%s';
$lang->project->subMenu->qa->build = array('link' => 'Build|project|build|projectID=%s', 'subModule' => 'build');
$lang->project->subMenu->qa->testtask = array('link' => 'Recette|project|testtask|projectID=%s', 'subModule' => 'testreport,testtask');
$lang->project->dividerMenu = ',story,team,product,';
$lang->task = new stdclass();
$lang->build = new stdclass();
$lang->task->menu = $lang->project->menu;
$lang->build->menu = $lang->project->menu;
/* QA menu settings. */
$lang->qa = new stdclass();
$lang->qa->menu = new stdclass();
$lang->qa->menu->bug = array('link' => 'Bug|bug|browse|productID=%s');
$lang->qa->menu->testcase = array('link' => 'CasTest|testcase|browse|productID=%s');
$lang->qa->menu->testtask = array('link' => 'Recette|testtask|browse|productID=%s');
$lang->qa->menu->testsuite = array('link' => 'Cahier Recette|testsuite|browse|productID=%s');
$lang->qa->menu->report = array('link' => 'Rapport|testreport|browse|productID=%s');
$lang->qa->menu->caselib = array('link' => 'Library Recette|caselib|browse');
$lang->bug = new stdclass();
$lang->bug->menu = new stdclass();
$lang->bug->menu->bug = array('link' => 'Bug|bug|browse|productID=%s', 'alias' => 'view,create,batchcreate,edit,resolve,close,activate,report,batchedit,batchactivate,confirmbug,assignto', 'subModule' => 'tree');
$lang->bug->menu->testcase = array('link' => 'CasTest|testcase|browse|productID=%s');
$lang->bug->menu->testtask = array('link' => 'Recette|testtask|browse|productID=%s');
$lang->bug->menu->testsuite = array('link' => 'Cahier Recette|testsuite|browse|productID=%s');
$lang->bug->menu->report = array('link' => 'Rapport|testreport|browse|productID=%s');
$lang->bug->menu->caselib = array('link' => 'Library Recette|caselib|browse');
$lang->testcase = new stdclass();
$lang->testcase->menu = new stdclass();
$lang->testcase->menu->bug = array('link' => 'Bug|bug|browse|productID=%s');
$lang->testcase->menu->testcase = array('link' => 'CasTest|testcase|browse|productID=%s', 'alias' => 'view,create,batchcreate,edit,batchedit,showimport,groupcase,importfromlib', 'subModule' => 'tree');
$lang->testcase->menu->testtask = array('link' => 'Recette|testtask|browse|productID=%s');
$lang->testcase->menu->testsuite = array('link' => 'Cahier Recette|testsuite|browse|productID=%s');
$lang->testcase->menu->report = array('link' => 'Rapport|testreport|browse|productID=%s');
$lang->testcase->menu->caselib = array('link' => 'Library Recette|caselib|browse');
$lang->testtask = new stdclass();
$lang->testtask->menu = new stdclass();
$lang->testtask->menu->bug = array('link' => 'Bug|bug|browse|productID=%s');
$lang->testtask->menu->testcase = array('link' => 'CasTest|testcase|browse|productID=%s');
$lang->testtask->menu->testtask = array('link' => 'Recette|testtask|browse|productID=%s', 'alias' => 'view,create,edit,linkcase,cases,start,close,batchrun,groupcase,report');
$lang->testtask->menu->testsuite = array('link' => 'Cahier Recette|testsuite|browse|productID=%s');
$lang->testtask->menu->report = array('link' => 'Rapport|testreport|browse|productID=%s');
$lang->testtask->menu->caselib = array('link' => 'Library Recette|caselib|browse');
$lang->testsuite = new stdclass();
$lang->testsuite->menu = new stdclass();
$lang->testsuite->menu->bug = array('link' => 'Bug|bug|browse|productID=%s');
$lang->testsuite->menu->testcase = array('link' => 'CasTest|testcase|browse|productID=%s');
$lang->testsuite->menu->testtask = array('link' => 'Recette|testtask|browse|productID=%s');
$lang->testsuite->menu->testsuite = array('link' => 'Cahier Recette|testsuite|browse|productID=%s', 'alias' => 'view,create,edit,linkcase');
$lang->testsuite->menu->report = array('link' => 'Rapport|testreport|browse|productID=%s');
$lang->testsuite->menu->caselib = array('link' => 'Library Recette|caselib|browse');
$lang->testreport = new stdclass();
$lang->testreport->menu = new stdclass();
$lang->testreport->menu->bug = array('link' => 'Bug|bug|browse|productID=%s');
$lang->testreport->menu->testcase = array('link' => 'CasTest|testcase|browse|productID=%s');
$lang->testreport->menu->testtask = array('link' => 'Recette|testtask|browse|productID=%s');
$lang->testreport->menu->testsuite = array('link' => 'Cahier Recette|testsuite|browse|productID=%s');
$lang->testreport->menu->report = array('link' => 'Rapport|testreport|browse|productID=%s', 'alias' => 'view,create,edit');
$lang->testreport->menu->caselib = array('link' => 'Library Recette|caselib|browse');
$lang->caselib = new stdclass();
$lang->caselib->menu = new stdclass();
$lang->caselib->menu->bug = array('link' => 'Bug|bug|browse|');
$lang->caselib->menu->testcase = array('link' => 'CasTest|testcase|browse|');
$lang->caselib->menu->testtask = array('link' => 'Recette|testtask|browse|');
$lang->caselib->menu->testsuite = array('link' => 'Cahier Recette|testsuite|browse|');
$lang->caselib->menu->report = array('link' => 'Rapport|testreport|browse|');
$lang->caselib->menu->caselib = array('link' => 'Library Recette|caselib|browse', 'alias' => 'create,createcase,view,edit,batchcreatecase,showimport', 'subModule' => 'tree,testcase');
/* Doc menu settings. */
$lang->doc = new stdclass();
$lang->doc->menu = new stdclass();
//$lang->doc->menu->createLib = array('link' => '<i class="icon icon-folder-plus"></i>&nbsp;Add Library|doc|createLib', 'float' => 'right');
$lang->svn = new stdclass();
$lang->git = new stdclass();
/* Report menu settings. */
$lang->report = new stdclass();
$lang->report->menu = new stdclass();
$lang->report->menu->product = array('link' => $lang->productCommon . '|report|productsummary');
$lang->report->menu->prj = array('link' => $lang->projectCommon . '|report|projectdeviation');
$lang->report->menu->test = array('link' => 'Recette|report|bugcreate', 'alias' => 'bugassign');
$lang->report->menu->staff = array('link' => 'Entreprise|report|workload');
$lang->report->notice = new stdclass();
$lang->report->notice->help = 'Note : Le rapport est généré à partir des résultats de la liste consultée. Par exemple, cliquez sur AssignedToMe, puis Générer Rapport pour obtenir un rapport basé sur la liste de ce qui vous est assigné.';
/* Company menu settings. */
$lang->company = new stdclass();
$lang->company->menu = new stdclass();
$lang->company->menu->browseUser = array('link' => 'Utilisateurs|company|browse', 'subModule' => 'user');
$lang->company->menu->dept = array('link' => 'Compartiments|dept|browse', 'subModule' => 'dept');
$lang->company->menu->browseGroup = array('link' => 'Privilèges|group|browse', 'subModule' => 'group');
$lang->company->menu->dynamic = 'Historique|company|dynamic|';
$lang->company->menu->view = array('link' => 'Entreprise|company|view');
$lang->dept = new stdclass();
$lang->group = new stdclass();
$lang->user = new stdclass();
$lang->dept->menu = $lang->company->menu;
$lang->group->menu = $lang->company->menu;
$lang->user->menu = $lang->company->menu;
/* Admin menu settings. */
$lang->admin = new stdclass();
$lang->admin->menu = new stdclass();
$lang->admin->menu->index = array('link' => 'Accueil|admin|index', 'alias' => 'register,certifytemail,certifyztmobile,ztcompany');
$lang->admin->menu->message = array('link' => 'Notification|message|index', 'subModule' => 'message,mail,webhook');
$lang->admin->menu->custom = array('link' => 'Personnalisation|custom|set', 'subModule' => 'custom');
$lang->admin->menu->sso = array('link' => 'Intégration|admin|sso');
$lang->admin->menu->dev = array('link' => 'Dévelop.|dev|api', 'alias' => 'db', 'subModule' => 'dev,editor,entry');
$lang->admin->menu->translate = array('link' => 'Traduire|translate|index', 'subModule' => 'translate');
$lang->admin->menu->data = array('link' => 'Données|backup|index', 'subModule' => 'backup,action');
$lang->admin->menu->safe = array('link' => 'Sécurité|admin|safe', 'alias' => 'checkweak');
$lang->admin->menu->system = array('link' => 'Système|cron|index', 'subModule' => 'cron');
$lang->admin->subMenu = new stdclass();
$lang->admin->subMenu->message = new stdclass();
$lang->admin->subMenu->message->mail = array('link' => 'Mail|mail|index', 'subModule' => 'mail');
$lang->admin->subMenu->message->webhook = array('link' => 'Webhook|webhook|browse', 'subModule' => 'webhook');
$lang->admin->subMenu->message->browser = array('link' => 'Browser|message|browser');
$lang->admin->subMenu->message->setting = array('link' => 'Paramètrage|message|setting', 'subModule' => 'message');
$lang->admin->subMenu->sso = new stdclass();
$lang->admin->subMenu->sso->ranzhi = 'Zdoo|admin|sso';
$lang->admin->subMenu->dev = new stdclass();
$lang->admin->subMenu->dev->api = array('link' => 'API|dev|api');
$lang->admin->subMenu->dev->db = array('link' => 'Database|dev|db');
$lang->admin->subMenu->dev->editor = array('link' => 'Editor|editor|index', 'subModule' => 'editor');
$lang->admin->subMenu->dev->entry = array('link' => 'Application|entry|browse', 'subModule' => 'entry');
$lang->admin->subMenu->data = new stdclass();
$lang->admin->subMenu->data->backup = array('link' => 'Backup|backup|index', 'subModule' => 'backup');
$lang->admin->subMenu->data->trash = 'Corbeille|action|trash';
$lang->admin->subMenu->system = new stdclass();
$lang->admin->subMenu->system->cron = array('link' => 'Cron|cron|index', 'subModule' => 'cron');
$lang->admin->subMenu->system->timezone = array('link' => 'Timezone|custom|timezone', 'subModule' => 'custom');
$lang->convert = new stdclass();
$lang->upgrade = new stdclass();
$lang->action = new stdclass();
$lang->backup = new stdclass();
$lang->extension = new stdclass();
$lang->custom = new stdclass();
$lang->mail = new stdclass();
$lang->cron = new stdclass();
$lang->dev = new stdclass();
$lang->entry = new stdclass();
$lang->webhook = new stdclass();
$lang->message = new stdclass();
$lang->search = new stdclass();
$lang->translate = new stdclass();
$lang->editor = new stdclass();
$lang->convert->menu = $lang->admin->menu;
$lang->upgrade->menu = $lang->admin->menu;
$lang->action->menu = $lang->admin->menu;
$lang->backup->menu = $lang->admin->menu;
$lang->cron->menu = $lang->admin->menu;
$lang->extension->menu = $lang->admin->menu;
$lang->custom->menu = $lang->admin->menu;
$lang->mail->menu = $lang->admin->menu;
$lang->dev->menu = $lang->admin->menu;
$lang->entry->menu = $lang->admin->menu;
$lang->webhook->menu = $lang->admin->menu;
$lang->message->menu = $lang->admin->menu;
$lang->translate->menu = $lang->admin->menu;
$lang->editor->menu = $lang->admin->menu;
/* Menu group. */
$lang->menugroup = new stdclass();
$lang->menugroup->release = 'product';
$lang->menugroup->story = 'product';
$lang->menugroup->branch = 'product';
$lang->menugroup->productplan = 'product';
$lang->menugroup->task = 'project';
$lang->menugroup->build = 'project';
$lang->menugroup->convert = 'admin';
$lang->menugroup->upgrade = 'admin';
$lang->menugroup->user = 'company';
$lang->menugroup->group = 'company';
$lang->menugroup->bug = 'qa';
$lang->menugroup->testcase = 'qa';
$lang->menugroup->case = 'qa';
$lang->menugroup->testtask = 'qa';
$lang->menugroup->testsuite = 'qa';
$lang->menugroup->caselib = 'qa';
$lang->menugroup->testreport = 'qa';
$lang->menugroup->doclib = 'doc';
$lang->menugroup->people = 'company';
$lang->menugroup->dept = 'company';
$lang->menugroup->todo = 'my';
$lang->menugroup->score = 'my';
$lang->menugroup->action = 'admin';
$lang->menugroup->backup = 'admin';
$lang->menugroup->cron = 'admin';
$lang->menugroup->extension = 'admin';
$lang->menugroup->custom = 'admin';
$lang->menugroup->mail = 'admin';
$lang->menugroup->dev = 'admin';
$lang->menugroup->entry = 'admin';
$lang->menugroup->webhook = 'admin';
$lang->menugroup->message = 'admin';
$lang->menugroup->translate = 'admin';
$lang->menugroup->editor = 'admin';
/* Error info. */
$lang->error = new stdclass();
$lang->error->companyNotFound = "The domain %s cannot be found!";
$lang->error->length = array("『 %s 』length error. It should be『%s』", "『%s』length should be <=『%s』and >『%s』.");
$lang->error->reg = "『 %s 』format error. It should be『%s』.";
$lang->error->unique = "『 %s 』『 %s 』exists. Go to Admin->Recycle Bin to restore it, if you are sure it is deleted.";
$lang->error->gt = "『 %s 』should be > 『 %s 』.";
$lang->error->ge = "『 %s 』should be >= 『 %s 』.";
$lang->error->notempty = "『 %s 』should not be blank.";
$lang->error->empty = "『 %s 』should be null.";
$lang->error->equal = "『 %s 』has to be 『 %s 』.";
$lang->error->int = array("『 %s 』should be numbers", "『 %s 』should be 『 %s-%s 』.");
$lang->error->float = "『 %s 』should have numbers, or decimals.";
$lang->error->email = "『 %s 』should be valid Email.";
$lang->error->URL = "『 %s 』should be url.";
$lang->error->date = "『%s』should be valid date.";
$lang->error->datetime = "『 %s 』should be valid date.";
$lang->error->code = "『 %s 』should be letters or numbers.";
$lang->error->account = "『 %s 』should be >= 3 letters or numbers.";
$lang->error->passwordsame = "Passwords should be consistent.";
$lang->error->passwordrule = "Password should conform to rules. It should be >= 6 characters.";
$lang->error->accessDenied = 'Access is denied.';
$lang->error->pasteImg = 'Images are not allowed to be pasted in your browser!';
$lang->error->noData = 'No data.';
$lang->error->editedByOther = 'This record might have been changed. Please refresh and try to edit again!';
$lang->error->tutorialData = 'No data can be imported in tutorial mode. Please quit tutorial first!';
/* Page info. */
$lang->pager = new stdclass();
$lang->pager->noRecord = "Pas d'enregistrement.";
$lang->pager->digest = "Total: <strong>%s</strong>. %s <strong>%s/%s</strong> &nbsp; ";
$lang->pager->recPerPage = " <strong>%s</strong> par page";
$lang->pager->first = "<i class='icon-step-backward' title='Première Page'></i>";
$lang->pager->pre = "<i class='icon-play icon-flip-horizontal' title='Page Précédente'></i>";
$lang->pager->next = "<i class='icon-play' title='Page Suivante'></i>";
$lang->pager->last = "<i class='icon-step-forward' title='Dernière Page'></i>";
$lang->pager->locate = "Go!";
$lang->pager->previousPage = "Préc";
$lang->pager->nextPage = "Suiv";
$lang->pager->summery = "<strong>%s-%s</strong> sur <strong>%s</strong>.";
$lang->pager->pageOfText = "Page {0}";
$lang->pager->firstPage = "Première";
$lang->pager->lastPage = "Dernière";
$lang->pager->goto = "Aller à";
$lang->pager->pageOf = "Page <strong>{page}</strong>";
$lang->pager->totalPage = "<strong>{totalPage}</strong> pages";
$lang->pager->totalCount = "Total: <strong>{recTotal}</strong> lignes";
$lang->pager->pageSize = "<strong>{recPerPage}</strong> par page";
$lang->pager->itemsRange = "De <strong>{start}</strong> à <strong>{end}</strong>";
$lang->pager->pageOfTotal = "Page <strong>{page}</strong> sur <strong>{totalPage}</strong>";
$lang->colorPicker = new stdclass();
$lang->colorPicker->errorTip = "Ce n'est pas une valeur de couleur valide";
$lang->proVersion = "<a href='https://www.zentao.pm/book/zentaopromanual/free-open-source-project-management-software-zentaopro-127.html' target='_blank' id='proLink' class='text-important'>ZenTao Pro <i class='text-danger icon-pro-version'></i></a> &nbsp; ";
$lang->downNotify = "Download Desktop Notification";
$lang->downloadClient = "Download ZenTao Desktop";
$lang->clientHelp = "Client Help";
$lang->clientHelpLink = "https://www.zentao.pm/book/zentaomanual/scrum-tool-im-integration-206.html";
$lang->website = "https://www.zentao.pm";
$lang->suhosinInfo = "Warning ! Data is reaching the limit. Please change <font color=red>sohusin.post.max_vars</font> and <font color=red>sohusin.request.max_vars</font> (set larger %s value) in php.ini, then save and restart Apache or php-fpm, or some data will not be saved.";
$lang->maxVarsInfo = "Warning ! Data is reaching the limit. Please change <font color=red>max_input_vars</font> (set larger %s value) in php.ini, then save and restart Apache or php-fpm, or some data will not be saved.";
$lang->pasteTextInfo = "Collez le texte ici. Chaque ligne sera un titre. ";
$lang->noticeImport = "Les données importées contiennent des données qui existent déjà dans le système. Confirmez s'il vous plait cette action.";
$lang->importConfirm = "Importer";
$lang->importAndCover = "Ecraser";
$lang->importAndInsert = "Inserer";
$lang->noResultsMatch = "Aucun résults trouvé !";
$lang->searchMore = "Plus de résults :";
$lang->chooseUsersToMail = "Choisissez les utilisateurs à avertir.";
$lang->browserNotice = "Le navigateur que vous utilisez actuellement peut ne pas vous afficher les résultats correctement. Il est recommandé d'utiliser Chrome, Palemoon, Firefox, IE9+, Opera or Safari.";
$lang->noticePasteImg = "Vous pouvez déposer des images dans l'éditeur.";
$lang->pasteImgFail = "Echec lors de la dépose des images. Essayez plus tard.";
$lang->pasteImgUploading = "Chargement...";
/* Time formats settings. */
if(!defined('DT_DATETIME1')) define('DT_DATETIME1', 'Y-m-d H:i:s');
if(!defined('DT_DATETIME2')) define('DT_DATETIME2', 'y-m-d H:i');
if(!defined('DT_MONTHTIME1'))define('DT_MONTHTIME1', 'n/d H:i');
if(!defined('DT_MONTHTIME2'))define('DT_MONTHTIME2', 'n/d H:i');
if(!defined('DT_DATE1')) define('DT_DATE1', 'Y-m-d');
if(!defined('DT_DATE2')) define('DT_DATE2', 'Ymd');
if(!defined('DT_DATE3')) define('DT_DATE3', 'Y/m/d');
if(!defined('DT_DATE4')) define('DT_DATE4', 'n/j');
if(!defined('DT_TIME1')) define('DT_TIME1', 'H:i:s');
if(!defined('DT_TIME2')) define('DT_TIME2', 'H:i');
/* Datepicker. */
$lang->datepicker = new stdclass();
$lang->datepicker->dpText = new stdclass();
$lang->datepicker->dpText->TEXT_OR = 'ou ';
$lang->datepicker->dpText->TEXT_PREV_YEAR = 'Année Dernière';
$lang->datepicker->dpText->TEXT_PREV_MONTH = 'Mois Dernier';
$lang->datepicker->dpText->TEXT_PREV_WEEK = 'Semaine Dernière';
$lang->datepicker->dpText->TEXT_YESTERDAY = 'Hier';
$lang->datepicker->dpText->TEXT_THIS_MONTH = 'Ce Mois';
$lang->datepicker->dpText->TEXT_THIS_WEEK = 'Cette Semaine';
$lang->datepicker->dpText->TEXT_TODAY = "Aujourd'hui";
$lang->datepicker->dpText->TEXT_NEXT_YEAR = 'Année Prochaine';
$lang->datepicker->dpText->TEXT_NEXT_MONTH = 'Mois Prochain';
$lang->datepicker->dpText->TEXT_CLOSE = 'Fermer';
$lang->datepicker->dpText->TEXT_DATE = '';
$lang->datepicker->dpText->TEXT_CHOOSE_DATE = 'Choisir une Date';
$lang->datepicker->dayNames = array('Dimanche', 'Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi');
$lang->datepicker->abbrDayNames = array('Dim', 'Lun', 'Mar', 'Mer', 'Jeu', 'Ven', 'Sam');
$lang->datepicker->monthNames = array('Jan', 'Fév', 'Mar', 'Avr', 'Mai', 'Juin', 'Juil', 'Août', 'Sep', 'Oct', 'Nov', 'Déc');
/* Common action icons. */
$lang->icons['todo'] = 'check';
$lang->icons['product'] = 'cube';
$lang->icons['bug'] = 'bug';
$lang->icons['task'] = 'check-sign';
$lang->icons['tasks'] = 'tasks';
$lang->icons['project'] = 'stack';
$lang->icons['doc'] = 'file-text';
$lang->icons['doclib'] = 'folder-close';
$lang->icons['story'] = 'lightbulb';
$lang->icons['release'] = 'tags';
$lang->icons['roadmap'] = 'code-fork';
$lang->icons['plan'] = 'flag';
$lang->icons['dynamic'] = 'volume-up';
$lang->icons['build'] = 'tag';
$lang->icons['test'] = 'check';
$lang->icons['testtask'] = 'check';
$lang->icons['group'] = 'group';
$lang->icons['team'] = 'group';
$lang->icons['company'] = 'sitemap';
$lang->icons['user'] = 'user';
$lang->icons['dept'] = 'sitemap';
$lang->icons['tree'] = 'sitemap';
$lang->icons['usecase'] = 'sitemap';
$lang->icons['testcase'] = 'sitemap';
$lang->icons['result'] = 'list-alt';
$lang->icons['mail'] = 'envelope';
$lang->icons['trash'] = 'trash';
$lang->icons['extension'] = 'th-large';
$lang->icons['app'] = 'th-large';
$lang->icons['results'] = 'list-alt';
$lang->icons['create'] = 'plus';
$lang->icons['post'] = 'edit';
$lang->icons['batchCreate'] = 'plus-sign';
$lang->icons['batchEdit'] = 'edit-sign';
$lang->icons['batchClose'] = 'off';
$lang->icons['edit'] = 'edit';
$lang->icons['delete'] = 'close';
$lang->icons['copy'] = 'copy';
$lang->icons['report'] = 'bar-chart';
$lang->icons['export'] = 'export';
$lang->icons['report-file'] = 'file-powerpoint';
$lang->icons['import'] = 'import';
$lang->icons['finish'] = 'checked';
$lang->icons['resolve'] = 'check';
$lang->icons['start'] = 'play';
$lang->icons['restart'] = 'play';
$lang->icons['run'] = 'play';
$lang->icons['runCase'] = 'play';
$lang->icons['batchRun'] = 'play-sign';
$lang->icons['assign'] = 'hand-right';
$lang->icons['assignTo'] = 'hand-right';
$lang->icons['change'] = 'fork';
$lang->icons['link'] = 'link';
$lang->icons['close'] = 'off';
$lang->icons['activate'] = 'magic';
$lang->icons['review'] = 'glasses';
$lang->icons['confirm'] = 'search';
$lang->icons['confirmBug'] = 'search';
$lang->icons['putoff'] = 'calendar';
$lang->icons['suspend'] = 'pause';
$lang->icons['pause'] = 'pause';
$lang->icons['cancel'] = 'ban-circle';
$lang->icons['recordEstimate'] = 'time';
$lang->icons['customFields'] = 'cogs';
$lang->icons['manage'] = 'cog';
$lang->icons['unlock'] = 'unlock-alt';
$lang->icons['confirmStoryChange'] = 'search';
$lang->icons['score'] = 'tint';
include (dirname(__FILE__) . '/menuOrder.php');
global $config;
if(isset($config->global->flow) and $config->global->flow == 'onlyStory')
{
/* Remove project, report and qa module. */
unset($lang->menu->project);
unset($lang->menu->report);
unset($lang->menu->qa);
unset($lang->menuOrder[15]);
unset($lang->menuOrder[20]);
unset($lang->menuOrder[30]);
/* Adjust sub menu of my dashboard. */
unset($lang->my->menu->bug);
unset($lang->my->menu->testtask);
unset($lang->my->menu->task);
unset($lang->my->menu->myProject);
/* Adjust sub menu of product module. */
unset($lang->product->menu->project);
unset($lang->product->menu->doc);
/* Rename product module. */
$lang->menu->product = "{$lang->productCommon}|product|index";
/* Adjust search items. */
unset($lang->searchObjects['bug']);
unset($lang->searchObjects['task']);
unset($lang->searchObjects['testcase']);
unset($lang->searchObjects['project']);
unset($lang->searchObjects['build']);
unset($lang->searchObjects['testtask']);
unset($lang->searchObjects['testsuite']);
unset($lang->searchObjects['caselib']);
unset($lang->searchObjects['testreport']);
}
if(isset($config->global->flow) and $config->global->flow == 'onlyTask')
{
/* Remove product, report and qa module. */
unset($lang->menu->product);
unset($lang->menu->report);
unset($lang->menu->qa);
unset($lang->menuOrder[10]);
unset($lang->menuOrder[20]);
unset($lang->menuOrder[30]);
/* Adjust sub menu of my dashboard. */
unset($lang->my->menu->bug);
unset($lang->my->menu->testtask);
unset($lang->my->menu->story);
/* Adjust sub menu of project module. */
unset($lang->project->menu->story);
unset($lang->project->menu->build);
unset($lang->project->menu->qa);
unset($lang->project->menu->product);
unset($lang->project->menu->doc);
/* Remove sub menu of product module. */
unset($lang->product->menu);
unset($lang->product->menuOrder);
unset($lang->searchObjects['story']);
unset($lang->searchObjects['product']);
unset($lang->searchObjects['testcase']);
unset($lang->searchObjects['release']);
unset($lang->searchObjects['productplan']);
unset($lang->searchObjects['testsuite']);
unset($lang->searchObjects['caselib']);
unset($lang->searchObjects['testreport']);
}
if(isset($config->global->flow) and $config->global->flow == 'onlyTest')
{
/* Remove project and test module. */
unset($lang->menu->project);
unset($lang->menu->qa);
unset($lang->menu->report);
unset($lang->menuOrder[15]);
unset($lang->menuOrder[20]);
unset($lang->menuOrder[30]);
/* Rename product module. */
$lang->menu->product = "{$lang->productCommon}|product|index";
/* Adjust sub menu of my dashboard. */
unset($lang->my->menu->task);
unset($lang->my->menu->myProject);
unset($lang->my->menu->story);
/* Remove sub menu of project module. */
unset($lang->project->menu);
unset($lang->project->menuOrder);
$lang->project->menu = new stdclass();
$lang->project->menu->list = array('alias' => '');
/* Add bug, testcase and testtask module. */
$lang->menu->bug = 'Bug|bug|index';
$lang->menu->testcase = 'CasTest|testcase|index';
$lang->menu->testsuite = 'Cahier de Recette|testsuite|index';
$lang->menu->testtask = 'Recette|testtask|index';
$lang->menu->caselib = 'Library Recette|caselib|browse';
$lang->menuOrder[6] = 'bug';
$lang->menuOrder[7] = 'testcase';
$lang->menuOrder[8] = 'testsuite';
$lang->menuOrder[9] = 'testtask';
$lang->menuOrder[10] = 'caselib';
$lang->menuOrder[11] = 'product';
/* Adjust sub menu of bug module. */
$lang->bug->menu = new stdclass();
$lang->bug->menu->all = 'Tous|bug|browse|productID=%s&branch=%s&browseType=all&param=%s';
$lang->bug->menu->unclosed = 'Non Fermés|bug|browse|productID=%s&branch=%s&browseType=unclosed&param=%s';
$lang->bug->menu->openedbyme = 'Détectés par Moi|bug|browse|productID=%s&branch=%s&browseType=openedbyme&param=%s';
$lang->bug->menu->assigntome = 'Affectés à Moi|bug|browse|productID=%s&branch=%s&browseType=assigntome&param=%s';
$lang->bug->menu->resolvedbyme = 'Résolus par Moi|bug|browse|productID=%s&branch=%s&browseType=resolvedbyme&param=%s';
$lang->bug->menu->toclosed = 'A Fermer|bug|browse|productID=%s&branch=%s&browseType=toclosed&param=%s';
$lang->bug->menu->unresolved = 'Actifs|bug|browse|productID=%s&branch=%s&browseType=unresolved&param=%s';
$lang->bug->menu->more = array('link' => 'More|bug|browse|productID=%s&branch=%s&browseType=unconfirmed&param=%s', 'class' => 'dropdown dropdown-hover');
$lang->bug->subMenu = new stdclass();
$lang->bug->subMenu->more = new stdclass();
$lang->bug->subMenu->more->unconfirmed = 'Non confirmés|bug|browse|productID=%s&branch=%s&browseType=unconfirmed&param=%s';
$lang->bug->subMenu->more->assigntonull = 'Non affectés|bug|browse|productID=%s&branch=%s&browseType=assigntonull&param=%s';
$lang->bug->subMenu->more->longlifebugs = 'Persistants|bug|browse|productID=%s&branch=%s&browseType=longlifebugs&param=%s';
$lang->bug->subMenu->more->postponedbugs = 'Reportés|bug|browse|productID=%s&branch=%s&browseType=postponedbugs&param=%s';
$lang->bug->subMenu->more->overduebugs = 'Retard|bug|browse|productID=%s&branch=%s&browseType=overduebugs&param=%s';
$lang->bug->subMenu->more->needconfirm = 'A Confirmer|bug|browse|productID=%s&branch=%s&browseType=needconfirm&param=%s';
$lang->bug->menuOrder[5] = 'product';
$lang->bug->menuOrder[10] = 'all';
$lang->bug->menuOrder[15] = 'unclosed';
$lang->bug->menuOrder[20] = 'openedbyme';
$lang->bug->menuOrder[25] = 'assigntome';
$lang->bug->menuOrder[30] = 'resolvedbyme';
$lang->bug->menuOrder[35] = 'toclosed';
$lang->bug->menuOrder[40] = 'unresolved';
$lang->bug->menuOrder[45] = 'unconfirmed';
$lang->bug->menuOrder[50] = 'assigntonull';
$lang->bug->menuOrder[55] = 'longlifebugs';
$lang->bug->menuOrder[60] = 'postponedbugs';
$lang->bug->menuOrder[65] = 'overduebugs';
$lang->bug->menuOrder[70] = 'needconfirm';
/* Adjust sub menu of testcase. */
$lang->testcase->menu = new stdclass();
$lang->testcase->menu->all = 'Tous|testcase|browse|productID=%s&branch=%s&browseType=all';
$lang->testcase->menu->wait = 'En Attente|testcase|browse|productID=%s&branch=%s&browseType=wait';
$lang->testcase->menu->bysuite = array('link' => 'Cahier Recette|testsuite|create|productID=%s', 'class' => 'dropdown dropdown-hover');
$lang->testcase->subMenu = new stdclass();
$lang->testcase->subMenu->bysuite = new stdclass();
$lang->testcase->subMenu->bysuite->create = 'Rédiger Cahier de Recette|testsuite|create|productID=%s';
$lang->testcase->menuOrder[5] = 'product';
$lang->testcase->menuOrder[10] = 'all';
$lang->testcase->menuOrder[15] = 'wait';
$lang->testcase->menuOrder[20] = 'suite';
/* Adjust sub menu of bug module. */
$lang->testsuite->menu = new stdclass();
$lang->testsuite->menuOrder[5] = 'product';
/* Adjust sub menu of testtask. */
$lang->testtask->menu = new stdclass();
$lang->testtask->menu->totalStatus = 'Toutes|testtask|browse|productID=%s&branch=%s&type=%s,totalStatus';
$lang->testtask->menu->wait = 'En Attente|testtask|browse|productID=%s&branch=%s&type=%s,wait';
$lang->testtask->menu->doing = 'En Déroulement|testtask|browse|productID=%s&branch=%s&type=%s,doing';
$lang->testtask->menu->blocked = 'Bloquées|testtask|browse|productID=%s&branch=%s&type=%s,blocked';
$lang->testtask->menu->done = 'Jouées|testtask|browse|productID=%s&branch=%s&type=%s,done';
$lang->testtask->menu->report = array('link' => 'Rapports|testreport|browse');
$lang->testtask->menuOrder[5] = 'product';
$lang->testtask->menuOrder[10] = 'scope';
$lang->testtask->menuOrder[15] = 'totalStatus';
$lang->testtask->menuOrder[20] = 'wait';
$lang->testtask->menuOrder[25] = 'doing';
$lang->testtask->menuOrder[30] = 'blocked';
$lang->testtask->menuOrder[35] = 'done';
$lang->testtask->menuOrder[40] = 'report';
$lang->testreport->menu = $lang->testtask->menu;
$lang->testreport->menuOrder = $lang->testtask->menuOrder;
/* Adjust sub menu of caselib module. */
$lang->caselib->menu = new stdclass();
$lang->caselib->menu->all = 'Toutes|caselib|browse|libID=%s&browseType=all';
$lang->caselib->menu->wait = 'En Attente|caselib|browse|libID=%s&browseType=wait';
$lang->caselib->menu->view = 'Vues|caselib|view|libID=%s';
$lang->caselib->menuOrder[5] = 'lib';
$lang->caselib->menuOrder[10] = 'all';
$lang->caselib->menuOrder[15] = 'wait';
$lang->caselib->menuOrder[20] = 'view';
/* Adjust sub menu of product module. */
unset($lang->product->menu->story);
unset($lang->product->menu->project);
unset($lang->product->menu->release);
unset($lang->product->menu->dynamic);
unset($lang->product->menu->plan);
unset($lang->product->menu->roadmap);
unset($lang->product->menu->doc);
unset($lang->product->menu->module);
unset($lang->product->menu->index);
$lang->product->menu->build = array('link' => 'Build|product|build', 'subModule' => 'build');
$lang->product->menuOrder[5] = 'build';
$lang->product->menuOrder[10] = 'view';
$lang->product->menuOrder[15] = 'order';
$lang->build->menu = $lang->product->menu;
$lang->build->menuOrder = $lang->product->menuOrder;
/* Adjust menu group. */
$lang->menugroup->bug = 'bug';
$lang->menugroup->testcase = 'testcase';
$lang->menugroup->testtask = 'testtask';
$lang->menugroup->testsuite = 'testsuite';
$lang->menugroup->caselib = 'caselib';
$lang->menugroup->testreport = 'testtask';
$lang->menugroup->build = 'product';
/* Adjust search objects. */
unset($lang->searchObjects['story']);
unset($lang->searchObjects['task']);
unset($lang->searchObjects['release']);
unset($lang->searchObjects['project']);
unset($lang->searchObjects['productplan']);
}
-1
View File
@@ -451,7 +451,6 @@ $lang->menugroup->group = 'company';
$lang->menugroup->bug = 'qa';
$lang->menugroup->testcase = 'qa';
$lang->menugroup->case = 'qa';
$lang->menugroup->caselib = 'qa';
$lang->menugroup->testtask = 'qa';
$lang->menugroup->testsuite = 'qa';
$lang->menugroup->caselib = 'qa';
+15 -13
View File
@@ -142,7 +142,7 @@ $lang->searchObjects['release'] = '發佈';
$lang->searchObjects['productplan'] = $lang->productCommon . '計劃';
$lang->searchObjects['testtask'] = '測試單';
$lang->searchObjects['doc'] = '文檔';
$lang->searchObjects['testsuite'] = '用例庫';
$lang->searchObjects['caselib'] = '用例庫';
$lang->searchObjects['testreport'] = '測試報告';
$lang->searchTips = '編號(ctrl+g)';
@@ -273,7 +273,7 @@ $lang->qa->menu->testcase = array('link' => '用例|testcase|browse|productID=%
$lang->qa->menu->testtask = array('link' => '測試單|testtask|browse|productID=%s');
$lang->qa->menu->testsuite = array('link' => '套件|testsuite|browse|productID=%s');
$lang->qa->menu->report = array('link' => '報告|testreport|browse|productID=%s');
$lang->qa->menu->caselib = array('link' => '用例庫|testsuite|library');
$lang->qa->menu->caselib = array('link' => '用例庫|caselib|browse');
$lang->bug = new stdclass();
$lang->bug->menu = new stdclass();
@@ -283,7 +283,7 @@ $lang->bug->menu->testcase = array('link' => '用例|testcase|browse|productID=
$lang->bug->menu->testtask = array('link' => '測試單|testtask|browse|productID=%s');
$lang->bug->menu->testsuite = array('link' => '套件|testsuite|browse|productID=%s');
$lang->bug->menu->report = array('link' => '報告|testreport|browse|productID=%s');
$lang->bug->menu->caselib = array('link' => '用例庫|testsuite|library');
$lang->bug->menu->caselib = array('link' => '用例庫|caselib|browse');
$lang->testcase = new stdclass();
$lang->testcase->menu = new stdclass();
@@ -292,7 +292,7 @@ $lang->testcase->menu->testcase = array('link' => '用例|testcase|browse|produ
$lang->testcase->menu->testtask = array('link' => '測試單|testtask|browse|productID=%s');
$lang->testcase->menu->testsuite = array('link' => '套件|testsuite|browse|productID=%s');
$lang->testcase->menu->report = array('link' => '報告|testreport|browse|productID=%s');
$lang->testcase->menu->caselib = array('link' => '用例庫|testsuite|library');
$lang->testcase->menu->caselib = array('link' => '用例庫|caselib|browse');
$lang->testtask = new stdclass();
$lang->testtask->menu = new stdclass();
@@ -301,7 +301,7 @@ $lang->testtask->menu->testcase = array('link' => '用例|testcase|browse|produ
$lang->testtask->menu->testtask = array('link' => '測試單|testtask|browse|productID=%s', 'alias' => 'view,create,edit,linkcase,cases,start,close,batchrun,groupcase,report');
$lang->testtask->menu->testsuite = array('link' => '套件|testsuite|browse|productID=%s');
$lang->testtask->menu->report = array('link' => '報告|testreport|browse|productID=%s');
$lang->testtask->menu->caselib = array('link' => '用例庫|testsuite|library');
$lang->testtask->menu->caselib = array('link' => '用例庫|caselib|browse');
$lang->testsuite = new stdclass();
$lang->testsuite->menu = new stdclass();
@@ -310,7 +310,7 @@ $lang->testsuite->menu->testcase = array('link' => '用例|testcase|browse|prod
$lang->testsuite->menu->testtask = array('link' => '測試單|testtask|browse|productID=%s');
$lang->testsuite->menu->testsuite = array('link' => '套件|testsuite|browse|productID=%s', 'alias' => 'view,create,edit,linkcase');
$lang->testsuite->menu->report = array('link' => '報告|testreport|browse|productID=%s');
$lang->testsuite->menu->caselib = array('link' => '用例庫|testsuite|library');
$lang->testsuite->menu->caselib = array('link' => '用例庫|caselib|browse');
$lang->testreport = new stdclass();
$lang->testreport->menu = new stdclass();
@@ -319,7 +319,7 @@ $lang->testreport->menu->testcase = array('link' => '用例|testcase|browse|pro
$lang->testreport->menu->testtask = array('link' => '測試單|testtask|browse|productID=%s');
$lang->testreport->menu->testsuite = array('link' => '套件|testsuite|browse|productID=%s');
$lang->testreport->menu->report = array('link' => '報告|testreport|browse|productID=%s', 'alias' => 'view,create,edit');
$lang->testreport->menu->caselib = array('link' => '用例庫|testsuite|library');
$lang->testreport->menu->caselib = array('link' => '用例庫|caselib|browse');
$lang->caselib = new stdclass();
$lang->caselib->menu = new stdclass();
@@ -328,7 +328,7 @@ $lang->caselib->menu->testcase = array('link' => '用例|testcase|browse|');
$lang->caselib->menu->testtask = array('link' => '測試單|testtask|browse|');
$lang->caselib->menu->testsuite = array('link' => '套件|testsuite|browse|');
$lang->caselib->menu->report = array('link' => '報告|testreport|browse|');
$lang->caselib->menu->caselib = array('link' => '用例庫|testsuite|library', 'alias' => 'createlib,createcase,libview,edit,batchcreatecase,showimport', 'subModule' => 'tree,testcase');
$lang->caselib->menu->caselib = array('link' => '用例庫|caselib|browse', 'alias' => 'create,createcase,view,edit,batchcreatecase,showimport', 'subModule' => 'tree,testcase');
/* 文檔視圖菜單設置。*/
$lang->doc = new stdclass();
@@ -451,7 +451,6 @@ $lang->menugroup->group = 'company';
$lang->menugroup->bug = 'qa';
$lang->menugroup->testcase = 'qa';
$lang->menugroup->case = 'qa';
$lang->menugroup->caselib = 'qa';
$lang->menugroup->testtask = 'qa';
$lang->menugroup->testsuite = 'qa';
$lang->menugroup->caselib = 'qa';
@@ -691,6 +690,7 @@ if(isset($config->global->flow) and $config->global->flow == 'onlyStory')
unset($lang->searchObjects['build']);
unset($lang->searchObjects['testtask']);
unset($lang->searchObjects['testsuite']);
unset($lang->searchObjects['caselib']);
unset($lang->searchObjects['testreport']);
}
@@ -727,6 +727,7 @@ if(isset($config->global->flow) and $config->global->flow == 'onlyTask')
unset($lang->searchObjects['release']);
unset($lang->searchObjects['productplan']);
unset($lang->searchObjects['testsuite']);
unset($lang->searchObjects['caselib']);
unset($lang->searchObjects['testreport']);
}
@@ -760,7 +761,7 @@ if(isset($config->global->flow) and $config->global->flow == 'onlyTest')
$lang->menu->testcase = '用例|testcase|index';
$lang->menu->testsuite = '套件|testsuite|index';
$lang->menu->testtask = '測試單|testtask|index';
$lang->menu->caselib = '用例庫|testsuite|library';
$lang->menu->caselib = '用例庫|caselib|browse';
$lang->menuOrder[6] = 'bug';
$lang->menuOrder[7] = 'testcase';
@@ -847,9 +848,9 @@ if(isset($config->global->flow) and $config->global->flow == 'onlyTest')
/* Adjust sub menu of caselib module. */
$lang->caselib->menu = new stdclass();
$lang->caselib->menu->all = '所有|testsuite|library|libID=%s&browseType=all';
$lang->caselib->menu->wait = '待評審|testsuite|library|libID=%s&browseType=wait';
$lang->caselib->menu->view = '概況|testsuite|libview|libID=%s';
$lang->caselib->menu->all = '所有|caselib|browse|libID=%s&browseType=all';
$lang->caselib->menu->wait = '待評審|caselib|browse|libID=%s&browseType=wait';
$lang->caselib->menu->view = '概況|caselib|view|libID=%s';
$lang->caselib->menuOrder[5] = 'lib';
$lang->caselib->menuOrder[10] = 'all';
@@ -882,6 +883,7 @@ if(isset($config->global->flow) and $config->global->flow == 'onlyTest')
$lang->menugroup->case = 'testcase';
$lang->menugroup->testtask = 'testtask';
$lang->menugroup->testsuite = 'testsuite';
$lang->menugroup->caselib = 'caselib';
$lang->menugroup->testreport = 'testtask';
$lang->menugroup->build = 'product';
+35
View File
@@ -0,0 +1,35 @@
<?php
/**
* The company module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package company
* @version $Id: en.php 4714 2013-05-02 08:10:58Z chencongzhi520@gmail.com $
* @link https://www.zentao.pm
*/
$lang->company->common = 'Entreprise';
$lang->company->index = "Accueil Entreprise";
$lang->company->edit = "Edit Entreprise";
$lang->company->view = "Informations Entreprise";
$lang->company->browse = "Liste Utilisateurs";
$lang->company->dynamic = "Historique";
$lang->company->orgView = 'Vues';
$lang->company->name = "Nom de l'entreprise";
$lang->company->phone = 'Téléphone';
$lang->company->fax = 'Fax';
$lang->company->address = 'Mail';
$lang->company->zipcode = 'Code Postal';
$lang->company->website = 'Site Web';
$lang->company->backyard = 'Intranet';
$lang->company->guest = 'Connexion Invités';
$lang->company->admins = 'Administrateur';
$lang->company->product = $lang->productCommon;
$lang->company->project = $lang->projectCommon;
$lang->company->user = 'Utilisateurs';
$lang->company->guestOptions[0] = 'Refusée';
$lang->company->guestOptions[1] = 'Autorisée';
+116
View File
@@ -0,0 +1,116 @@
<?php
/**
* The convert module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package convert
* @version $Id: en.php 4129 2013-01-18 01:58:14Z wwccss $
* @link https://www.zentao.pm
*/
$lang->convert->common = 'Importé';
$lang->convert->index = 'Accueil';
$lang->convert->start = 'Commencer';
$lang->convert->desc = <<<EOT
<p>Bienvenue dans l'Assistant de Conversion, ce programme va vous assister pour convertir des données vers ZenTao.</p>
<strong>La conversion comporte des risques, il est donc fortement recommandé d'effectuer une sauvegarde de votre base de données et des fichiers importants avant d'effectuer la conversion, et de vous assurer que plus personne n'utilise le système.</strong>
EOT;
$lang->convert->setConfig = 'Source Config';
$lang->convert->setBugfree = 'Bugfree Config';
$lang->convert->setRedmine = 'Redmine Config';
$lang->convert->checkBugFree = 'Check Bugfree';
$lang->convert->checkRedmine = 'Check Redmine';
$lang->convert->convertRedmine = 'Convert Redmine';
$lang->convert->convertBugFree = 'Convert BugFree';
$lang->convert->selectSource = 'Sélectionnez le système source et sa version';
$lang->convert->mustSelectSource = "You must select a source system.";
$lang->convert->direction = "{$lang->projectCommon} convertis vers";
$lang->convert->questionTypeOfRedmine = 'Type in Redmine';
$lang->convert->aimTypeOfZentao = 'Convert to Type in ZenTao';
$lang->convert->directionList['bug'] = 'Bug';
$lang->convert->directionList['task'] = 'Task';
$lang->convert->directionList['story'] = 'Story';
$lang->convert->sourceList['BugFree'] = array('bugfree_1' => '1.x', 'bugfree_2' => '2.x');
$lang->convert->sourceList['Redmine'] = array('Redmine_1.1' => '1.1');
$lang->convert->setting = 'Settings';
$lang->convert->checkConfig = 'Check Settings';
$lang->convert->ok = '<span class="text-success"><i class="icon-check-sign"></i> OK </span>';
$lang->convert->fail = '<span class="text-danger"><i class="icon-remove-sign"></i> Failed</span>';
$lang->convert->dbHost = 'Database Server';
$lang->convert->dbPort = 'Server Port';
$lang->convert->dbUser = 'Database User Name';
$lang->convert->dbPassword = 'Database Password';
$lang->convert->dbName = 'Database used in %s';
$lang->convert->dbCharset = '%s Database Coding';
$lang->convert->dbPrefix = '%s Table Prefix';
$lang->convert->installPath = '%s Installation Root Directory';
$lang->convert->checkDB = 'Database';
$lang->convert->checkTable = 'Table';
$lang->convert->checkPath = 'Installation Path';
$lang->convert->execute = 'Convert';
$lang->convert->item = 'Item Converted';
$lang->convert->count = 'No.';
$lang->convert->info = 'Info';
$lang->convert->bugfree = new stdclass();
$lang->convert->bugfree->users = 'User';
$lang->convert->bugfree->projects = $lang->projectCommon;
$lang->convert->bugfree->modules = 'Module';
$lang->convert->bugfree->bugs = 'Bug';
$lang->convert->bugfree->cases = 'CasTest';
$lang->convert->bugfree->results = 'Result';
$lang->convert->bugfree->actions = 'History';
$lang->convert->bugfree->files = 'Files';
$lang->convert->redmine = new stdclass();
$lang->convert->redmine->users = 'User';
$lang->convert->redmine->groups = 'Group';
$lang->convert->redmine->products = $lang->productCommon;
$lang->convert->redmine->projects = $lang->projectCommon;
$lang->convert->redmine->stories = 'Story';
$lang->convert->redmine->tasks = 'Task';
$lang->convert->redmine->bugs = 'Bug';
$lang->convert->redmine->productPlans = $lang->productCommon . 'Plan';
$lang->convert->redmine->teams = 'Team';
$lang->convert->redmine->releases = 'Release';
$lang->convert->redmine->builds = 'Build';
$lang->convert->redmine->docLibs = 'Doc Lib';
$lang->convert->redmine->docs = 'Doc';
$lang->convert->redmine->files = 'Files';
$lang->convert->errorFileNotExits = 'File %s is not found.';
$lang->convert->errorUserExists = 'User %s existed.';
$lang->convert->errorGroupExists = 'Group %s existed.';
$lang->convert->errorBuildExists = 'Build %s existed.';
$lang->convert->errorReleaseExists = 'Release %s existed.';
$lang->convert->errorCopyFailed = 'File %s copy failed.';
$lang->convert->setParam = 'Set parameters.';
$lang->convert->statusType = new stdclass();
$lang->convert->priType = new stdclass();
$lang->convert->aimType = 'Convert Issue';
$lang->convert->statusType->bug = 'Convert Status (Bug Status)';
$lang->convert->statusType->story = 'Convert Status (Story Status)';
$lang->convert->statusType->task = 'Convert Status (Task Status)';
$lang->convert->priType->bug = 'Convert Priority (Bug Status)';
$lang->convert->priType->story = 'Convert Priority (Story Status)';
$lang->convert->priType->task = 'Convert Priority (Task Status)';
$lang->convert->issue = new stdclass();
$lang->convert->issue->redmine = 'Redmine';
$lang->convert->issue->zentao = 'ZenTao';
$lang->convert->issue->goto = 'Convert To';
+55
View File
@@ -0,0 +1,55 @@
<?php
$lang->cron->common = 'Cron';
$lang->cron->index = 'Accueil Cron';
$lang->cron->list = 'Tâches';
$lang->cron->create = 'Ajouter';
$lang->cron->createAction = 'Ajouter Cron';
$lang->cron->edit = 'Editer Cron';
$lang->cron->delete = 'Supprimer Cron';
$lang->cron->toggle = 'Activer/Désactiver';
$lang->cron->turnon = 'On/Off';
$lang->cron->openProcess = 'Restart';
$lang->cron->restart = 'Restart Cron';
$lang->cron->m = 'Minute';
$lang->cron->h = 'Heure';
$lang->cron->dom = 'Jour';
$lang->cron->mon = 'Mois';
$lang->cron->dow = 'Semaine';
$lang->cron->command = 'Commande';
$lang->cron->status = 'Statut';
$lang->cron->type = 'Type';
$lang->cron->remark = 'Commentaire';
$lang->cron->lastTime = 'Dernier Run';
$lang->cron->turnonList['1'] = 'On';
$lang->cron->turnonList['0'] = 'Off';
$lang->cron->statusList['normal'] = 'Normal';
$lang->cron->statusList['running'] = 'Running';
$lang->cron->statusList['stop'] = 'Stop';
$lang->cron->typeList['zentao'] = 'Self Call';
$lang->cron->typeList['system'] = 'Command Système';
$lang->cron->toggleList['start'] = 'Activer';
$lang->cron->toggleList['stop'] = 'Désactiver';
$lang->cron->confirmDelete = 'Voulez-vous supprimer ce cron ?';
$lang->cron->confirmTurnon = 'Voulez-vous arrêter le cron ?';
$lang->cron->introduction = <<<EOD
<p>Cron sert à accomplire des actions récurrentes, telles que la mise à jour des graphiques d'atterrissage, des sauvegardes, etc.</p>
<p>Les fonctionnalités du Cron ont besoin d'être plus testées, le Cron est donc désactivé par défaut.</p>
EOD;
$lang->cron->confirmOpen = <<<EOD
<p>Voulez-vous le mettre en route ?<a href="%s" target='hiddenwin'><strong>Activer les Tâches Programmées<strong></a></p>
EOD;
$lang->cron->notice = new stdclass();
$lang->cron->notice->m = 'Range:0-59,"*" means the numbers within the range, "/" means "per", "-" means the range.';
$lang->cron->notice->h = 'Range:0-23';
$lang->cron->notice->dom = 'Range:1-31';
$lang->cron->notice->mon = 'Range:1-12';
$lang->cron->notice->dow = 'Range:0-6';
$lang->cron->notice->help = 'Note:If the server is restarted, or the Cron is not working, it means the Cron has stopped. You can restart it by clicking 【Restart】 or refresh this page. If the last execution time is changed, it means the Cron is running.';
$lang->cron->notice->errorRule = '"%s" invalide';
+146
View File
@@ -0,0 +1,146 @@
<?php
$lang->custom->common = 'Personnalisation';
$lang->custom->index = 'Accueil';
$lang->custom->set = 'Personnaliser';
$lang->custom->restore = 'Réinitialiser';
$lang->custom->key = 'Clé';
$lang->custom->value = 'Valeur';
$lang->custom->flow = 'Concept';
$lang->custom->working = 'Mode';
$lang->custom->select = 'Choix du Concept';
$lang->custom->branch = 'Multi-Branches';
$lang->custom->owner = 'Propriétaire';
$lang->custom->module = 'Module';
$lang->custom->section = 'Section';
$lang->custom->lang = 'Langue';
$lang->custom->setPublic = 'Set Public';
$lang->custom->required = 'Champ Obligatoire';
$lang->custom->score = 'Point';
$lang->custom->timezone = 'Timezone';
$lang->custom->scoreReset = 'Réinit Points';
$lang->custom->scoreTitle = 'Fonctionnalité des Points';
$lang->custom->object['story'] = 'Story';
$lang->custom->object['task'] = 'Tâche';
$lang->custom->object['bug'] = 'Bug';
$lang->custom->object['testcase'] = 'CasTest';
$lang->custom->object['testtask'] = 'Build';
$lang->custom->object['todo'] = 'Agenda';
$lang->custom->object['user'] = 'Utilisateur';
$lang->custom->object['block'] = 'Bloc';
$lang->custom->story = new stdClass();
$lang->custom->story->fields['priList'] = 'Priorité';
$lang->custom->story->fields['sourceList'] = 'Source';
$lang->custom->story->fields['reasonList'] = 'Raison Fermeture';
$lang->custom->story->fields['stageList'] = 'Phase';
$lang->custom->story->fields['statusList'] = 'Statut';
$lang->custom->story->fields['reviewResultList'] = 'Valider Résultats';
$lang->custom->story->fields['review'] = 'Validation Requise';
$lang->custom->task = new stdClass();
$lang->custom->task->fields['priList'] = 'Priorité';
$lang->custom->task->fields['typeList'] = 'Type';
$lang->custom->task->fields['reasonList'] = 'Raison Fermeture';
$lang->custom->task->fields['statusList'] = 'Statut';
$lang->custom->task->fields['hours'] = 'Effort';
$lang->custom->bug = new stdClass();
$lang->custom->bug->fields['priList'] = 'Priorité';
$lang->custom->bug->fields['severityList'] = 'Sévérité';
$lang->custom->bug->fields['osList'] = 'OS';
$lang->custom->bug->fields['browserList'] = 'Browser';
$lang->custom->bug->fields['typeList'] = 'Type';
$lang->custom->bug->fields['resolutionList'] = 'Résolution';
$lang->custom->bug->fields['statusList'] = 'Statut';
$lang->custom->bug->fields['longlife'] = 'Jours Calage';
$lang->custom->testcase = new stdClass();
$lang->custom->testcase->fields['priList'] = 'Priorité';
$lang->custom->testcase->fields['typeList'] = 'Type';
$lang->custom->testcase->fields['stageList'] = 'Phase';
$lang->custom->testcase->fields['resultList'] = 'Résultat';
$lang->custom->testcase->fields['statusList'] = 'Statut';
$lang->custom->testcase->fields['review'] = 'Validation Requise';
$lang->custom->testtask = new stdClass();
$lang->custom->testtask->fields['priList'] = 'Priorité';
$lang->custom->testtask->fields['statusList'] = 'Statut';
$lang->custom->todo = new stdClass();
$lang->custom->todo->fields['priList'] = 'Priorité';
$lang->custom->todo->fields['typeList'] = 'Type';
$lang->custom->todo->fields['statusList'] = 'Statut';
$lang->custom->user = new stdClass();
$lang->custom->user->fields['roleList'] = 'Rôle';
$lang->custom->user->fields['statusList'] = 'Statut';
$lang->custom->user->fields['contactField'] = 'Contact';
$lang->custom->user->fields['deleted'] = 'Parti';
$lang->custom->system = array('flow', 'working', 'required', 'score');
$lang->custom->block->fields['closed'] = 'Bloc Fermé';
$lang->custom->currentLang = 'Current Language';
$lang->custom->allLang = 'All Languages';
$lang->custom->confirmRestore = 'Voulez-vous réinitialiser ?';
$lang->custom->notice = new stdclass();
$lang->custom->notice->userFieldNotice = 'Control whether the above fields are displayed on the user-related page. Leave it blank to display all.';
$lang->custom->notice->canNotAdd = 'It will be calculated, so customization is not enabled.';
$lang->custom->notice->forceReview = '%s review is required for committers selected.';
$lang->custom->notice->forceNotReview = "%s review is not required for committers selected.";
$lang->custom->notice->longlife = 'Define stalled bugs.';
$lang->custom->notice->invalidNumberKey = 'The key should be =< 255.';
$lang->custom->notice->invalidStringKey = 'The key should be lowercase letters, numbers or underlines.';
$lang->custom->notice->cannotSetTimezone = 'date_default_timezone_set does not exist or is disabled. Timezone cannot be set.';
$lang->custom->notice->noClosedBlock = 'You have no blocks that are closed permanently.';
$lang->custom->notice->required = 'The selected field is required.';
$lang->custom->notice->indexPage['product'] = "ZenTao 8.2+ has Product Home. Do you want to go to Product Home ?";
$lang->custom->notice->indexPage['project'] = "ZenTao 8.2+ has Project Home. Do you want to go to Project Home ?";
$lang->custom->notice->indexPage['qa'] = "ZenTao 8.2+ has QA Homepage. Do you want to go to QA Homepage ?";
$lang->custom->notice->invalidStrlen['ten'] = 'The key should be <= 10 characters.';
$lang->custom->notice->invalidStrlen['twenty'] = 'The key should be <= 20 characters.';
$lang->custom->notice->invalidStrlen['thirty'] = 'The key should be <= 30 characters.';
$lang->custom->notice->invalidStrlen['twoHundred'] = 'The key should be <= 225 characters.';
$lang->custom->storyReview = 'Validation';
$lang->custom->forceReview = 'Validation Requise';
$lang->custom->forceNotReview = 'Aucune Validation Requise';
$lang->custom->reviewList[1] = 'On';
$lang->custom->reviewList[0] = 'Off';
$lang->custom->deletedList[1] = 'Montrer';
$lang->custom->deletedList[0] = 'Cacher';
$lang->custom->workingHours = 'Heures/Jour';
$lang->custom->weekend = 'Weekend';
$lang->custom->weekendList[2] = '2-Jour';
$lang->custom->weekendList[1] = '1-Jour';
$lang->custom->productProject = new stdclass();
$lang->custom->productProject->relation['0_0'] = 'Product - Project';
$lang->custom->productProject->relation['0_1'] = 'Product - Sprint';
$lang->custom->productProject->relation['1_1'] = 'Project - Sprint';
$lang->custom->productProject->notice = 'Sélectionnez le concept qui correspond à votre équipe.';
$lang->custom->workingList['full'] = 'Application Lifecycle Management';
$lang->custom->workingList['onlyTest'] = 'Gestion de la Qualité';
$lang->custom->workingList['onlyStory'] = 'Gestion des Stories';
$lang->custom->workingList['onlyTask'] = 'Gestion des Tâches';
$lang->custom->menuTip = "Cliquez pour montrer/cacher le menu. Déplacez pour changer l'ordre d'affichage.";
$lang->custom->saveFail = 'Echec de la sauvegarde !';
$lang->custom->page = ' Page';
$lang->custom->scoreStatus[1] = 'On';
$lang->custom->scoreStatus[0] = 'Off';
$lang->custom->moduleName['product'] = $lang->productCommon;
$lang->custom->moduleName['productplan'] = 'Plan';
$lang->custom->moduleName['project'] = $lang->projectCommon;
+25
View File
@@ -0,0 +1,25 @@
<?php
$lang->datatable = new stdclass();
$lang->datatable->common = 'Tableaux de Données';
$lang->datatable->width = 'Largeur';
$lang->datatable->show = 'Visible';
$lang->datatable->hide = 'Caché';
$lang->datatable->reset = 'Réinitialiser';
$lang->datatable->custom = 'Personnaliser colonnes';
$lang->datatable->customTip = "Cochez les colonnes à afficher et déplacez les pour les mettre dans l'ordre.";
$lang->datatable->switchToTable = 'Basculer vers le Tableau Commun';
$lang->datatable->switchToDatatable = 'Basculer vers le Tableau Avancé';
$lang->datatable->required = 'Obligatoire';
$lang->datatable->confirmReset = 'Voulez-vous restaurer les paramétres par défaut ?';
$lang->datatable->setGlobal = 'Paramétrage Global';
$lang->datatable->resetGlobal = 'Globale Réinit.';
$lang->datatable->branch = 'Branche';
$lang->datatable->platform = 'Plateforme';
$lang->datatable->showModule = 'Montrer les noms des modules dans la page de listes';
$lang->datatable->showModuleAB = 'Montrer Nom Modules';
$lang->datatable->showModuleList[] = 'N/A';
$lang->datatable->showModuleList['base'] = 'Base Node';
$lang->datatable->showModuleList['end'] = 'End Node';
+32
View File
@@ -0,0 +1,32 @@
<?php
/**
* The dept module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package dept
* @version $Id: en.php 4129 2013-01-18 01:58:14Z wwccss $
* @link https://www.zentao.pm
*/
$lang->dept->common = 'Compartiments';
$lang->dept->manageChild = "Entreprise > Compartiments > Domaines";
$lang->dept->edit = "Editer Compartiment";
$lang->dept->delete = "Supprimer Compartiment";
$lang->dept->parent = "Comp. Parent";
$lang->dept->manager = "Responsable";
$lang->dept->name = "Nom du Compartiment";
$lang->dept->browse = "Consulter Compartiment";
$lang->dept->manage = "Gérer Compartiment";
$lang->dept->updateOrder = "Rang Compartiment";
$lang->dept->add = "Ajout Compartiment";
$lang->dept->grade = "Department Grade";
$lang->dept->order = "Department Order";
$lang->dept->dragAndSort = "Déplacez pour classer";
$lang->dept->confirmDelete = " Confirmez que vous voulez bien supprimer ce Compartiment ?";
$lang->dept->successSave = " Sauvé !";
$lang->dept->error = new stdclass();
$lang->dept->error->hasSons = 'Ce Compartiment possède des domaines. Vous ne pouvez pas le supprimer !';
$lang->dept->error->hasUsers = 'Ce Compartiment possède des utilisateurs. Vous ne pouvez pas le supprimer !';
+125
View File
@@ -0,0 +1,125 @@
<?php
$lang->dev->common = 'Développeur';
$lang->dev->api = 'API';
$lang->dev->db = 'Base de Données';
$lang->dev->editor = 'Editeur';
$lang->dev->dbList = 'Bases de Données';
$lang->dev->moduleList = 'Modules';
$lang->dev->params = 'Paramètres';
$lang->dev->type = 'Type';
$lang->dev->desc = 'Description';
$lang->dev->noParams = 'Pas de Paramètres';
$lang->dev->post = 'Paramètre POST';
$lang->dev->paramRange = 'Rang Paramètre : %s';
$lang->dev->paramDate = 'Format Date : YY-mm-dd, e.g 2019-01-01';
$lang->dev->paramColor = 'Format Couleur : #RGB, e.g. #3da7f5';
$lang->dev->paramMailto = "Comptes utilisateurs. Séparé par des ','.";
$lang->dev->fields = array();
$lang->dev->fields['id'] = 'ID';
$lang->dev->fields['name'] = 'Champ';
$lang->dev->fields['desc'] = 'Description';
$lang->dev->fields['type'] = 'Type';
$lang->dev->fields['length'] = 'Longueur';
$lang->dev->fields['null'] = 'Null';
$lang->dev->tableList = array();
$lang->dev->tableList['action'] = 'Action';
$lang->dev->tableList['bug'] = 'Bug';
$lang->dev->tableList['build'] = 'Build';
$lang->dev->tableList['burn'] = 'Graphe Burndown';
$lang->dev->tableList['case'] = 'CasTest';
$lang->dev->tableList['casestep'] = 'Step';
$lang->dev->tableList['company'] = 'Entreprise';
$lang->dev->tableList['config'] = 'Configuration';
$lang->dev->tableList['custom'] = 'Personnalisation';
$lang->dev->tableList['dept'] = 'Compartiment';
$lang->dev->tableList['doc'] = 'Document';
$lang->dev->tableList['doclib'] = 'Bibliothèque Document';
$lang->dev->tableList['effort'] = 'Effort';
$lang->dev->tableList['extension'] = 'Extension';
$lang->dev->tableList['file'] = 'Fichier';
$lang->dev->tableList['group'] = 'Groupe';
$lang->dev->tableList['grouppriv'] = 'Privilège';
$lang->dev->tableList['history'] = 'Historique';
$lang->dev->tableList['lang'] = 'Langue';
$lang->dev->tableList['module'] = 'Module';
$lang->dev->tableList['product'] = $lang->productCommon;
$lang->dev->tableList['productplan'] = $lang->productCommon . 'Plan';
$lang->dev->tableList['project'] = $lang->projectCommon;
$lang->dev->tableList['projectproduct'] = $lang->projectCommon . $lang->productCommon;
$lang->dev->tableList['projectstory'] = $lang->projectCommon . 'Story';
$lang->dev->tableList['release'] = 'Release';
$lang->dev->tableList['story'] = 'Story';
$lang->dev->tableList['storyspec'] = 'Description Story';
$lang->dev->tableList['task'] = 'Tâche';
$lang->dev->tableList['taskestimate'] = 'Estimés';
$lang->dev->tableList['team'] = 'Equipe';
$lang->dev->tableList['testresult'] = 'Résultats Test';
$lang->dev->tableList['testrun'] = 'Exécution Test';
$lang->dev->tableList['testtask'] = 'Campagne';
$lang->dev->tableList['todo'] = 'Agenda';
$lang->dev->tableList['user'] = 'User';
$lang->dev->tableList['usercontact'] = 'Contact Utilisateur';
$lang->dev->tableList['usergroup'] = 'User Group';
$lang->dev->tableList['userquery'] = 'User Query';
$lang->dev->tableList['usertpl'] = 'User Template';
$lang->dev->tableList['admin'] = 'Admin';
$lang->dev->tableList['api'] = 'API';
$lang->dev->tableList['backup'] = 'Sauvegarde';
$lang->dev->tableList['common'] = 'Commun';
$lang->dev->tableList['convert'] = 'Convert';
$lang->dev->tableList['dev'] = 'Dévelop';
$lang->dev->tableList['editor'] = 'Editeur';
$lang->dev->tableList['git'] = 'GIT';
$lang->dev->tableList['index'] = 'Accueil';
$lang->dev->tableList['install'] = 'Installer';
$lang->dev->tableList['mail'] = 'Email';
$lang->dev->tableList['misc'] = 'Divers';
$lang->dev->tableList['my'] = 'Dashboard';
$lang->dev->tableList['qa'] = 'QA';
$lang->dev->tableList['report'] = 'Rapport';
$lang->dev->tableList['search'] = 'Recherche';
$lang->dev->tableList['sso'] = 'SSO';
$lang->dev->tableList['svn'] = 'SVN';
$lang->dev->tableList['testcase'] = 'CasTest';
$lang->dev->tableList['testreport'] = 'Rapport Test';
$lang->dev->tableList['testsuite'] = 'Cahier Recette';
$lang->dev->tableList['tree'] = 'Arborescence';
$lang->dev->tableList['upgrade'] = 'Update';
$lang->dev->tableList['cron'] = 'Cron';
$lang->dev->tableList['datatable'] = 'Tableau Données';
$lang->dev->tableList['block'] = 'Bloc';
$lang->dev->tableList['branch'] = 'Branche';
$lang->dev->tableList['doccontent'] = 'Contenu Doc';
$lang->dev->tableList['storystage'] = 'Phase Story Phase';
$lang->dev->tableList['translate'] = 'Traduction';
$lang->dev->tableList['tutorial'] = 'Tutoriel';
$lang->dev->tableList['suitecase'] = 'Cas Cahier Recette';
$lang->dev->tableList['score'] = 'Score';
$lang->dev->tableList['entry'] = 'Application';
$lang->dev->tableList['webhook'] = 'WebHook';
$lang->dev->tableList['log'] = 'Log';
$lang->dev->tableList['message'] = 'Message';
$lang->dev->tableList['notify'] = 'Notification';
$lang->dev->tableList['userview'] = 'Droits Utilisateur';
$lang->dev->tableList['im_chatuser'] = 'Utilisateurs Client';
$lang->dev->tableList['im_message'] = 'Messages Client';
$lang->dev->tableList['translation'] = 'Traduction';
$lang->dev->tableList['im_messagestatus'] = 'Statut Messages Client';
$lang->dev->groupList['my'] = 'Dashboard';
$lang->dev->groupList['product'] = $lang->productCommon;
$lang->dev->groupList['project'] = $lang->projectCommon;
$lang->dev->groupList['qa'] = 'QA';
$lang->dev->groupList['doc'] = 'Doc';
$lang->dev->groupList['report'] = 'Rapport';
$lang->dev->groupList['company'] = 'Entreprise';
$lang->dev->groupList['repo'] = 'Code';
$lang->dev->groupList['api'] = 'API';
$lang->dev->groupList['message'] = 'Message';
$lang->dev->endGroupList['admin'] = 'Admin';
$lang->dev->endGroupList['system'] = 'Système';
$lang->dev->endGroupList['other'] = 'Autres';
+1 -1
View File
@@ -41,7 +41,7 @@ class devModel extends model
{
if(isset($this->config->dev->tableMap[$module])) $aliasModule = $this->config->dev->tableMap[$module];
if(strpos($aliasModule, '-') !== false) list($aliasModule, $subLang) = explode('-', $aliasModule);
if(strpos($module, 'im_') === false) $this->app->loadLang($aliasModule ? $aliasModule : $module);
$this->app->loadLang($aliasModule ? $aliasModule : $module);
}
catch(PDOException $e)
{
+2
View File
@@ -78,6 +78,8 @@ $lang->doc->editType = 'Bearbeiten';
$lang->doc->deleteType = 'Löschen';
$lang->doc->addType = 'Hinzufügen';
$lang->doc->childType = 'Child';
$lang->doc->editType = 'Manage Category';
$lang->doc->deleteType = 'Delete Category';
$lang->doc->collect = 'Favorit hinzufügen';
$lang->doc->cancelCollection = 'Favorit entfernen';
$lang->doc->deleteFile = 'Delete File';
+3 -1
View File
@@ -52,7 +52,7 @@ $lang->doc->retrack = 'Retrack';
$lang->doc->moduleDoc = 'By Module';
$lang->doc->searchDoc = 'Search';
$lang->doc->fast = 'Qucik Entry';
$lang->doc->fast = 'Quick Entry';
$lang->doc->allDoc = 'All Documents';
$lang->doc->openedByMe = 'My';
$lang->doc->orderByOpen = 'Recent Added';
@@ -78,6 +78,8 @@ $lang->doc->editType = 'Edit';
$lang->doc->deleteType = 'Delete';
$lang->doc->addType = 'Add';
$lang->doc->childType = 'Categories';
$lang->doc->editType = 'Manage Category';
$lang->doc->deleteType = 'Delete Category';
$lang->doc->collect = 'Add Favorite';
$lang->doc->cancelCollection = 'Remove Favorite';
$lang->doc->deleteFile = 'Delete File';
+221
View File
@@ -0,0 +1,221 @@
<?php
/**
* The doc module english file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package doc
* @version $Id: en.php 824 2010-05-02 15:32:06Z wwccss $
* @link https://www.zentao.pm
*/
/* Fields. */
$lang->doc->common = 'Gestion Documentaire';
$lang->doc->id = 'ID';
$lang->doc->product = $lang->productCommon;
$lang->doc->project = $lang->projectCommon;
$lang->doc->lib = 'Bibliothèque';
$lang->doc->module = 'Catégorie';
$lang->doc->title = 'Nom';
$lang->doc->digest = 'Résumé';
$lang->doc->comment = 'Commentaire';
$lang->doc->type = 'Type';
$lang->doc->content = 'Texte';
$lang->doc->keywords = 'Tags';
$lang->doc->url = 'URL';
$lang->doc->files = 'Fichiers';
$lang->doc->addedBy = 'Auteur';
$lang->doc->addedDate = 'Ajouté le';
$lang->doc->editedBy = 'Màj par';
$lang->doc->editedDate = 'Màj le';
$lang->doc->version = 'Version';
$lang->doc->basicInfo = 'Infos de Base';
$lang->doc->deleted = 'Supprimé';
$lang->doc->fileObject = 'Objet Dépendant';
$lang->doc->whiteList = 'Liste Blanche';
$lang->doc->contentType = 'Format';
$lang->doc->separator = "<i class='icon-angle-right'></i>";
$lang->doc->fileTitle = 'Nom du Fichier';
$lang->doc->filePath = 'Chemin Fichier';
$lang->doc->extension = 'Extension';
$lang->doc->size = 'Taille';
$lang->doc->download = 'Téléchargement';
$lang->doc->acl = 'Right';
$lang->doc->fileName = 'Fichiers';
$lang->doc->groups = 'Groupes';
$lang->doc->users = 'Utilisateurs';
$lang->doc->item = ' Objets';
$lang->doc->num = 'Documents';
$lang->doc->searchResult = 'Résultat de Recherche';
$lang->doc->fullscreen = 'Plein Ecran';
$lang->doc->retrack = 'Réduire';
$lang->doc->moduleDoc = 'Par Module';
$lang->doc->searchDoc = 'Rechercher';
$lang->doc->fast = 'Saisie rapide';
$lang->doc->allDoc = 'Tous les Documents';
$lang->doc->openedByMe = 'Mes';
$lang->doc->orderByOpen = 'Récemment Ajoutés';
$lang->doc->orderByEdit = 'Récemment Mis à Jour';
$lang->doc->orderByVisit = 'Dernière Visite';
$lang->doc->todayEdited = "Mis à Jour Aujourd'hui";
$lang->doc->pastEdited = 'Total Mis à Jour';
$lang->doc->myDoc = 'Mes Documents';
$lang->doc->myCollection = 'Mes Favoris';
/* 方法列表。*/
$lang->doc->index = 'Accueil Documents';
$lang->doc->create = 'Ajouter Document';
$lang->doc->edit = 'Editer Document';
$lang->doc->delete = 'Supprimer Document';
$lang->doc->browse = 'Liste Documents';
$lang->doc->view = 'Détail Document';
$lang->doc->diff = 'Diff';
$lang->doc->diffAction = 'Document Diff';
$lang->doc->sort = 'Rang Document';
$lang->doc->manageType = 'Gérer Catégories';
$lang->doc->editType = 'Editer';
$lang->doc->deleteType = 'Supprimer';
$lang->doc->addType = 'Ajouter';
$lang->doc->childType = 'Catégories';
$lang->doc->editType = 'Manage Category';
$lang->doc->deleteType = 'Delete Category';
$lang->doc->collect = 'Ajouter aux Favoris';
$lang->doc->cancelCollection = 'Retirer des Favoris';
$lang->doc->deleteFile = 'Supprimer Fichier';
$lang->doc->libName = 'Bibliothèque de Documents';
$lang->doc->libType = 'Catégorie';
$lang->doc->custom = 'Personnaliser Bibliothèque de Documents';
$lang->doc->customAB = 'Person. Bib Doc';
$lang->doc->createLib = 'Créer une Bibliothèque';
$lang->doc->allLibs = 'Liste des Bibliothèque';
$lang->doc->objectLibs = "{$lang->productCommon}/{$lang->projectCommon} Bibliothèque";
$lang->doc->showFiles = 'Pièces Jointes';
$lang->doc->editLib = 'Editer Bibliothèque';
$lang->doc->deleteLib = 'Supprimer Bibliothèque';
$lang->doc->fixedMenu = 'Coller au Menu';
$lang->doc->removeMenu = 'Décoller du Menu';
$lang->doc->search = 'Rechercher';
/* 查询条件列表 */
$lang->doc->allProduct = 'Tous les ' . $lang->productCommon . 's';
$lang->doc->allProject = 'Tous les ' . $lang->projectCommon . 's';
$lang->doc->libTypeList['product'] = $lang->productCommon . ' Library';
$lang->doc->libTypeList['project'] = 'Bibliothèque ' . $lang->projectCommon;
$lang->doc->libTypeList['custom'] = 'Bib. Personnalisée';
$lang->doc->libIconList['product'] = 'icon-cube';
$lang->doc->libIconList['project'] = 'icon-stack';
$lang->doc->libIconList['custom'] = 'icon-folder-o';
$lang->doc->systemLibs['product'] = $lang->productCommon;
$lang->doc->systemLibs['project'] = $lang->projectCommon;
global $config;
if($config->global->flow == 'onlyStory' or $config->global->flow == 'onlyTest') unset($lang->doc->systemLibs['project']);
if($config->global->flow == 'onlyStory' or $config->global->flow == 'onlyTest') unset($lang->doc->libTypeList['project']);
if($config->global->flow == 'onlyTask') unset($lang->doc->systemLibs['product']);
if($config->global->flow == 'onlyTask') unset($lang->doc->libTypeList['product']);
$lang->doc->aclList['open'] = 'Public';
$lang->doc->aclList['custom'] = 'Person.';
$lang->doc->aclList['private'] = 'Privé';
$lang->doc->typeList['html'] = 'Html';
$lang->doc->typeList['markdown'] = 'Markdown';
$lang->doc->typeList['url'] = 'URL';
$lang->doc->typeList['word'] = 'Word';
$lang->doc->typeList['ppt'] = 'PPT';
$lang->doc->typeList['excel'] = 'Excel';
$lang->doc->types['text'] = 'Text';
$lang->doc->types['url'] = 'URL';
$lang->doc->contentTypeList['html'] = 'HTML';
$lang->doc->contentTypeList['markdown'] = 'MarkDown';
$lang->doc->browseType = 'Catégorie';
$lang->doc->browseTypeList['list'] = 'Liste';
$lang->doc->browseTypeList['grid'] = 'Vignettes';
$lang->doc->fastMenuList['byediteddate'] = 'Récemment Mis à Jour';
//$lang->doc->fastMenuList['visiteddate'] = 'Recently Visited';
$lang->doc->fastMenuList['openedbyme'] = 'Mes Documents';
$lang->doc->fastMenuList['collectedbyme'] = 'Mes Favoris';
$lang->doc->fastMenuIconList['byediteddate'] = 'icon-folder-upload';
//$lang->doc->fastMenuIconList['visiteddate'] = 'icon-folder-move';
$lang->doc->fastMenuIconList['openedbyme'] = 'icon-folder-account';
$lang->doc->fastMenuIconList['collectedbyme'] = 'icon-folder-star';
$lang->doc->customObjectLibs['files'] = 'Montrer Bibliothèque des Pièces jointes';
$lang->doc->customObjectLibs['customFiles'] = 'Montrer Library Personnelle';
$lang->doc->orderLib = 'Paramétrage Rang';
$lang->doc->customShowLibs = 'Paramétrage Affichage';
$lang->doc->customShowLibsList['zero'] = 'Montrer Bibliothèques Vides';
$lang->doc->customShowLibsList['children'] = 'Montrer sous-catégorie de Documents';
$lang->doc->customShowLibsList['unclosed'] = "Montrer {$lang->projectCommon}s actifs seulement";
$lang->doc->confirmDelete = "Voulez-vous supprimer ce document ?";
$lang->doc->confirmDeleteLib = "Voulez-vous supprimer cette Bibliothèque ?";
$lang->doc->errorEditSystemDoc = "Vous n'avez pas besoin de changer de système de Bibliothèque.";
$lang->doc->errorEmptyProduct = "Aucun {$lang->productCommon}. Il ne peut pas être créé.";
$lang->doc->errorEmptyProject = "Aucun {$lang->projectCommon}. Il ne peut pas être créé.";
$lang->doc->errorMainSysLib = "Cette Bibliothèque ne peut pas être supprimée.";
$lang->doc->accessDenied = "Access is denied !";
$lang->doc->versionNotFount = "N'existe pas dans ce build.";
$lang->doc->noDoc = 'Aucun documents. ';
$lang->doc->cannotCreateOffice = 'Désolé, %s peut seulement être créé dans ZenTao Enterprise. Contactez Zentao à renee@easysoft.ltd pour essayer ZenTao Enterprise.';
$lang->doc->noSearchedDoc = 'Aucun documents trouvé.';
$lang->doc->noEditedDoc = "Vous n'avez pas mis à jour de documents.";
$lang->doc->noOpenedDoc = "Vous n'avez pas ajouté de documents.";
$lang->doc->noCollectedDoc = "Vous avez aucun document dans vos favoris.";
$lang->doc->noticeAcl['lib']['product']['default'] = 'Les utilisateurs qui ont accès au Product peuvent y accéder.';
$lang->doc->noticeAcl['lib']['product']['custom'] = 'Les utilisateurs qui ont accès au Product ou les utilisateurs de la Liste Blanche peuvent y accéder.';
$lang->doc->noticeAcl['lib']['project']['default'] = 'Les utilisateurs qui ont accès au Projet peuvent y accéder.';
$lang->doc->noticeAcl['lib']['project']['custom'] = 'Les utilisateurs qui ont accès au Projet ou les utilisateurs de la Liste Blanche peuvent y accéder.';
$lang->doc->noticeAcl['lib']['custom']['open'] = 'Tous les utilisateurs peuvent y accéder.';
$lang->doc->noticeAcl['lib']['custom']['custom'] = 'Les utilisateurs de la Liste Blanche peuvent y accéder.';
$lang->doc->noticeAcl['lib']['custom']['private'] = 'Seulement le créateur de la Bibliothèque peut y accéder.';
$lang->doc->noticeAcl['doc']['open'] = 'Les utilisateurs qui ont accès à la Bibliothèque à laquelle le document appartient peuvent y accéder.';
$lang->doc->noticeAcl['doc']['custom'] = 'Les utilisateurs de la Liste Blanche peuvent y accéder.';
$lang->doc->noticeAcl['doc']['private'] = 'Seulement celui qui a ajouté le document peut y accéder.';
$lang->doc->placeholder = new stdclass();
$lang->doc->placeholder->url = 'URL';
$lang->doclib = new stdclass();
$lang->doclib->name = 'Nom';
$lang->doclib->control = "Contrôle d'Accès";
$lang->doclib->group = 'Groupe';
$lang->doclib->user = 'Utilisateur';
$lang->doclib->files = 'Pièces Jointes';
$lang->doclib->all = 'Toutes les Libraries';
$lang->doclib->select = 'Sélect.';
$lang->doclib->project = 'Bibliothèque ' . $lang->projectCommon;
$lang->doclib->product = $lang->productCommon . ' Library';
$lang->doclib->aclListA['default'] = 'Défaut';
$lang->doclib->aclListA['custom'] = 'Person.';
$lang->doclib->aclListB['open'] = 'Public';
$lang->doclib->aclListB['custom'] = 'Person.';
$lang->doclib->aclListB['private'] = 'Privée';
$lang->doclib->create['product'] = 'Créer ' . $lang->productCommon . ' Library';
$lang->doclib->create['project'] = 'Créer ' . 'Bibliothèque ' . $lang->projectCommon;
$lang->doclib->create['custom'] = 'Créer Bibliothèque Personnelle';
$lang->doclib->main['product'] = 'Bibliothèque Principale';
$lang->doclib->main['project'] = 'Bibliothèque Principale';
$lang->doclib->tabList['product'] = $lang->productCommon;
$lang->doclib->tabList['project'] = $lang->projectCommon;
$lang->doclib->tabList['custom'] = 'Personnelle';
$lang->doclib->nameList['custom'] = 'Nom personnalisé';
+2
View File
@@ -78,6 +78,8 @@ $lang->doc->editType = '编辑分类';
$lang->doc->deleteType = '删除分类';
$lang->doc->addType = '增加分类';
$lang->doc->childType = '子分类';
$lang->doc->editType = '维护分类';
$lang->doc->deleteType = '删除分类';
$lang->doc->collect = '收藏';
$lang->doc->cancelCollection = '取消收藏';
$lang->doc->deleteFile = '删除附件';
+2
View File
@@ -78,6 +78,8 @@ $lang->doc->editType = '編輯分類';
$lang->doc->deleteType = '刪除分類';
$lang->doc->addType = '增加分類';
$lang->doc->childType = '子分類';
$lang->doc->editType = '維護分類';
$lang->doc->deleteType = '刪除分類';
$lang->doc->collect = '收藏';
$lang->doc->cancelCollection = '取消收藏';
$lang->doc->deleteFile = '刪除附件';
+5 -1
View File
@@ -364,7 +364,11 @@ class docModel extends model
elseif($browseType == "bymodule")
{
$modules = 0;
if($moduleID) $modules = (strpos($this->config->doc->custom->showLibs, 'children') === false) ? array($moduleID => $moduleID) : $this->loadModel('tree')->getAllChildId($moduleID);
if($moduleID)
{
$modules = array($moduleID => $moduleID);
if(strpos($this->config->doc->custom->showLibs, 'children') === false) $modules = $this->loadModel('tree')->getAllChildId($moduleID);
}
$docs = $this->getDocs($libID, $modules, $sort, $pager);
}
elseif($browseType == "bygrid")
+9
View File
@@ -11,6 +11,15 @@
*/
class editor extends control
{
/**
* Construct
*
* @param string $moduleName
* @param string $methodName
* @param string $appName
* @access public
* @return void
*/
public function __construct($moduleName = '', $methodName = '', $appName = '')
{
parent::__construct($moduleName, $methodName, $appName);
+76
View File
@@ -0,0 +1,76 @@
<?php
$lang->editor->common = 'Editeur';
$lang->editor->api = 'API';
$lang->editor->index = 'Accueil';
$lang->editor->newMethod = 'New Méthode';
$lang->editor->extend = 'Extension';
$lang->editor->api = 'API';
$lang->editor->newLang = 'New Language';
$lang->editor->newConfig = 'New Config';
$lang->editor->newHook = 'New Hook';
$lang->editor->newExtend = 'New Extension';
$lang->editor->newPage = 'New Page';
$lang->editor->override = 'Ecraser';
$lang->editor->edit = 'Editer Extension';
$lang->editor->save = 'Sauver Page';
$lang->editor->delete = 'Supprimer Page';
$lang->editor->moduleList = 'Module';
$lang->editor->filePath = "Extension:";
$lang->editor->sourceFile = 'Fichier Source :';
$lang->editor->fileName = "Nom Fichier :";
$lang->editor->isOverride = "Override Duplicated File";
$lang->editor->exampleHook = "(e.g. ***.html.hook.php)";
$lang->editor->exampleJs = "(e.g. ***.js)";
$lang->editor->exampleCss = "(e.g. ***.css)";
$lang->editor->examplePHP = "(e.g. ***.php)";
$lang->editor->pageName = "Nom Page :";
$lang->editor->deleteConfirm = 'Voulez-vous le supprimer ?';
$lang->editor->extendConfirm = 'Voulez-vous utiliser le code original ?';
$lang->editor->repeatFile = 'Doublon';
$lang->editor->repeatPage = "Cette page existe. Voulez-vous l'écraser ?";
$lang->editor->noticeOkFile = 'Pour des raisons de sécurité, votre compte administrateur doit être confirmé. \n Please login ZenTao server and create %s File.\n Note:\n 1. File is blank.\n 2. If the file existed, delete it and then create a new one.';
$lang->editor->editFileError = 'Vous pouvez seulement modifier les fichiers ZenTao !';
$lang->editor->notWritable = "Non inscriptible. Permission requise. Essayez chmod 777 -R ";
$lang->editor->notDelete = 'Ne peut pas être supprimé. Vérifiez les permissions !';
$lang->editor->emptyFileName = 'Entrez un nom de fichier !';
$lang->editor->onlyLocalVisit = "Cette fonctionnalité ne fonctionne que pour une IP 127.0.0.1. <a href='https://api.zentao.pm/goto.php?item=howtodevelop&from=en' target='_blank'>Aide</a>";
$lang->editor->translate['config.php'] = 'config';
$lang->editor->translate['control.php'] = 'contrôle';
$lang->editor->translate['model.php'] = 'modèle';
$lang->editor->modules['action'] = 'System Log';
$lang->editor->modules['admin'] = 'Admin';
$lang->editor->modules['api'] = 'API';
$lang->editor->modules['bug'] = 'Bug';
$lang->editor->modules['build'] = 'Build';
$lang->editor->modules['common'] = 'Module Commun';
$lang->editor->modules['company'] = 'Entreprise';
$lang->editor->modules['convert'] = 'Convertir';
$lang->editor->modules['dept'] = 'Compartiment';
$lang->editor->modules['doc'] = 'Doc';
$lang->editor->modules['extension'] = 'Extension';
$lang->editor->modules['file'] = 'Fichier';
$lang->editor->modules['group'] = 'Groupe';
$lang->editor->modules['index'] = 'Accueil';
$lang->editor->modules['install'] = 'Installer';
$lang->editor->modules['misc'] = 'Divers';
$lang->editor->modules['my'] = 'Dashboard';
$lang->editor->modules['product'] = $lang->productCommon;
$lang->editor->modules['productplan'] = 'Plan';
$lang->editor->modules['project'] = $lang->projectCommon;
$lang->editor->modules['qa'] = 'QA';
$lang->editor->modules['release'] = 'Release';
$lang->editor->modules['report'] = 'Rapport';
$lang->editor->modules['search'] = 'Recherche';
$lang->editor->modules['story'] = 'Story';
$lang->editor->modules['task'] = 'Tâche';
$lang->editor->modules['testcase'] = 'CasTest';
$lang->editor->modules['testtask'] = 'Recette';
$lang->editor->modules['todo'] = 'Agenda';
$lang->editor->modules['tree'] = 'Module Maintenance';
$lang->editor->modules['upgrade'] = 'Upgrade';
$lang->editor->modules['user'] = 'User';
+5
View File
@@ -365,6 +365,11 @@ class editorModel extends model
*/
public function save($filePath)
{
$statusFile = $this->loadModel('upgrade')->checkSafeFile();
if($statusFile) die(js::alert(sprintf($this->lang->editor->noticeOkFile, str_replace('\\', '/', $statusFile))));
if(strpos(strtolower($filePath), strtolower($this->app->getBasePath())) !== 0) die(js::alert($this->lang->editor->editFileError));
$fileContent = $this->post->fileContent;
$evils = array('eval', 'exec', 'passthru', 'proc_open', 'shell_exec', 'system', '$$', 'include', 'require', 'assert');
$gibbedEvils = array('e v a l', 'e x e c', ' p a s s t h r u', ' p r o c _ o p e n', 's h e l l _ e x e c', 's y s t e m', '$ $', 'i n c l u d e', 'r e q u i r e', 'a s s e r t');
+57
View File
@@ -0,0 +1,57 @@
<?php
$lang->entry->common = 'Application';
$lang->entry->list = 'Applications';
$lang->entry->api = 'API';
$lang->entry->webhook = 'Webhook';
$lang->entry->log = 'Log';
$lang->entry->setting = 'Paramétrages';
$lang->entry->browse = 'Voir';
$lang->entry->create = 'Ajouter Application';
$lang->entry->edit = 'Editer';
$lang->entry->delete = 'Supprimer';
$lang->entry->createKey = 'Regénérer la Clé Secrète';
$lang->entry->id = 'ID';
$lang->entry->name = 'Nom';
$lang->entry->account = 'Compte';
$lang->entry->code = 'Code';
$lang->entry->freePasswd = 'Free Password Login';
$lang->entry->key = 'Clé';
$lang->entry->ip = 'IP';
$lang->entry->desc = 'Description';
$lang->entry->createdBy = 'Créé par';
$lang->entry->createdDate = 'Créé le';
$lang->entry->editedby = 'Edité par';
$lang->entry->editedDate = 'Edité le';
$lang->entry->date = 'Requesting Time';
$lang->entry->url = 'Requesting URL';
$lang->entry->confirmDelete = 'Voulez-vous supprimer cette entrée ?';
$lang->entry->help = 'Aide';
$lang->entry->notify = 'Notification';
$lang->entry->helpLink = 'https://www.zentao.pm/book/zentaomanual/scrum-tool-open-source-integrate-third-party-application-221.html';
$lang->entry->notifyLink = 'https://www.zentao.pm/book/zentaopmshelp/301.html';
$lang->entry->note = new stdClass();
$lang->entry->note->name = 'Nom';
$lang->entry->note->code = 'Code doit être composé de lettres et de chiffres';
$lang->entry->note->ip = "Utilisez la virgule pour séparer les IPs. IP segment est supporté, ex: 192.168.1.*";
$lang->entry->note->allIP = 'Toutes IPs';
$lang->entry->note->account = 'Compte Application';
$lang->entry->freePasswdList[1] = 'On';
$lang->entry->freePasswdList[0] = 'Off';
$lang->entry->errmsg['PARAM_CODE_MISSING'] = 'Parameter code manquant.';
$lang->entry->errmsg['PARAM_TOKEN_MISSING'] = 'Parameter token manquante.';
$lang->entry->errmsg['SESSION_CODE_MISSING'] = 'Session code manquant.';
$lang->entry->errmsg['EMPTY_KEY'] = 'Clé Secrète manquante.';
$lang->entry->errmsg['INVALID_TOKEN'] = 'Invalide token.';
$lang->entry->errmsg['SESSION_VERIFY_FAILED'] = 'Echec de vérification de Session.';
$lang->entry->errmsg['IP_DENIED'] = 'IP interdite.';
$lang->entry->errmsg['ACCOUNT_UNBOUND'] = 'Compte non lié.';
$lang->entry->errmsg['INVALID_ACCOUNT'] = 'Compte Invalide.';
$lang->entry->errmsg['EMPTY_ENTRY'] = 'Application innexistante.';
$lang->entry->errmsg['CALLED_TIME'] = 'Token expiré';
+122
View File
@@ -0,0 +1,122 @@
<?php
/**
* The extension module en file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package extension
* @version $Id$
* @link https://www.zentao.pm
*/
$lang->extension->common = 'Extension';
$lang->extension->browse = 'Extensions';
$lang->extension->install = 'Installer Extension';
$lang->extension->installAuto = 'Auto Installation';
$lang->extension->installForce = 'Forcer Installation';
$lang->extension->uninstall = 'Désinstaller';
$lang->extension->uninstallAction = 'Désinstaller Extension';
$lang->extension->activate = 'Activer';
$lang->extension->activateAction = 'Activer Extension';
$lang->extension->deactivate = 'Désactiver';
$lang->extension->deactivateAction = 'Désactiver Extension';
$lang->extension->obtain = 'Obtenir Extension';
$lang->extension->view = 'Détail';
$lang->extension->downloadAB = 'Téléchargement';
$lang->extension->upload = 'Installation Locale';
$lang->extension->erase = 'Effacer';
$lang->extension->eraseAction = 'Effacer Extension';
$lang->extension->upgrade = 'Upgrade Extension';
$lang->extension->agreeLicense = 'Accepter le contrat de license.';
$lang->extension->structure = 'Structure Extension';
$lang->extension->structureAction = 'Extension Structure';
$lang->extension->installed = 'Installée';
$lang->extension->deactivated = 'Désctivatée';
$lang->extension->available = 'Téléchargée';
$lang->extension->name = 'Nom Extension';
$lang->extension->code = 'Code';
$lang->extension->desc = 'Description';
$lang->extension->type = 'Type';
$lang->extension->dirs = 'Répertoire Installation';
$lang->extension->files = 'Fichiers Installation';
$lang->extension->status = 'Statut';
$lang->extension->version = 'Version';
$lang->extension->latest = '<small>Dernière:<strong><a href="%s" target="_blank" class="extension">%s</a></strong>,a besoin de zentao <a href="https://api.zentao.pm/goto.php?item=latest" target="_blank"><strong>%s</strong></small>';
$lang->extension->author = 'Auteur';
$lang->extension->license = 'License';
$lang->extension->site = 'Website';
$lang->extension->downloads = 'Téléchargements';
$lang->extension->compatible = 'Compatibilité';
$lang->extension->grade = 'Score';
$lang->extension->depends = 'Dépendence';
$lang->extension->expireDate = 'Expire le';
$lang->extension->zentaoCompatible = 'Version Compatible';
$lang->extension->installedTime = 'Date Installation';
$lang->extension->publicList[0] = 'Manuel';
$lang->extension->publicList[1] = 'Auto';
$lang->extension->compatibleList[0] = 'Inconnu';
$lang->extension->compatibleList[1] = 'Compatible';
$lang->extension->obtainOfficial[0] = 'Third-party';
$lang->extension->obtainOfficial[1] = 'Officiel';
$lang->extension->byDownloads = 'Téléchargements';
$lang->extension->byAddedTime = 'Derniers Ajouts';
$lang->extension->byUpdatedTime = 'Dernier Update';
$lang->extension->bySearch = 'Rechercher';
$lang->extension->byCategory = 'Category';
$lang->extension->installFailed = '%s a choué. Erreur:';
$lang->extension->uninstallFailed = 'Echec de désinstallation. Erreur:';
$lang->extension->confirmUninstall = 'La désinstallation va supprimer ou changer la base de données. Voulez-vous la désinstaller malgré tout ?';
$lang->extension->installFinished = "Bravo ! L'extension est %sée !";
$lang->extension->refreshPage = 'Rafraichir';
$lang->extension->uninstallFinished = 'Cette extension est désinstallée.';
$lang->extension->deactivateFinished = 'Cette extension est désactivée.';
$lang->extension->activateFinished = 'Cette extension est active.';
$lang->extension->eraseFinished = 'Cette extension est supprimée.';
$lang->extension->unremovedFiles = 'Fichier ou répertoire ne peuvent pas être supprimés. Vous devez le faire manuellement';
$lang->extension->executeCommands = '<h3>Executez les lignes de commande ci-dessous pour résoudre le problème :</h3>';
$lang->extension->successDownloadedPackage = 'Cette extension est téléchargée !';
$lang->extension->successCopiedFiles = 'Fichier copié !';
$lang->extension->successInstallDB = 'Base de données installée !';
$lang->extension->viewInstalled = 'Extensions Installées';
$lang->extension->viewAvailable = 'Extensions Possibles';
$lang->extension->viewDeactivated = 'Extensions Désactivées';
$lang->extension->backDBFile = 'Les données de cette extension ont été sauvegardées dans %s!';
$lang->extension->noticeOkFile = '<h5>Pour des raisons de sécurité, votre compte Administrateur doit être confirmé.</h5>
<h5>Connectez-vous à votre serveur ZenTao et créez %s.</h5>
<p>Note</p>
<ol>
<li>Le fichier que vous allez créer doit être vide.</li>
<li>Si le fichier existe déjà, supprimez-le et créez-le à nouveau.</li>
</ol>';
$lang->extension->upgradeExt = 'Upgrader';
$lang->extension->installExt = 'Installer';
$lang->extension->upgradeVersion = '(Upgrade %s vers %s.)';
$lang->extension->waring = 'Attention !';
$lang->extension->errorOccurs = 'Erreur:';
$lang->extension->errorGetModules = 'Get Extension Category from www.zentao.pm failed. It could be network error. Plase check your network and refresh it.';
$lang->extension->errorGetExtensions = 'Get Extensions from www.zentao.pm failed. It could be network error. Please go to <a href="https://www.zentao.pm/extension/" target="_blank" class="alert-link">www.zentao.pm</a> and download the extension, and then upload it to install.';
$lang->extension->errorDownloadPathNotFound = 'Le répertoire de téléchargement <strong>%s</strong> semble inconnu.<br /> Please run <strong>mkdir -p %s</strong> in Linux to fix it.';
$lang->extension->errorDownloadPathNotWritable = 'Le chemin de téléchargement Extensions <strong>%s</strong> est non inscriptible. <br />Please run <strong>sudo chmod 777 %s</strong> in Linux to fix it.';
$lang->extension->errorPackageFileExists = '<strong>%s</strong> existe déjà dans le répertoire de téléchargement.<h5> Please %s it again, <a href="%s" class="alert-link">CLICK HERE</a></h5>';
$lang->extension->errorDownloadFailed = 'Echec au téléchargement. Réessayez. If still not OK, try to download it manually and upload it to install.';
$lang->extension->errorMd5Checking = 'Fichier Incomplet. Téléchargez-le à nouveau. If still not OK, try to download it manually and upload it to install.';
$lang->extension->errorCheckIncompatible = 'Incompatible avec votre ZenTao. It may not be used %s later.<h5>You can choose to <a href="%s" class="btn btn-sm">force%s</a> or <a href="#" onclick=parent.location.href="%s" class="btn btn-sm">cancel</a></h5>';
$lang->extension->errorFileConflicted = '<br />%s <h5> est en conflit avec d\'autres. Choose <a href="%s" class="btn btn-sm">Override</a> or <a href="#" onclick=parent.location.href="%s" class="btn btn-sm">Cancel</a></h5>';
$lang->extension->errorPackageNotFound = '<strong>%s </strong> non trouvé. Le téléchargement a peut-être échoué. Téléchargez à nouveau.';
$lang->extension->errorTargetPathNotWritable = '<strong>%s </strong> non inscriptible.';
$lang->extension->errorTargetPathNotExists = '<strong>%s </strong> non trouvé.';
$lang->extension->errorInstallDB = 'Database report execution failed. Erreur: %s';
$lang->extension->errorConflicts = 'Conflit avec “%s”!';
$lang->extension->errorDepends = 'Dependent extension has not been installed or the version is incorrect:<br /><br /> %s';
$lang->extension->errorIncompatible = 'Incompatible avec votre ZenTao.';
$lang->extension->errorUninstallDepends = '“%s” is dependent on ts extension. Please do not install it.';
+60
View File
@@ -0,0 +1,60 @@
<?php
/**
* The file module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package file
* @version $Id: en.php 4129 2013-01-18 01:58:14Z wwccss $
* @link https://www.zentao.pm
*/
$lang->file = new stdclass();
$lang->file->common = 'Fichier';
$lang->file->uploadImages = 'Charger Images en Lot';
$lang->file->download = 'Télécharger Fichiers';
$lang->file->uploadDate = 'Chargé le';
$lang->file->edit = 'Renommer';
$lang->file->inputFileName = 'Entrez Nom Fichier';
$lang->file->delete = 'Supprimer Fichier';
$lang->file->label = 'Label :';
$lang->file->maxUploadSize = "<span class='text-red'>%s</span>";
$lang->file->applyTemplate = "Appliquer Modèle";
$lang->file->tplTitle = "Nom Modèle";
$lang->file->tplTitleAB = "Modèles";
$lang->file->setPublic = "Rendre Public le Modèle";
$lang->file->exportFields = "Champs";
$lang->file->exportRange = "Données";
$lang->file->defaultTPL = "Défaut";
$lang->file->setExportTPL = "Paramétrages";
$lang->file->preview = "Apperçu";
$lang->file->addFile = 'Ajouter';
$lang->file->beginUpload = 'Clic pour Charger';
$lang->file->uploadSuccess = 'Chargé !';
$lang->file->pathname = 'Nom Chemin';
$lang->file->title = 'Titre';
$lang->file->fileName = 'Nom Fichier';
$lang->file->untitled = 'Sans Titre';
$lang->file->extension = 'Format';
$lang->file->size = 'Taille';
$lang->file->encoding = 'Encodage';
$lang->file->addedBy = 'Ajouté par';
$lang->file->addedDate = 'Ajouté le';
$lang->file->downloads = 'Téléchargements';
$lang->file->extra = 'Commentaires';
$lang->file->dragFile = 'Faites glisser images ici.';
$lang->file->childTaskTips = 'Il s\'agit d\'une sous-tâche s\'il y a un \'>\' devant le nom.';
$lang->file->errorNotExists = "<span class='text-red'>'%s' non trouvé.</span>";
$lang->file->errorCanNotWrite = "<span class='text-red'>'%s' non inscriptible. Changez les permissions. Entre <span class='code'>sudo chmod -R 777 '%s'</span></span> dans Linux.";
$lang->file->confirmDelete = " Voulez-vous le supprimer ?";
$lang->file->errorFileSize = " Taille du fichier excédant la limite. Il ne peut être chargé !";
$lang->file->errorFileUpload = " Echec du chargement. La taille du fichier peut excéder la limte.";
$lang->file->errorFileFormate = " Echec du chargement. Le format du fichier est non autorisé.";
$lang->file->errorFileMove = " Echec du chargement. Une erreur est survenue lors du chargement.";
$lang->file->dangerFile = " Le fichier n'a pas pu être chargé pour des raisons de sécurité.";
$lang->file->errorSuffix = 'Format incorrect. Fichiers .zip SEULEMENT !';
$lang->file->errorExtract = "Echec de l'extraction des fichiers. Les fichiers peuvent être endommagé ou il y a un fichier invalide dans le zip.";
$lang->file->uploadImagesExplain = "Note : Chargez images au format .jpg, .jpeg, .gif, ou .png. Le nom de l'image sera le nom de la Story et l'image en sera sa description.";
$lang->file->fileNotFound = 'Fichier non trouvé. Le fichier physique a peut-être été supprimé par innadvertance !';
+16
View File
@@ -0,0 +1,16 @@
<?php
/**
* The git module zh-cn file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package git
* @version $Id$
* @link https://www.zentao.pm
*/
/* Methods. */
$lang->git->common = 'Git';
$lang->git->cat = 'Voir Code Source';
$lang->git->diff = 'Comparer Code Source';
$lang->git->apiSync = 'API: Synchroniser Logs Git';
+104
View File
@@ -0,0 +1,104 @@
<?php
/**
* The group module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package group
* @version $Id: en.php 4719 2013-05-03 02:20:28Z chencongzhi520@gmail.com $
* @link https://www.zentao.pm
*/
$lang->group->common = 'Privilège';
$lang->group->browse = 'Groupes de Privilèges';
$lang->group->create = 'Créer un Groupe';
$lang->group->edit = 'Editer Groupe';
$lang->group->copy = 'Copier Groupe';
$lang->group->delete = 'Supprimer Groupe';
$lang->group->manageView = 'Gérer droits consultation';
$lang->group->managePriv = 'Gérer Privilèges';
$lang->group->managePrivByGroup = 'Gérer Privilèges par Groupe';
$lang->group->managePrivByModule = 'Gérer Privilèges par Module';
$lang->group->byModuleTips = '<span class="tips">(Shift/Ctrl pour sélection multiple)</span>';
$lang->group->manageMember = 'Gérer Membres';
$lang->group->confirmDelete = "Voulez-vous supprimer ce groupe d'utilisateurs ?";
$lang->group->successSaved = 'Sauvé.';
$lang->group->errorNotSaved = 'Echec. Veuillez sélectionner actions et groupes.';
$lang->group->viewList = 'Accès Consultation';
$lang->group->productList = 'Accès ' . $lang->productCommon . 's';
$lang->group->projectList = 'Accès ' . $lang->projectCommon . 's';
$lang->group->dynamic = 'Accès Historique';
$lang->group->noticeVisit = "Blanc signifie « pas de limitation d'accès ».";
$lang->group->id = 'ID';
$lang->group->name = 'Groupe';
$lang->group->desc = 'Description';
$lang->group->role = 'Rôle';
$lang->group->acl = 'Right';
$lang->group->users = 'Membres Groupe';
$lang->group->module = 'Module';
$lang->group->method = 'Méthode';
$lang->group->priv = 'Groupe de Privilèges';
$lang->group->option = 'Option';
$lang->group->inside = "Groupe d'utilisateurs";
$lang->group->outside = 'Autres utilisateurs';
$lang->group->other = 'Autres';
$lang->group->all = 'Tous les Privilèges';
$lang->group->copyOptions['copyPriv'] = 'Copier Privilèges';
$lang->group->copyOptions['copyUser'] = 'Copier Utilisateurs';
$lang->group->versions[''] = 'History';
$lang->group->versions['11_6_2'] = 'ZenTao11.6.2';
$lang->group->versions['10_6'] = 'ZenTao10.6';
$lang->group->versions['10_1'] = 'ZenTao10.1';
$lang->group->versions['10_0_alpha']= 'ZenTao10.0.alpha';
$lang->group->versions['9_8'] = 'ZenTao9.8';
$lang->group->versions['9_6'] = 'ZenTao9.6';
$lang->group->versions['9_5'] = 'ZenTao9.5';
$lang->group->versions['9_2'] = 'ZenTao9.2';
$lang->group->versions['9_1'] = 'ZenTao9.1';
$lang->group->versions['9_0'] = 'ZenTao9.0';
$lang->group->versions['8_4'] = 'ZenTao8.4';
$lang->group->versions['8_3'] = 'ZenTao8.3';
$lang->group->versions['8_2_beta'] = 'ZenTao8.2.beta';
$lang->group->versions['8_0_1'] = 'ZenTao8.0.1';
$lang->group->versions['8_0'] = 'ZenTao8.0';
$lang->group->versions['7_4_beta'] = 'ZenTao7.4.beta';
$lang->group->versions['7_3'] = 'ZenTao7.3';
$lang->group->versions['7_2'] = 'ZenTao7.2';
$lang->group->versions['7_1'] = 'ZenTao7.1';
$lang->group->versions['6_4'] = 'ZenTao6.4';
$lang->group->versions['6_3'] = 'ZenTao6.3';
$lang->group->versions['6_2'] = 'ZenTao6.2';
$lang->group->versions['6_1'] = 'ZenTao6.1';
$lang->group->versions['5_3'] = 'ZenTao5.3';
$lang->group->versions['5_1'] = 'ZenTao5.1';
$lang->group->versions['5_0_beta2'] = 'ZenTao5.0.beta2';
$lang->group->versions['5_0_beta1'] = 'ZenTao5.0.beta1';
$lang->group->versions['4_3_beta'] = 'ZenTao4.3.beta';
$lang->group->versions['4_2_beta'] = 'ZenTao4.2.beta';
$lang->group->versions['4_1'] = 'ZenTao4.1';
$lang->group->versions['4_0_1'] = 'ZenTao4.0.1';
$lang->group->versions['4_0'] = 'ZenTao4.0';
$lang->group->versions['4_0_beta2'] = 'ZenTao4.0.beta2';
$lang->group->versions['4_0_beta1'] = 'ZenTao4.0.beta1';
$lang->group->versions['3_3'] = 'ZenTao3.3';
$lang->group->versions['3_2_1'] = 'ZenTao3.2.1';
$lang->group->versions['3_2'] = 'ZenTao3.2';
$lang->group->versions['3_1'] = 'ZenTao3.1';
$lang->group->versions['3_0_beta2'] = 'ZenTao3.0.beta2';
$lang->group->versions['3_0_beta1'] = 'ZenTao3.0.beta1';
$lang->group->versions['2_4'] = 'ZenTao2.4';
$lang->group->versions['2_3'] = 'ZenTao2.3';
$lang->group->versions['2_2'] = 'ZenTao2.2';
$lang->group->versions['2_1'] = 'ZenTao2.1';
$lang->group->versions['2_0'] = 'ZenTao2.0';
$lang->group->versions['1_5'] = 'ZenTao1.5';
$lang->group->versions['1_4'] = 'ZenTao1.4';
$lang->group->versions['1_3'] = 'ZenTao1.3';
$lang->group->versions['1_2'] = 'ZenTao1.2';
$lang->group->versions['1_1'] = 'ZenTao1.1';
$lang->group->versions['1_0_1'] = 'ZenTao1.0.1';
include (dirname(__FILE__) . '/resource.php');
+13 -9
View File
@@ -658,25 +658,29 @@ $lang->testsuite->methodOrder[35] = 'unlinkCase';
$lang->testsuite->methodOrder[40] = 'batchUnlinkCases';
$lang->resource->caselib = new stdclass();
$lang->resource->caselib->index = 'index';
$lang->resource->caselib->browse = 'browse';
$lang->resource->caselib->create = 'create';
$lang->resource->caselib->edit = 'edit';
$lang->resource->caselib->createCase = 'createCase';
$lang->resource->caselib->delete = 'delete';
$lang->resource->caselib->view = 'view';
$lang->resource->caselib->createCase = 'createCase';
$lang->resource->caselib->batchCreateCase = 'batchCreateCase';
$lang->resource->caselib->exportTemplet = 'exportTemplet';
$lang->resource->caselib->import = 'importAction';
$lang->resource->caselib->showImport = 'showImport';
$lang->caselib->methodOrder[0] = 'browse';
$lang->caselib->methodOrder[5] = 'create';
$lang->caselib->methodOrder[10] = 'edit';
$lang->caselib->methodOrder[15] = 'createCase';
$lang->caselib->methodOrder[20] = 'batchCreateCase';
$lang->caselib->methodOrder[0] = 'index';
$lang->caselib->methodOrder[5] = 'browse';
$lang->caselib->methodOrder[10] = 'create';
$lang->caselib->methodOrder[15] = 'edit';
$lang->caselib->methodOrder[20] = 'delete';
$lang->caselib->methodOrder[25] = 'view';
$lang->caselib->methodOrder[30] = 'exportTemplet';
$lang->caselib->methodOrder[35] = 'import';
$lang->caselib->methodOrder[40] = 'showImport';
$lang->caselib->methodOrder[30] = 'createCase';
$lang->caselib->methodOrder[35] = 'batchCreateCase';
$lang->caselib->methodOrder[40] = 'exportTemplet';
$lang->caselib->methodOrder[45] = 'import';
$lang->caselib->methodOrder[50] = 'showImport';
/* Doc. */
$lang->resource->doc = new stdclass();
+3
View File
@@ -0,0 +1,3 @@
<?php
$lang->index->common = 'Accueil';
$lang->index->index = 'Accueil';
+205
View File
@@ -0,0 +1,205 @@
<?php
/**
* The install module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package install
* @version $Id: en.php 4972 2013-07-02 06:50:10Z zhujinyonging@gmail.com $
* @link https://www.zentao.pm
*/
$lang->install = new stdclass();
$lang->install->common = 'Installer';
$lang->install->next = 'Suivant';
$lang->install->pre = 'Retour';
$lang->install->reload = 'Rafraichir';
$lang->install->error = 'Erreur ';
$lang->install->officeDomain = 'https://www.zentao.pm';
$lang->install->start = 'Commencez';
$lang->install->keepInstalling = "Continuez l'installation de cette version";
$lang->install->seeLatestRelease = 'Voir dernière version';
$lang->install->welcome = "Merci d'avoir choisi ZenTao !";
$lang->install->license = 'ZenTao est sous Z PUBLIC LICENSE(ZPL) 1.2';
$lang->install->desc = <<<EOT
ZenTao ALM is an Open Source software released under <a href='http://zpl.pub/page/zplv12.html' target='_blank'>Z Public License</a>. It integrates with Product Management, Project Management, QA Management, Document Management, Todos Management, Company Management etc. ZenTao is the best choice for software project management.
ZenTao ALM is built on PHP + MySQL and based on ZenTaoPHP framework, an independent framework developed by our team. Third-party developers/organizations can develop extensions or customize for their requirements.
EOT;
$lang->install->links = <<<EOT
ZenTao ALM is developed by <strong><a href='http://easysoft.ltd' target='_blank' class='text-danger'>Nature Easy Soft Co., LTD</a></strong>.
Official Website : <a href='https://www.zentao.pm' target='_blank'>https://www.zentao.pm</a>
Technical Support : <a href='https://www.zentao.pm/forum/' target='_blank'>https://www.zentao.pm/forum/</a>
WhatsApp Group : <a href='https://chat.whatsapp.com/B6pi6b3gv0S7x7jqMxwhbF' target='_blank'>https://chat.whatsapp.com/B6pi6b3gv0S7x7jqMxwhbF</a>
LinkedIn Group: <a href='https://www.linkedin.com/groups/10330509/' target='_blank'>ZenTao Project Management Software</a>
Facebook: <a href='https://www.facebook.com/natureeasysoft' target='_blank'>Nature Easy Soft</a>
Twitter: <a href='https://twitter.com/cneasysoft' target='_blank'>cneasysoft</a>
You are installing ZenTao <strong class='text-danger'>%s</strong>.
EOT;
$lang->install->newReleased= "<strong class='text-danger'>Notice</strong>:Official Website has the latest version<strong class='text-danger'>%s</strong>, released on %s.";
$lang->install->or = 'Or';
$lang->install->checking = 'System Checkup';
$lang->install->ok = 'Passed(√)';
$lang->install->fail = 'Failed(×)';
$lang->install->loaded = 'Loaded';
$lang->install->unloaded = 'Not Loaded';
$lang->install->exists = 'Found ';
$lang->install->notExists = 'Not found ';
$lang->install->writable = 'Writable ';
$lang->install->notWritable= 'Not Writable ';
$lang->install->phpINI = 'PHP ini File';
$lang->install->checkItem = 'Item';
$lang->install->current = 'Current Setting';
$lang->install->result = 'Result';
$lang->install->action = 'Action';
$lang->install->phpVersion = 'PHP Version';
$lang->install->phpFail = 'PHP Version should be 5.2.0+';
$lang->install->pdo = 'PDO';
$lang->install->pdoFail = 'Edit php.ini to load PDO extension.';
$lang->install->pdoMySQL = 'PDO_MySQL';
$lang->install->pdoMySQLFail = 'Edit php.ini to load PDO_MySQL extension.';
$lang->install->json = 'JSON Extension';
$lang->install->jsonFail = 'Edit php.ini to load JSON extension.';
$lang->install->openssl = 'OpenSSL Extension';
$lang->install->opensslFail = 'Edit php.ini to load openssl extension.';
$lang->install->mbstring = 'Mbstring Extension';
$lang->install->mbstringFail = 'Edit php.ini to load mbstring extension.';
$lang->install->zlib = 'Zlib Extension';
$lang->install->zlibFail = 'Edit php.ini to load zlib extension.';
$lang->install->curl = 'Curl Extension';
$lang->install->curlFail = 'Edit php.ini to load curl extension.';
$lang->install->filter = 'Filter Extension';
$lang->install->filterFail = 'Edit the php.ini file to load filter extension.';
$lang->install->gd = 'GD Extension';
$lang->install->gdFail = 'Edit the php.ini file to load gd extension.';
$lang->install->iconv = 'Iconv Extension';
$lang->install->iconvFail = 'Edit the php.ini file to load iconv extension.';
$lang->install->tmpRoot = 'Temp Directory';
$lang->install->dataRoot = 'Uploaded File Directory';
$lang->install->session = 'Session Save Path';
$lang->install->sessionFail = 'Edit the php.ini file to set session.save_path.';
$lang->install->mkdirWin = '<p>%s directory has to be created.<br /> Run <code>mkdir %s</code> to create it.</p>';
$lang->install->chmodWin = ' "%s" privilege has to be changed.';
$lang->install->mkdirLinux = '<p>%s directory has to be created.<br /> Run <code>mkdir -p %s</code> to create it.</p>';
$lang->install->chmodLinux = ' "%s" permison has to be changed.<br /> Run <code>chmod o=rwx -R %s</code> to change it.';
$lang->install->timezone = 'Set Timezone';
$lang->install->defaultLang = 'Default Language';
$lang->install->dbHost = 'Database Host';
$lang->install->dbHostNote = 'If 127.0.0.1 is not accessible, try localhost.';
$lang->install->dbPort = 'Host Port';
$lang->install->dbEncoding = 'Database Charset';
$lang->install->dbUser = 'Database Username';
$lang->install->dbPassword = 'Database Password';
$lang->install->dbName = 'Database Name';
$lang->install->dbPrefix = 'Table Prefix';
$lang->install->clearDB = 'Clean up existing data';
$lang->install->importDemoData = 'Import Demo Data';
$lang->install->working = 'Operation Mode';
$lang->install->requestTypes['GET'] = 'GET';
$lang->install->requestTypes['PATH_INFO'] = 'PATH_INFO';
$lang->install->workingList['full'] = 'Application Lifecycle Management';
$lang->install->workingList['onlyTest'] = 'Only Test Management';
$lang->install->workingList['onlyStory'] = 'Only Story Management';
$lang->install->workingList['onlyTask'] = 'Only Task Management';
$lang->install->errorConnectDB = 'Echec de connexion à la base. ';
$lang->install->errorDBName = 'Le nom de la base ne doit pas contenir de “.” ';
$lang->install->errorCreateDB = 'Echec de création de la base.';
$lang->install->errorTableExists = "La base existe. Si ZenTao a été installé précédemment, revenez à l'étape précédente et supprimez les données. Ensuite continuez l'installation.";
$lang->install->errorCreateTable = 'Echec en création de la base.';
$lang->install->errorImportDemoData = "Echec de l'importation des données de démo.";
$lang->install->setConfig = 'Créer fichier de configuration';
$lang->install->key = 'Objet';
$lang->install->value = 'Valeur';
$lang->install->saveConfig = 'Sauver config';
$lang->install->save2File = '<div class="alert alert-warning">Copy the content in the text box above and save it to "<strong> %s </strong>". You can change this configuration file later.</div>';
$lang->install->saved2File = 'The configuration file has been saved to " <strong>%s</strong> ". You can change this file later.';
$lang->install->errorNotSaveConfig = 'The configuration file is not saved.';
$lang->install->getPriv = 'Paramétrage Admin';
$lang->install->company = 'Nom Entreprise';
$lang->install->account = 'Compte Admin';
$lang->install->password = 'Mot de Passe Admin';
$lang->install->errorEmptyPassword = 'Password ne doit pas être vide.';
$lang->install->groupList['ADMIN']['name'] = 'Admin';
$lang->install->groupList['ADMIN']['desc'] = 'Administrateur';
$lang->install->groupList['DEV']['name'] = 'Dev.';
$lang->install->groupList['DEV']['desc'] = 'Développeur';
$lang->install->groupList['QA']['name'] = 'QA';
$lang->install->groupList['QA']['desc'] = 'Testeur';
$lang->install->groupList['PM']['name'] = 'PM';
$lang->install->groupList['PM']['desc'] = 'Project Manager';
$lang->install->groupList['PO']['name'] = 'PO';
$lang->install->groupList['PO']['desc'] = 'Product Owner';
$lang->install->groupList['TD']['name'] = 'Dev. Manager';
$lang->install->groupList['TD']['desc'] = 'Développement Manager';
$lang->install->groupList['PD']['name'] = 'PD';
$lang->install->groupList['PD']['desc'] = 'Product Director';
$lang->install->groupList['QD']['name'] = 'QD';
$lang->install->groupList['QD']['desc'] = 'Test Manager';
$lang->install->groupList['TOP']['name'] = 'Senior';
$lang->install->groupList['TOP']['desc'] = 'Senior Manager';
$lang->install->groupList['OTHERS']['name'] = 'Autres';
$lang->install->groupList['OTHERS']['desc'] = 'Autres utilisateurs';
$lang->install->groupList['LIMITED']['name'] = 'Utilisateur restreint';
$lang->install->groupList['LIMITED']['desc'] = 'Les utilisateurs peuvent seulement éditer ce qui les concernent.';
$lang->install->cronList[''] = 'Moniteur Cron';
$lang->install->cronList['moduleName=project&methodName=computeburn'] = 'Mise à jour Graphe Burndown';
$lang->install->cronList['moduleName=report&methodName=remind'] = 'Rappel Tâches quotidiennes';
$lang->install->cronList['moduleName=svn&methodName=run'] = 'Synchroniser SVN';
$lang->install->cronList['moduleName=git&methodName=run'] = 'Synchroniser GIT';
$lang->install->cronList['moduleName=backup&methodName=backup'] = 'Sauvegardes';
$lang->install->cronList['moduleName=mail&methodName=asyncSend'] = 'Désynchroniser envoi Messages';
$lang->install->cronList['moduleName=webhook&methodName=asyncSend'] = 'Désynchroniser envoi Webhooks';
$lang->install->cronList['moduleName=admin&methodName=deleteLog'] = 'Suppression Logs échus';
$lang->install->cronList['moduleName=todo&methodName=createCycle'] = 'Créer tâches récurrentes';
$lang->install->success = "Installé !";
$lang->install->login = 'Login ZenTao';
$lang->install->register = "S'enregistrer sur la Communauté ZenTao";
$lang->install->joinZentao = <<<EOT
<p>Vous avez installé ZenTao %s.<strong class='text-danger'> Supprimez install.php asap</strong>.</p><p>Note : Afin d'obtenir les dernières infos de ZenTao, enregistrz-vous chez ZenTao(<a href='https://www.zentao.pm' class='alert-link' target='_blank'>www.zentao.pm</a>).</p>
EOT;
$lang->install->product = array('chanzhi', 'ranzhi');
$lang->install->promotion = "Products also from Nature Easy Soft team:";
$lang->install->chanzhi = new stdclass();
$lang->install->chanzhi->name = 'ZSITE';
$lang->install->chanzhi->logo = 'images/main/chanzhi.ico';
$lang->install->chanzhi->url = 'http://www.zsite.net';
$lang->install->chanzhi->desc = <<<EOD
<ul>
<li>Article, Blog, Manual, Member, Shop, Forum, Feedback……</li>
<li>Customize page freely by theme, effect, widget, css, js and layout</li>
<li>Support desktop and mobile in one system</li>
<li>Deeply optimized for search engine</li>
</ul>
EOD;
$lang->install->ranzhi = new stdclass();
$lang->install->ranzhi->name = 'ZDOO';
$lang->install->ranzhi->logo = 'images/main/ranzhi.ico';
$lang->install->ranzhi->url = 'http://www.zdoo.org';
$lang->install->ranzhi->desc = <<<EOD
<ul>
<li>CRM: Customer Management and Order Tracking</li>
<li>OA: Approve, Announce, Trip, Leave and so on. </li>
<li>Project,Task and Document management </li>
<li>Money: Income, Expense, Transfer, Invest and Debt</li>
</ul>
EOD;
+8 -8
View File
@@ -223,10 +223,10 @@ $lang->install->ydisk->logo = 'images/main/ydisk.ico';
$lang->install->ydisk->url = 'http://www.ydisk.cn';
$lang->install->ydisk->desc = <<<EOD
<ul>
<li>绝对私有,只部署在自己的机器上。</li>
<li>海量存储,只取决于您的硬盘大小。</li>
<li>极限传输,只取决于您的网络带宽。</li>
<li>极度安全,十二种权限组合。</li>
<li>绝对私有:只部署在自己的机器上</li>
<li>海量存储:只取决于您的硬盘大小</li>
<li>极限传输:只取决于您的网络带宽</li>
<li>极度安全:十二种权限组合</li>
</ul>
EOD;
@@ -236,9 +236,9 @@ $lang->install->meshiot->logo = 'images/main/meshiot.ico';
$lang->install->meshiot->url = 'https://www.meshiot.com';
$lang->install->meshiot->desc = <<<EOD
<ul>
<li>超性能网关,一个就可管65536个设备。</li>
<li>独创无线电通讯协议,2500米穿墙无障碍。</li>
<li>200余款传感器控制器,独创调光系统。</li>
<li>可配电池,对既有场地设备无任何要求。</li>
<li>超性能网关,一个可管6万个设备</li>
<li>自研通讯协议,2.5公里穿墙无障碍</li>
<li>上百款传感器控制器,独创调光系统</li>
<li>可配电池,对既有场地无任何要求</li>
</ul>
EOD;
+8 -8
View File
@@ -223,10 +223,10 @@ $lang->install->ydisk->logo = 'images/main/ydisk.ico';
$lang->install->ydisk->url = 'http://www.ydisk.cn';
$lang->install->ydisk->desc = <<<EOD
<ul>
<li>絶對私有,只部署在自己的機器上。</li>
<li>海量存儲,只取決於您的硬碟大小。</li>
<li>極限傳輸,只取決於您的網絡頻寬。</li>
<li>極度安全,十二種權限組合。</li>
<li>絶對私有:只部署在自己的機器上</li>
<li>海量存儲:只取決於您的硬碟大小</li>
<li>極限傳輸:只取決於您的網絡頻寬</li>
<li>極度安全:十二種權限組合</li>
</ul>
EOD;
@@ -236,9 +236,9 @@ $lang->install->meshiot->logo = 'images/main/meshiot.ico';
$lang->install->meshiot->url = 'https://www.meshiot.com';
$lang->install->meshiot->desc = <<<EOD
<ul>
<li>超性能網關,一個就可管65536個設備。</li>
<li>獨創無線電通訊協議,2500米穿牆無障礙。</li>
<li>200餘款感測器控製器,獨創調光系統。</li>
<li>可配電池,對既有場地設備無任何要求。</li>
<li>超性能網關,一個可管6萬個設備</li>
<li>自研通訊協議,2.5公里穿牆無障礙</li>
<li>上百款感測器控製器,獨創調光系統</li>
<li>可配電池,對既有場地無任何要求</li>
</ul>
EOD;
+1
View File
@@ -55,6 +55,7 @@ $lang->mail->sendTime = 'Gesendet am';
$lang->mail->status = 'Status';
$lang->mail->failReason = 'Problem';
$lang->mail->statusList['wait'] = 'Wait';
$lang->mail->statusList['sended'] = 'Senden';
$lang->mail->statusList['fail'] = 'Fehlgeschlagen';
+1
View File
@@ -55,6 +55,7 @@ $lang->mail->sendTime = 'Sent';
$lang->mail->status = 'Status';
$lang->mail->failReason = 'Reason';
$lang->mail->statusList['wait'] = 'Wait';
$lang->mail->statusList['sended'] = 'Sent';
$lang->mail->statusList['fail'] = 'Failed';
+117
View File
@@ -0,0 +1,117 @@
<?php
$lang->mail->common = 'Paramétrage Email';
$lang->mail->index = 'Accueil Email';
$lang->mail->detect = 'Détecter';
$lang->mail->detectAction = 'Détecter par Adresse mail';
$lang->mail->edit = 'Editer Paramétrages';
$lang->mail->save = 'Sauver';
$lang->mail->saveAction = 'Saver Paramétrages';
$lang->mail->test = 'Test Envoi Email';
$lang->mail->reset = 'Réinitialiser';
$lang->mail->resetAction = 'Réinitialiser Paramétrages';
$lang->mail->resend = 'Renvoyer';
$lang->mail->resendAction = 'Renvoyer mail';
$lang->mail->browse = 'Liste Email';
$lang->mail->delete = 'Supprimer mail';
$lang->mail->ztCloud = 'ZenTao CloudMail';
$lang->mail->gmail = 'Gmail';
$lang->mail->sendCloud = 'Notice SendCloud';
$lang->mail->batchDelete = 'Suppression par Lot';
$lang->mail->sendcloudUser = 'Sync. Contact';
$lang->mail->agreeLicense = 'Oui';
$lang->mail->disagree = 'Non';
$lang->mail->turnon = 'Notification Email';
$lang->mail->async = 'Envoi Async';
$lang->mail->fromAddress = 'Expéditeur mail';
$lang->mail->fromName = 'Expéditeur';
$lang->mail->domain = 'Domaine ZenTao';
$lang->mail->host = 'Serveur SMTP';
$lang->mail->port = 'Port SMTP';
$lang->mail->auth = 'Validation SMTP';
$lang->mail->username = 'Compte SMTP';
$lang->mail->password = 'Mot de passe SMTP';
$lang->mail->secure = 'Cryptage';
$lang->mail->debug = 'Debug';
$lang->mail->charset = 'Charset';
$lang->mail->accessKey = "Clé d'Accès";
$lang->mail->secretKey = "Clé Secrète";
$lang->mail->license = 'ZenTao CloudMail Notice';
$lang->mail->selectMTA = 'Sélect Type';
$lang->mail->smtp = 'SMTP';
$lang->mail->syncedUser = 'Synchronis';
$lang->mail->unsyncUser = 'Non Synchronis';
$lang->mail->sync = 'Synchronisation';
$lang->mail->remove = 'Retirer';
$lang->mail->toList = 'Destinataire';
$lang->mail->ccList = 'Copie ';
$lang->mail->subject = 'Sujet';
$lang->mail->createdBy = 'Expéditeur';
$lang->mail->createdDate = 'Création';
$lang->mail->sendTime = 'Envoi';
$lang->mail->status = 'Statut';
$lang->mail->failReason = 'Raison';
$lang->mail->statusList['wait'] = 'Wait';
$lang->mail->statusList['sended'] = 'Envoy';
$lang->mail->statusList['fail'] = 'Echec';
$lang->mail->turnonList[1] = 'On';
$lang->mail->turnonList[0] = 'Off';
$lang->mail->asyncList[1] = 'Oui';
$lang->mail->asyncList[0] = 'Non';
$lang->mail->debugList[0] = 'Off';
$lang->mail->debugList[1] = 'Normal';
$lang->mail->debugList[2] = 'Haute';
$lang->mail->authList[1] = 'Oui';
$lang->mail->authList[0] = 'Non';
$lang->mail->secureList[''] = 'Plain';
$lang->mail->secureList['ssl'] = 'ssl';
$lang->mail->secureList['tls'] = 'tls';
$lang->mail->more = 'Plus';
$lang->mail->noticeResend = 'Le mail a été renvoyé !';
$lang->mail->inputFromEmail = 'Expéditeur Email';
$lang->mail->nextStep = 'Suivant';
$lang->mail->successSaved = 'Paramétrage Email sauvegardés.';
$lang->mail->testSubject = 'mail de test';
$lang->mail->testContent = 'Les Paramétrages Email sont ok !';
$lang->mail->successSended = 'Envoyé !';
$lang->mail->confirmDelete = 'Voulez-vous le supprimer ?';
$lang->mail->sendmailTips = "Note : l'expéditeur ne recevra pas ce mail.";
$lang->mail->needConfigure = "Les paramétrages Email n'ont pas été trouvés. Commencez par paramétrer l'Email.";
$lang->mail->connectFail = 'Echec de Connexion à ZenTao.';
$lang->mail->centifyFail = 'Echec de Vérification. La clé secrète peut avoir été changée. Essayez à nouveau !';
$lang->mail->nofsocket = 'Les fonctions fsocket sont désactivées. Les mails ne peuvent pas être envoyés. Modifiez allow_url_fopen dans php.ini pour ouvrir Onopenssl, et redémarrez Apache.';
$lang->mail->noOpenssl = 'Activez Onopenssl, et redémarrez Apache.';
$lang->mail->disableSecure = 'Pas de openssl. ssl et tls sont inactifs.';
$lang->mail->sendCloudFail = 'Echec. Raison :';
$lang->mail->sendCloudHelp = <<<EOD
EOD;
$lang->mail->sendCloudSuccess = 'Envoy';
$lang->mail->closeSendCloud = 'Fermer SendCloud';
$lang->mail->addressWhiteList = "Ajoutez le à la liste blanche de votre serveur de mail pour éviter d'être bloqué.";
$lang->mail->ztCloudNotice = <<<EOD
EOD;
$lang->mail->placeholder = new stdclass();
$lang->mail->placeholder->password = "Certains serveurs de mails demandent un code d'autorisation, consultez le service d'Emails de votre provider.";
+1
View File
@@ -55,6 +55,7 @@ $lang->mail->sendTime = '发送时间';
$lang->mail->status = '状态';
$lang->mail->failReason = '失败原因';
$lang->mail->statusList['wait'] = '待发送';
$lang->mail->statusList['sended'] = '成功';
$lang->mail->statusList['fail'] = '失败';
+1
View File
@@ -55,6 +55,7 @@ $lang->mail->sendTime = '發送時間';
$lang->mail->status = '狀態';
$lang->mail->failReason = '失敗原因';
$lang->mail->statusList['wait'] = '待發送';
$lang->mail->statusList['sended'] = '成功';
$lang->mail->statusList['fail'] = '失敗';
+18
View File
@@ -0,0 +1,18 @@
<?php
$lang->message->common = 'Notification';
$lang->message->index = 'Accueil';
$lang->message->setting = 'Paramétrage';
$lang->message->browser = 'Browser Notification';
$lang->message->typeList['mail'] = 'Email';
$lang->message->typeList['message'] = 'Notifications du navigateur';
$lang->message->typeList['webhook'] = 'Webhook';
$lang->message->browserSetting = new stdclass();
$lang->message->browserSetting->turnon = 'Notification';
$lang->message->browserSetting->pollTime = 'Polling Time';
$lang->message->browserSetting->pollTimePlaceholder = 'Notify the time intervals for the search by seconds.';
$lang->message->browserSetting->turnonList[1] = 'On';
$lang->message->browserSetting->turnonList[0] = 'Off';
+3
View File
@@ -44,6 +44,7 @@ $lang->misc->zentao->support['manual'] = "Benutzer Handbuch";
$lang->misc->zentao->cowin['reportbug'] = "Bug melden ";
$lang->misc->zentao->cowin['feedback'] = "Feedback";
$lang->misc->zentao->cowin['translate'] = "Translate";
$lang->misc->zentao->cowin['recommend'] = "More";
$lang->misc->zentao->service['zentaotrain']= 'Zentao Training';
@@ -82,6 +83,7 @@ $lang->misc->feature = new stdclass();
$lang->misc->feature->lastest = 'Letzte Version';
$lang->misc->feature->detailed = 'Details';
$lang->misc->releaseDate['11.6.4'] = '2019-10-17';
$lang->misc->releaseDate['11.6.3'] = '2019-09-24';
$lang->misc->releaseDate['11.6.2'] = '2019-09-06';
$lang->misc->releaseDate['11.6.1'] = '2019-08-23';
@@ -115,6 +117,7 @@ $lang->misc->releaseDate['7.2.stable'] = '2015-05-22';
$lang->misc->releaseDate['7.1.stable'] = '2015-03-07';
$lang->misc->releaseDate['6.3.stable'] = '2014-11-07';
$lang->misc->feature->all['11.6.4'][] = array('title'=>'Optimize details and fix bug.', 'desc' => '');
$lang->misc->feature->all['11.6.3'][] = array('title'=>'Fix bug.', 'desc' => '');
$lang->misc->feature->all['11.6.2'][] = array('title'=>'Optimize details and fix bug.', 'desc' => '');
$lang->misc->feature->all['11.6.1'][] = array('title'=>'Optimize details and fix bug.', 'desc' => '');
+4 -1
View File
@@ -18,7 +18,7 @@ $lang->misc->enApi = 'http://api.zentao.pm';
$lang->misc->zentao = new stdclass();
$lang->misc->zentao->version = 'Version %s';
$lang->misc->zentao->labels['about'] = 'About';
$lang->misc->zentao->labels['support'] = 'Technical Support';
$lang->misc->zentao->labels['support'] = 'Support';
$lang->misc->zentao->labels['cowin'] = 'Help Us';
$lang->misc->zentao->labels['service'] = 'Service';
$lang->misc->zentao->labels['others'] = 'Other Products';
@@ -44,6 +44,7 @@ $lang->misc->zentao->support['manual'] = "User Manual";
$lang->misc->zentao->cowin['reportbug'] = "Report Bug ";
$lang->misc->zentao->cowin['feedback'] = "Feedback";
$lang->misc->zentao->cowin['translate'] = "Translate";
$lang->misc->zentao->cowin['recommend'] = "More";
$lang->misc->zentao->service['zentaotrain']= 'Zentao Training';
@@ -82,6 +83,7 @@ $lang->misc->feature = new stdclass();
$lang->misc->feature->lastest = 'Latest Version';
$lang->misc->feature->detailed = 'Detail';
$lang->misc->releaseDate['11.6.4'] = '2019-10-17';
$lang->misc->releaseDate['11.6.3'] = '2019-09-24';
$lang->misc->releaseDate['11.6.2'] = '2019-09-06';
$lang->misc->releaseDate['11.6.1'] = '2019-08-23';
@@ -115,6 +117,7 @@ $lang->misc->releaseDate['7.2.stable'] = '2015-05-22';
$lang->misc->releaseDate['7.1.stable'] = '2015-03-07';
$lang->misc->releaseDate['6.3.stable'] = '2014-11-07';
$lang->misc->feature->all['11.6.4'][] = array('title'=>'Optimize details and fix bug.', 'desc' => '');
$lang->misc->feature->all['11.6.3'][] = array('title'=>'Fix bug.', 'desc' => '');
$lang->misc->feature->all['11.6.2'][] = array('title'=>'Optimize details and fix bug.', 'desc' => '');
$lang->misc->feature->all['11.6.1'][] = array('title'=>'Optimize details and fix bug.', 'desc' => '');
+205
View File
@@ -0,0 +1,205 @@
<?php
/**
* The misc module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package misc
* @version $Id: English.php 824 2010-05-02 15:32:06Z wwccss $
* @link https://www.zentao.pm
*/
$lang->misc = new stdclass();
$lang->misc->common = 'Misc';
$lang->misc->ping = 'Ping';
$lang->misc->api = 'https://api.zentao.pm';
$lang->misc->enApi = 'http://api.zentao.pm';
$lang->misc->zentao = new stdclass();
$lang->misc->zentao->version = 'Version %s';
$lang->misc->zentao->labels['about'] = 'A Propos';
$lang->misc->zentao->labels['support'] = 'Support Technique';
$lang->misc->zentao->labels['cowin'] = 'Aider ZenTao';
$lang->misc->zentao->labels['service'] = 'Services';
$lang->misc->zentao->labels['others'] = 'Other Products';
$lang->misc->zentao->icons['about'] = 'group';
$lang->misc->zentao->icons['support'] = 'question-sign';
$lang->misc->zentao->icons['cowin'] = 'hand-right';
$lang->misc->zentao->icons['service'] = 'heart';
$lang->misc->zentao->about['proversion'] = 'ZenTao Pro';
$lang->misc->zentao->about['official'] = "Site Officiel";
$lang->misc->zentao->about['changelog'] = "Change Log";
$lang->misc->zentao->about['license'] = "Licence";
$lang->misc->zentao->support['vip'] = "Support VIP";
$lang->misc->zentao->support['manual'] = "English User Manual";
$lang->misc->zentao->cowin['reportbug'] = "Signaler un Bug";
$lang->misc->zentao->cowin['feedback'] = "Feedback";
$lang->misc->zentao->cowin['translate'] = "Translate";
$lang->misc->zentao->cowin['recommend'] = "Plus...";
$lang->misc->zentao->service['zentaotrain']= 'Zentao Train';
$lang->misc->zentao->service['idc'] = 'Zentao Cloud';
$lang->misc->zentao->service['custom'] = 'Zentao Custom';
$lang->misc->zentao->service['servicemore']= 'Plus...';
global $config;
$lang->misc->zentao->others['chanzhi'] = "<img src='{$config->webRoot}theme/default/images/main/chanzhi.ico' /> Zsite";
$lang->misc->zentao->others['ranzhi'] = "<img src='{$config->webRoot}theme/default/images/main/ranzhi.ico' /> Zdoo";
$lang->misc->zentao->others['ydisk'] = "<img src='{$config->webRoot}theme/default/images/main/ydisk.ico' /> Y Disk";
$lang->misc->zentao->others['meshiot' ] = "<img src='{$config->webRoot}theme/default/images/main/meshiot.ico' /> MeshioT";
$lang->misc->mobile = "Accès Mobile";
$lang->misc->noGDLib = "SVP visitez <strong>%s</strong> via le navigateur de votre smartphone.";
$lang->misc->copyright = "&copy; 2009 - 2019 <a href='http://easysoft.ltd' target='_blank'>Nature Easy Soft</a> Email <a href='mailto:Renee@easysoft.ltd'>Renee@easysoft.ltd</a>";
$lang->misc->checkTable = "Vérifiez les Données de la Table";
$lang->misc->needRepair = "Réparer la Table";
$lang->misc->repairTable = "La Base de Données est peut-être endommagée. Elle a besoin d'être vérifiée et éventuellement réparée !";
$lang->misc->repairFail = "La réparation a échoué. Allez dans le répertoire de données de votre table et essayez d'exécuter <code>myisamchk -r -f %s.MYI</code> pour la réparer. Mais on ne promet rien :-(";
$lang->misc->connectFail = "Echec de connexion à la Base de données. Erreur: %s,<br/>Vérifiez la log des erreurs MySQL et des dysfonctionnements.";
$lang->misc->tableName = "Nom de la Table";
$lang->misc->tableStatus = "Statut";
$lang->misc->novice = "Nouveau dans ZenTao ? Voulez-vous commencer le Tutoriel ?";
$lang->misc->noticeRepair = "<h5>Si vous n'êtes pas l'administrateur, contactez votre administrateur ZenTao pour réparer les tables.</h5>
<h5>Si vous êtes l'administrateur, connectez-vous à votre serveur ZenTao et créez un fichier vide dont le nom est <span>%s</span>.</h5>
<p>Note :</p>
<ol>
<li>Laissez surtout le fichier vide.</li>
<li>Si le fichier existe déjà, supprimez-le et créez un nouveau fichier.</li><li>Il y a bon espoir d'y arriver.</li>
</ol>";
$lang->misc->feature = new stdclass();
$lang->misc->feature->lastest = 'Dernière Version';
$lang->misc->feature->detailed = 'Détail';
$lang->misc->releaseDate['11.6.4'] = '2019-10-17';
$lang->misc->releaseDate['11.6.3'] = '2019-09-24';
$lang->misc->releaseDate['11.6.2'] = '2019-09-06';
$lang->misc->releaseDate['11.6.1'] = '2019-08-23';
$lang->misc->releaseDate['11.6.stable'] = '2019-07-12';
$lang->misc->releaseDate['11.5.2'] = '2019-06-26';
$lang->misc->releaseDate['11.5.1'] = '2019-06-24';
$lang->misc->releaseDate['11.5.stable'] = '2019-05-08';
$lang->misc->releaseDate['11.4.1'] = '2019-04-08';
$lang->misc->releaseDate['11.4.stable'] = '2019-03-25';
$lang->misc->releaseDate['11.3.stable'] = '2019-02-27';
$lang->misc->releaseDate['11.2.stable'] = '2019-01-30';
$lang->misc->releaseDate['11.1.stable'] = '2019-01-04';
$lang->misc->releaseDate['11.0.stable'] = '2018-12-21';
$lang->misc->releaseDate['10.6.stable'] = '2018-11-20';
$lang->misc->releaseDate['10.5.stable'] = '2018-10-25';
$lang->misc->releaseDate['10.4.stable'] = '2018-09-28';
$lang->misc->releaseDate['10.3.stable'] = '2018-08-10';
$lang->misc->releaseDate['10.2.stable'] = '2018-08-02';
$lang->misc->releaseDate['10.0.stable'] = '2018-06-26';
$lang->misc->releaseDate['9.8.stable'] = '2018-01-17';
$lang->misc->releaseDate['9.7.stable'] = '2017-12-22';
$lang->misc->releaseDate['9.6.stable'] = '2017-11-06';
$lang->misc->releaseDate['9.5.1'] = '2017-09-27';
$lang->misc->releaseDate['9.3.beta'] = '2017-06-21';
$lang->misc->releaseDate['9.1.stable'] = '2017-03-23';
$lang->misc->releaseDate['9.0.beta'] = '2017-01-03';
$lang->misc->releaseDate['8.3.stable'] = '2016-11-09';
$lang->misc->releaseDate['8.2.stable'] = '2016-05-17';
$lang->misc->releaseDate['7.4.beta'] = '2015-11-13';
$lang->misc->releaseDate['7.2.stable'] = '2015-05-22';
$lang->misc->releaseDate['7.1.stable'] = '2015-03-07';
$lang->misc->releaseDate['6.3.stable'] = '2014-11-07';
$lang->misc->feature->all['11.6.4'][] = array('title'=>'Optimize details and fix bug.', 'desc' => '');
$lang->misc->feature->all['11.6.3'][] = array('title'=>'Fix bug.', 'desc' => '');
$lang->misc->feature->all['11.6.2'][] = array('title'=>'Optimize details and fix bug.', 'desc' => '');
$lang->misc->feature->all['11.6.1'][] = array('title'=>'Optimize details and fix bug.', 'desc' => '');
$lang->misc->feature->all['11.6.stable'][] = array('title'=>'Improving the International Edition Interface', 'desc' => '');
$lang->misc->feature->all['11.6.stable'][] = array('title'=>'Add translate function', 'desc' => '');
$lang->misc->feature->all['11.5.2'][] = array('title'=>'Increase the security of ZenTao and increase the login password for weak password check', 'desc' => '');
$lang->misc->feature->all['11.5.1'][] = array('title'=>'Add a third-party authentication and fix bugs.', 'desc' => '');
$lang->misc->feature->all['11.5.stable'][] = array('title'=>'Optimize details and fix bug.', 'desc' => '');
$lang->misc->feature->all['11.5.stable'][] = array('title'=>'Added filters to Dynamics', 'desc' => '');
$lang->misc->feature->all['11.5.stable'][] = array('title'=>'Integrated the latest ZenTao client', 'desc' => '');
$lang->misc->feature->all['11.4.1'][] = array('title'=>'Optimize details and fix bug.', 'desc' => '');
$lang->misc->feature->all['11.4.stable'][] = array('title'=>'Optimize details and fix bug.', 'desc' => '<p>Enhanced test management.</p><p>Optimized the UI of Plan, Release, and Build linked stories and bugs.</p><p>Customize the feature whether to display files in child category.</p><p>Optimize details and fix bug.</p>');
$lang->misc->feature->all['11.3.stable'][] = array('title'=>'Optimize details and fix bug.', 'desc' => '<p>Add Child Plan to a Plan</p><p>Optimize the chosen</p><p>Add Timezone settings</p><p>Optimize Document Library and Document modules</p>');
$lang->misc->feature->all['11.2.stable'][] = array('title'=>'Optimize details and fix bug.', 'desc' => '<p>Add upgrade logs and database checkup after upgrading</p><p>Fixed ZenTao client and other bugs, and optimized details.</p>');
$lang->misc->feature->all['11.1.stable'][] = array('title'=>'Fix Bug.', 'desc' => '');
$lang->misc->feature->all['11.0.stable'][] = array('title'=>'ZenTao integrated desktop.', 'desc' => '');
$lang->misc->feature->all['10.6.stable'][] = array('title'=>'Adjust backup mechanism', 'desc' => '<p>Increase backup settings and make backup more flexible</p><p>Show backup progress</p><p>Change the backup directory</p>');
$lang->misc->feature->all['10.6.stable'][] = array('title'=>'Optimize and adjust menu', 'desc' => '<p>Adjust admin menu</p><p>Adjust the secondary menu of My and Project</p>');
$lang->misc->feature->all['10.5.stable'][] = array('title'=>'Adjust document layout', 'desc' => "<p>Adjust the layout method on the left side of the document library.</p><p>Add filter conditions at the bottom of the document library menu.</p>");
$lang->misc->feature->all['10.5.stable'][] = array('title'=>'Adjust the child task logic and optimize the display of parent-child task.', 'desc' => '');
$lang->misc->feature->all['10.4.stable'][] = array('title'=>'Optimize and adjust new interface', 'desc' => '<p>Detail page restore to the previous layout.</p><p>Refactore forms to add user pages</p><p>When use cases are executed, do not update the use case stause if the user manually chooses to pass and write the results.</p>');
$lang->misc->feature->all['10.4.stable'][] = array('title'=>'After the user machine hibernates and the login fails, the session will be refreshed again.', 'desc' => '');
$lang->misc->feature->all['10.4.stable'][] = array('title'=>'Upgrade existing interface mechanisms', 'desc' => '');
$lang->misc->feature->all['10.3.stable'][] = array('title'=>'Fix Bug.', 'desc' => '');
$lang->misc->feature->all['10.2.stable'][] = array('title'=>'ZenTao desktop is integrated!', 'desc' => '');
$lang->misc->feature->all['10.0.stable'][] = array('title'=>'New UI/UX and new experience', 'desc' => '<ol><li>My Dashboard</li><li>Dynamics</li><li>Product Home</li><li>Product Overview</li><li>Roadmap</li><li>Project Home</li><li>Project overview</li><li>QA Home</li><li>Document Home</li><li>Added work report on My Dashboard</li><li>Add/Edit/Finish todos on My Dashboard</li><li>Add prodcut report on Product Home</li><li>Add prodcut overview on Product Home</li><li>Add project report on Project Home</li><li>Add project overview on Project Home</li><li>Add Testing report on QA Home</li><li>All Product/product Home/All Project/Project Home/QA Home is moved from the right of the secondary Navbar to the left.</li><li>Kanban/Burndown/Tree/ByGroup of Project/Task has been moved from the third Navbar to the secondary one; Tree/ByGroup/Task List has been integrated to a drop-down.</li><li>Bug/Build of Project on the secondary Navbar has been integrated to a drop-down.</li><li>Display build and list by group, which is more reasonable.</li><li>Added tree to display document on the left of the page.</li><li>Added quick entry to document, including Last Update, My Doc and My Favorite</li><li>Added My Favorite to Doc module.</li></ol>');
$lang->misc->feature->all['9.8.stable'][] = array('title'=>'Message centralized management', 'desc' => '<p>Gather Mail,SMS,webhook into Message</p>');
$lang->misc->feature->all['9.8.stable'][] = array('title'=>'Add recurred Todo', 'desc' => '');
$lang->misc->feature->all['9.8.stable'][] = array('title'=>"Add Block of 'AssignedToMe'", 'desc' => '');
$lang->misc->feature->all['9.8.stable'][] = array('title'=>'Support generating reports on Test Builds', 'desc' => '');
$lang->misc->feature->all['9.7.stable'][] = array('title'=>'Optimize International package. Added Demo data.', 'desc' => '');
$lang->misc->feature->all['9.6.stable'][] = array('title'=>'Added Webhook Interface feature', 'desc' => 'Support communication with BearyChat, Dingding');
$lang->misc->feature->all['9.6.stable'][] = array('title'=>'Added Point', 'desc' => 'More skilled application, more score');
$lang->misc->feature->all['9.6.stable'][] = array('title'=>'Added multiple user task and child tasks to Project', 'desc' => '');
$lang->misc->feature->all['9.6.stable'][] = array('title'=>'Added Product line management to Product', 'desc' => '');
$lang->misc->feature->all['9.5.1'][] = array('title'=>'Added restricted actions.', 'desc' => '');
$lang->misc->feature->all['9.3.beta'][] = array('title'=>'Upgraded ZenTao framework,enhanced security', 'desc' => '');
$lang->misc->feature->all['9.1.stable'][] = array('title'=>'optimize Test View', 'desc' => '<p>Added TestSuite, CaseLibrary and QA Report</p>');
$lang->misc->feature->all['9.1.stable'][] = array('title'=>'Support Group steps of TestCase', 'desc' => '');
$lang->misc->feature->all['9.0.beta'][] = array('title'=>'ZenTao CloudMail has been added.', 'desc' => '<p>ZenTao CloudMail is a free Email service launched jointly with SendCloud. Once binded with ZenTao and passed verification, users can use this service.</p>');
$lang->misc->feature->all['9.0.beta'][] = array('title'=>'Optimized Rich Text Editor and Markdown Editor.', 'desc' => '');
$lang->misc->feature->all['8.3.stable'][] = array('title'=>'Improved Documentation.', 'desc' => '<p>Added Document Home, restructured document library, and added privileges.</p><p>Markdown Editor is supported,and privilege and version managment is added.</p>');
$lang->misc->feature->all['8.2.stable'][] = array('title'=>'Custom Home', 'desc' => '<p>You can add blocks to Dashboard and arrange the layout.</p><p> My Zone, Product, Project, and QA all support home custom mentioned before. </p>');
$lang->misc->feature->all['8.2.stable'][] = array('title'=>'Custom Navigation', 'desc' => '<p>You can decide which project show in navigation bar and the order of projects shown in the bar.</p><p> Hover on the navigation bar and a sign will show to its right. Click the sign and a dialog box "Custom Navigation" will show. Drag the block name to switch its order on navigation bar.</p>');
$lang->misc->feature->all['8.2.stable'][] = array('title'=>'Batch Add/Edit Custom', 'desc' => '<p>You can batch add and edit fields on custom pages.</p>');
$lang->misc->feature->all['8.2.stable'][] = array('title'=>'Custom Story/Task/Bug/Case', 'desc' => '<p>You can custom fileds when add a Story/Task/Bug/Case.</p>');
$lang->misc->feature->all['8.2.stable'][] = array('title'=>'Custom Export', 'desc' => '<p>You can custom fileds when export a Story/Task/Bug/Case pages. You can also save it as template for next export.</p>');
$lang->misc->feature->all['8.2.stable'][] = array('title'=>'Story/Task/Bug/Case Search ', 'desc' => '<p>On Story/Task/Bug/Case List page, you can do a combined search on Modules and Tabs.</p>');
$lang->misc->feature->all['8.2.stable'][] = array('title'=>"ZenTao Tutorial", 'desc' => '<p>Tutorial for rookies is added for first-time users to know how to use ZenTao.</p>');
$lang->misc->feature->all['7.4.beta'][] = array('title'=>'Product branch feature is added.', 'desc' => '<p>Product branch/platform is added, and its related Story/Plan/Bug/Case/Module has Branch added too.</p>');
$lang->misc->feature->all['7.4.beta'][] = array('title'=>'Release Module is improved.', 'desc' => '<p>Stop action has been added. If Stop to manage it, the Release will not show when Report Bug.</p><p>Bugs that have been omitted in the Release will be related manually.</p>');
$lang->misc->feature->all['7.4.beta'][] = array('title'=>'Create pages of Story and Bug are improved.', 'desc' => '');
$lang->misc->feature->all['7.2.stable'][] = array('title'=>'Security Enhanced', 'desc' => '<p>Admin weak passwork check is enhanced.</p><p>ok file is required when code/upload an extension.</p><p>Sensitive action requires Admin password.</p><p>Do striptags, specialchars to content entered in ZenTao.</p>');
$lang->misc->feature->all['7.2.stable'][] = array('title'=>'Details Improved', 'desc' => '');
$lang->misc->feature->all['7.1.stable'][] = array('title'=>'Framework of Cron is added.', 'desc' => 'Framework of Cron is added. Daily notification, Burndown Update, Backup, Send Email and so on have been added.');
$lang->misc->feature->all['7.1.stable'][] = array('title'=>'rpm and deb packages are provided.', 'desc' => '');
$lang->misc->feature->all['6.3.stable'][] = array('title'=>'Data table is added.', 'desc' => '<p>Fields can be customized in data table and data will be displayed according to customized fields.</p>');
$lang->misc->feature->all['6.3.stable'][] = array('title'=>'Continue improving details', 'desc' => '');
+3
View File
@@ -44,6 +44,7 @@ $lang->misc->zentao->support['qqgroup'] = "官方QQ群";
$lang->misc->zentao->cowin['reportbug'] = "汇报Bug";
$lang->misc->zentao->cowin['feedback'] = "反馈需求";
$lang->misc->zentao->cowin['translate'] = "参与翻译";
$lang->misc->zentao->cowin['recommend'] = "推荐给朋友";
$lang->misc->zentao->service['zentaotrain']= '禅道使用培训';
@@ -82,6 +83,7 @@ $lang->misc->feature = new stdclass();
$lang->misc->feature->lastest = '最新版本';
$lang->misc->feature->detailed = '详情';
$lang->misc->releaseDate['11.6.4'] = '2019-10-17';
$lang->misc->releaseDate['11.6.3'] = '2019-09-24';
$lang->misc->releaseDate['11.6.2'] = '2019-09-06';
$lang->misc->releaseDate['11.6.1'] = '2019-08-23';
@@ -115,6 +117,7 @@ $lang->misc->releaseDate['7.2.stable'] = '2015-05-22';
$lang->misc->releaseDate['7.1.stable'] = '2015-03-07';
$lang->misc->releaseDate['6.3.stable'] = '2014-11-07';
$lang->misc->feature->all['11.6.4'][] = array('title'=>'完善细节,修复Bug', 'desc' => '');
$lang->misc->feature->all['11.6.3'][] = array('title'=>'修复Bug', 'desc' => '');
$lang->misc->feature->all['11.6.2'][] = array('title'=>'完善细节,修复Bug', 'desc' => '');
$lang->misc->feature->all['11.6.1'][] = array('title'=>'完善细节,修复Bug', 'desc' => '');
+3
View File
@@ -44,6 +44,7 @@ $lang->misc->zentao->support['qqgroup'] = "官方QQ群";
$lang->misc->zentao->cowin['reportbug'] = "彙報Bug";
$lang->misc->zentao->cowin['feedback'] = "反饋需求";
$lang->misc->zentao->cowin['translate'] = "參與翻譯";
$lang->misc->zentao->cowin['recommend'] = "推薦給朋友";
$lang->misc->zentao->service['zentaotrain']= '禪道使用培訓';
@@ -82,6 +83,7 @@ $lang->misc->feature = new stdclass();
$lang->misc->feature->lastest = '最新版本';
$lang->misc->feature->detailed = '詳情';
$lang->misc->releaseDate['11.6.4'] = '2019-10-17';
$lang->misc->releaseDate['11.6.3'] = '2019-09-24';
$lang->misc->releaseDate['11.6.2'] = '2019-09-06';
$lang->misc->releaseDate['11.6.1'] = '2019-08-23';
@@ -115,6 +117,7 @@ $lang->misc->releaseDate['7.2.stable'] = '2015-05-22';
$lang->misc->releaseDate['7.1.stable'] = '2015-03-07';
$lang->misc->releaseDate['6.3.stable'] = '2014-11-07';
$lang->misc->feature->all['11.6.4'][] = array('title'=>'完善細節,修復Bug', 'desc' => '');
$lang->misc->feature->all['11.6.3'][] = array('title'=>'修復Bug', 'desc' => '');
$lang->misc->feature->all['11.6.2'][] = array('title'=>'完善細節,修復Bug', 'desc' => '');
$lang->misc->feature->all['11.6.1'][] = array('title'=>'完善細節,修復Bug', 'desc' => '');
+1
View File
@@ -399,6 +399,7 @@ class my extends control
$this->view->title = $this->lang->my->common . $this->lang->colon . $this->lang->my->changePassword;
$this->view->position[] = $this->lang->my->changePassword;
$this->view->user = $this->user->getById($this->app->user->account);
$this->view->rand = $this->user->updateSessionRandom();
$this->display();
}
+25
View File
@@ -0,0 +1,25 @@
$(document).ready(function()
{
var originalEncrypted = false;
$('#originalPassword').change(function(){originalEncrypted = false});
var password1Encrypted = false
var password2Encrypted = false
$('#password1').change(function(){password1Encrypted = false});
$('#password2').change(function(){password2Encrypted = false});
$('#submit').click(function()
{
var password = $('input#originalPassword').val();
var rand = $('input#verifyRand').val();
if(!originalEncrypted && password) $('input#originalPassword').val(md5(md5(password) + rand));
originalEncrypted = true;
var password1 = $('#password1').val();
var password2 = $('#password2').val();
if(password1 && !password1Encrypted) $('#password1').val(md5(password1) + rand);
if(password2 && !password2Encrypted) $('#password2').val(md5(password2) + rand);
password1Encrypted = true;
password2Encrypted = true;
});
});
+17 -1
View File
@@ -1,9 +1,25 @@
$(document).ready(function()
{
var verifyEncrypted = false;
$('#verifyPassword').change(function(){verifyEncrypted = false});
var password1Encrypted = false
var password2Encrypted = false
$('#password1').change(function(){password1Encrypted = false});
$('#password2').change(function(){password2Encrypted = false});
$('#dataform').submit(function()
{
var password = $('input#verifyPassword').val();
var rand = $('input#verifyRand').val();
$('input#verifyPassword').val(md5(md5(password) + rand));
if(!verifyEncrypted && password) $('input#verifyPassword').val(md5(md5(password) + rand));
verifyEncrypted = true;
var password1 = $('#password1').val();
var password2 = $('#password2').val();
if(password1 && !password1Encrypted) $('#password1').val(md5(password1) + rand);
if(password2 && !password2Encrypted) $('#password2').val(md5(password2) + rand);
password1Encrypted = true;
password2Encrypted = true;
});
});
+53
View File
@@ -0,0 +1,53 @@
<?php
$lang->my->common = 'Tableau de Bord';
/* Method List。*/
$lang->my->index = 'Accueil';
$lang->my->todo = 'Mon Agenda';
$lang->my->calendar = 'Calendrier';
$lang->my->task = 'Mes Tâches';
$lang->my->bug = 'Mes Bugs';
$lang->my->testTask = 'Mes Builds';
$lang->my->testCase = 'Mes CasTests';
$lang->my->story = 'Mes Stories';
$lang->my->myProject = "Mes {$lang->projectCommon}s";
$lang->my->profile = 'Mon Profil';
$lang->my->dynamic = 'Mon Historique';
$lang->my->editProfile = 'Edit Profil';
$lang->my->changePassword = 'Changer le Mot de Passe';
$lang->my->unbind = 'Dissocier de Zdoo';
$lang->my->manageContacts = 'Gérer Contact';
$lang->my->deleteContacts = 'Supprimer Contact';
$lang->my->shareContacts = 'Public';
$lang->my->limited = 'Actions Limitées (Les utilisateurs peuvent seulement éditer le contenu de ce qui leur est affecté.)';
$lang->my->score = 'Mes Points';
$lang->my->scoreRule = 'Règles Point';
$lang->my->noTodo = "Je n'ai rien à faire pour l'instant.";
$lang->my->taskMenu = new stdclass();
$lang->my->taskMenu->assignedToMe = "Tâches qui me sont affectées";
$lang->my->taskMenu->openedByMe = "Tâches que j'ai créées";
$lang->my->taskMenu->finishedByMe = "Tâches que j'ai terminées";
$lang->my->taskMenu->closedByMe = "Tâches que j'ai fermées";
$lang->my->taskMenu->canceledByMe = "Tâches que j'ai annulées";
$lang->my->storyMenu = new stdclass();
$lang->my->storyMenu->assignedToMe = 'Stories qui me sont affectées';
$lang->my->storyMenu->openedByMe = "Stories que j'ai créées";
$lang->my->storyMenu->reviewedByMe = "Stories que j'ai acceptées";
$lang->my->storyMenu->closedByMe = "Stories que j'ai fermées";
$lang->my->home = new stdclass();
$lang->my->home->latest = 'Historique';
$lang->my->home->action = "%s, %s <em>%s</em> %s <a href='%s'>%s</a>.";
$lang->my->home->projects = $lang->projectCommon;
$lang->my->home->products = $lang->productCommon;
$lang->my->home->createProject = "Créer un {$lang->projectCommon}";
$lang->my->home->createProduct = "Créer un {$lang->productCommon}";
$lang->my->home->help = "<a href='https://www.zentao.pm/book/zentaomanual/free-open-source-project-management-software-workflow-46.html' target='_blank'>Aide</a>";
$lang->my->home->noProductsTip = "Aucun {$lang->productCommon} ici.";
$lang->my->form = new stdclass();
$lang->my->form->lblBasic = 'Infos Basiques';
$lang->my->form->lblContact = 'Infos Contact';
$lang->my->form->lblAccount = 'Infos Compte';
+2
View File
@@ -11,6 +11,7 @@
*/
?>
<?php include '../../common/view/header.html.php';?>
<?php js::import($jsRoot . 'md5.js');?>
<?php if(!isonlybody()):?>
<style>
.main-content{width: 500px; margin: 0 auto;}
@@ -55,6 +56,7 @@
</div>
<?php endif;?>
</form>
<?php echo html::hidden('verifyRand', $rand);?>
</div>
<?php js::set('passwordStrengthList', $lang->user->passwordStrengthList)?>
<script>
+158
View File
@@ -0,0 +1,158 @@
<?php
/**
* The product module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package product
* @version $Id: en.php 5091 2013-07-10 06:06:46Z chencongzhi520@gmail.com $
* @link https://www.zentao.pm
*/
$lang->product->common = $lang->productCommon;
$lang->product->index = 'Accueil ' . $lang->productCommon;
$lang->product->browse = 'Liste Stories';
$lang->product->dynamic = 'Historique';
$lang->product->view = "{$lang->productCommon} Détail";
$lang->product->edit = "Editer {$lang->productCommon}";
$lang->product->batchEdit = 'Editer par Lot';
$lang->product->create = "Créer {$lang->productCommon}";
$lang->product->delete = "Supprimer {$lang->productCommon}";
$lang->product->deleted = 'Supprimé';
$lang->product->close = "Fermer";
$lang->product->closeAction = "Fermer {$lang->productCommon}";
$lang->product->select = "Choisir {$lang->productCommon}";
$lang->product->mine = 'Les miens:';
$lang->product->other = 'Autres:';
$lang->product->closed = 'Fermés';
$lang->product->updateOrder = 'Ordre';
$lang->product->orderAction = "Rang {$lang->productCommon}";
$lang->product->all = "Tous les {$lang->productCommon}s";
$lang->product->export = 'Export';
$lang->product->exportAction = "Export {$lang->productCommon}";
$lang->product->basicInfo = 'Infos de Base';
$lang->product->otherInfo = 'Autres Infos';
$lang->product->plans = 'Plans';
$lang->product->releases = 'Releases';
$lang->product->docs = 'Doc';
$lang->product->bugs = 'Bug Liés';
$lang->product->projects = "{$lang->projectCommon}s Liés";
$lang->product->cases = 'CasTests';
$lang->product->builds = 'Build';
$lang->product->roadmap = "Roadmap {$lang->productCommon}";
$lang->product->doc = "Documents {$lang->productCommon}";
$lang->product->project = ' Liste ' . $lang->projectCommon;
$lang->product->build = 'Liste Builds';
$lang->product->projectInfo = "Les {$lang->projectCommon}s qui sont associés à ce {$lang->productCommon} sont listés ci-dessous.";
$lang->product->currentProject = "{$lang->projectCommon}";
$lang->product->activeStories = 'Actives [S]';
$lang->product->activeStoriesTitle = 'Stories Actives';
$lang->product->changedStories = 'Changées [S]';
$lang->product->changedStoriesTitle = 'Stories Modifiées';
$lang->product->draftStories = 'Brouillon [S]';
$lang->product->draftStoriesTitle = 'Stories en Analyse';
$lang->product->closedStories = 'Fermées [S]';
$lang->product->closedStoriesTitle = 'Stories Fermées';
$lang->product->unResolvedBugs = 'Ouverts [B]';
$lang->product->unResolvedBugsTitle = 'Bugs Ouverts';
$lang->product->assignToNullBugs = 'Orphelins [B]';
$lang->product->assignToNullBugsTitle = 'Bugs non assignés';
$lang->product->confirmDelete = "Voulez-vous vraiment supprimer le {$lang->productCommon} ?";
$lang->product->errorNoProduct = "Aucun {$lang->productCommon} n'est créé pour l'instant !";
$lang->product->accessDenied = "Vous n'avez pas accès au {$lang->productCommon}.";
$lang->product->id = 'ID';
$lang->product->name = "Nom du {$lang->productCommon}";
$lang->product->code = 'Code';
$lang->product->line = "Ligne Produit";
$lang->product->order = 'Rang';
$lang->product->type = 'Type';
$lang->product->typeAB = 'Type';
$lang->product->status = 'Statut';
$lang->product->subStatus = 'Sub Statut';
$lang->product->desc = 'Description';
$lang->product->manager = 'Managers';
$lang->product->PO = "{$lang->productCommon} Owner";
$lang->product->QD = 'Quality Manager';
$lang->product->RD = 'Release Manager';
$lang->product->acl = "Contrôle accès";
$lang->product->whitelist = 'Liste Blanche';
$lang->product->branch = '%s';
$lang->product->qa = 'QA';
$lang->product->release = 'Release';
$lang->product->allRelease = 'Toutes Releases';
$lang->product->maintain = 'Maintenance';
$lang->product->latestDynamic = 'Historique';
$lang->product->plan = 'Plan';
$lang->product->iteration = 'Itérations';
$lang->product->iterationInfo = '%s Itération';
$lang->product->iterationView = 'Détail';
$lang->product->createdBy = 'CreatedBy';
$lang->product->createdDate = 'createdDate';
$lang->product->searchStory = 'Recherche';
$lang->product->assignedToMe = 'Affectées à Moi';
$lang->product->openedByMe = 'Créées par Moi';
$lang->product->reviewedByMe = 'Validées par Moi';
$lang->product->closedByMe = 'Fermées par Moi';
$lang->product->draftStory = 'A étudier';
$lang->product->activeStory = 'Actives';
$lang->product->changedStory = 'Changées';
$lang->product->willClose = 'A Fermer';
$lang->product->closedStory = 'Fermées';
$lang->product->unclosed = 'Ouvertes';
$lang->product->unplan = 'Non planifiées';
$lang->product->viewByUser = 'Par Utilisateur';
$lang->product->allStory = 'Toutes les Stories ';
$lang->product->allProduct = 'Tous';
$lang->product->allProductsOfProject = 'Tous les ' . $lang->productCommon . ' Associés';
$lang->product->typeList[''] = '';
$lang->product->typeList['normal'] = 'Normal';
$lang->product->typeList['branch'] = 'Multi-Branche';
$lang->product->typeList['platform'] = 'Multi-Plateforme';
$lang->product->typeTips = array();
$lang->product->typeTips['branch'] = ' (pour des contextes personnalisés, ex : équipes offshore)';
$lang->product->typeTips['platform'] = ' (pour des applications multi-plateformes, ex : IOS, Android, PC, etc.)';
$lang->product->branchName['normal'] = '';
$lang->product->branchName['branch'] = 'Branche';
$lang->product->branchName['platform'] = 'Plateforme';
$lang->product->statusList[''] = '';
$lang->product->statusList['normal'] = 'Normal';
$lang->product->statusList['closed'] = 'Fermé';
$lang->product->aclList['open'] = "Défaut (Les utilisateurs ayant des droits sur {$lang->productCommon} peuvent accéder à ce {$lang->productCommon}.)";
$lang->product->aclList['private'] = "{$lang->productCommon} Privé (seuls les membres de l'équipe {$lang->projectCommon} ont les droits)";
$lang->product->aclList['custom'] = "Personnalisé (les membres de l'équipe et les membres de la Liste blanche peuvent y accéder.)";
$lang->product->storySummary = "Total de <strong>%s</strong> stories sur cette page. Estimé: <strong>%s</strong> (h), et couverture de la recette: <strong>%s</strong>.";
$lang->product->checkedSummary = "<strong>%total%</strong> stories sélectionnées, Estimé: <strong>%estimate%</strong>, et couverture de la recette: <strong>%rate%</strong>.";
$lang->product->noModule = "<div>Vous n'avez aucun modules. </div><div>Gérer Maintenant</div>";
$lang->product->noProduct = "No {$lang->productCommon} à ce jour. ";
$lang->product->noMatched = '"%s" cannot be found.' . $lang->productCommon;
$lang->product->featureBar['browse']['allstory'] = $lang->product->allStory;
$lang->product->featureBar['browse']['unclosed'] = $lang->product->unclosed;
$lang->product->featureBar['browse']['assignedtome'] = $lang->product->assignedToMe;
$lang->product->featureBar['browse']['openedbyme'] = $lang->product->openedByMe;
$lang->product->featureBar['browse']['reviewedbyme'] = $lang->product->reviewedByMe;
$lang->product->featureBar['browse']['draftstory'] = $lang->product->draftStory;
$lang->product->featureBar['browse']['more'] = $lang->more;
$lang->product->featureBar['all']['noclosed'] = $lang->product->unclosed;
$lang->product->featureBar['all']['closed'] = $lang->product->statusList['closed'];
$lang->product->featureBar['all']['all'] = $lang->product->allProduct;
$lang->product->moreSelects['closedbyme'] = $lang->product->closedByMe;
$lang->product->moreSelects['activestory'] = $lang->product->activeStory;
$lang->product->moreSelects['changedstory'] = $lang->product->changedStory;
$lang->product->moreSelects['willclose'] = $lang->product->willClose;
$lang->product->moreSelects['closedstory'] = $lang->product->closedStory;
+80
View File
@@ -0,0 +1,80 @@
<?php
/**
* The productplan module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package productplan
* @version $Id: en.php 4659 2013-04-17 06:45:08Z chencongzhi520@gmail.com $
* @link https://www.zentao.pm
*/
$lang->productplan->common = $lang->productCommon . ' Plan';
$lang->productplan->browse = "Liste des Plans";
$lang->productplan->index = "Liste";
$lang->productplan->create = "Créer Plan";
$lang->productplan->edit = "Editer Plan";
$lang->productplan->delete = "Supprimer Plan";
$lang->productplan->view = "Détail Plan";
$lang->productplan->bugSummary = "Total <strong>%s</strong> Bugs sur cette page.";
$lang->productplan->basicInfo = 'Infos de Base';
$lang->productplan->batchEdit = 'Edition par Lot';
$lang->productplan->batchUnlink = "Retirer par lot";
$lang->productplan->linkStory = "Planifier Story";
$lang->productplan->unlinkStory = "Retirer Story";
$lang->productplan->unlinkStoryAB = "Retirer";
$lang->productplan->batchUnlinkStory = "Retirer par Lot";
$lang->productplan->linkedStories = 'Stories Planifiées';
$lang->productplan->unlinkedStories = 'Stories non Planifiées';
$lang->productplan->updateOrder = 'Ordre';
$lang->productplan->createChildren = "Créer Sous-Plans";
$lang->productplan->linkBug = "Planifier Bug";
$lang->productplan->unlinkBug = "Retirer Bug";
$lang->productplan->batchUnlinkBug = "Retirer Bugs par Lot";
$lang->productplan->linkedBugs = 'Bugs Planifiés';
$lang->productplan->unlinkedBugs = 'Bugs non Planifiés';
$lang->productplan->unexpired = 'Plans non échus';
$lang->productplan->all = 'Tous les Plans';
$lang->productplan->confirmDelete = "Voulez-vous supprimer ce plan ?";
$lang->productplan->confirmUnlinkStory = "Voulez-vous détacher cette Story du Plan ?";
$lang->productplan->confirmUnlinkBug = "Voulez-vous retirer ce bug du plan ?";
$lang->productplan->noPlan = "Aucun plan pour l'instant. ";
$lang->productplan->cannotDeleteParent = 'Cannot delete parent plan';
$lang->productplan->id = 'ID';
$lang->productplan->product = $lang->productCommon;
$lang->productplan->branch = 'Platforme/Branche';
$lang->productplan->title = 'Titre';
$lang->productplan->desc = 'Description';
$lang->productplan->begin = 'Début';
$lang->productplan->end = 'Fin';
$lang->productplan->last = 'Dernier Plan';
$lang->productplan->future = 'A Définir';
$lang->productplan->stories = 'Story';
$lang->productplan->bugs = 'Bug';
$lang->productplan->hour = 'Heures';
$lang->productplan->project = $lang->projectCommon;
$lang->productplan->parent = "Plan Parent";
$lang->productplan->children = "Sous-Plan";
$lang->productplan->order = "Order";
$lang->productplan->deleted = "Deleted";
$lang->productplan->endList[7] = '1 Semaine';
$lang->productplan->endList[14] = '2 Semaines';
$lang->productplan->endList[31] = '1 Mois';
$lang->productplan->endList[62] = '2 Mois';
$lang->productplan->endList[93] = '3 Mois';
$lang->productplan->endList[186] = '6 Mois';
$lang->productplan->endList[365] = '1 Année';
$lang->productplan->errorNoTitle = 'ID %s titre ne doit pas être à blanc.';
$lang->productplan->errorNoBegin = "ID %s l'heure de début devrait être renseignée.";
$lang->productplan->errorNoEnd = "ID %s l'heure de fin devrait être renseignée.";
$lang->productplan->beginGeEnd = "ID %s l'heure de début ne doit pas être >= à l'heure de fin.";
$lang->productplan->featureBar['browse']['all'] = 'Tous';
$lang->productplan->featureBar['browse']['unexpired'] = 'Non échus';
$lang->productplan->featureBar['browse']['overdue'] = 'Echus';
+361
View File
@@ -0,0 +1,361 @@
<?php
/**
* The project module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package project
* @version $Id: en.php 5094 2013-07-10 08:46:15Z chencongzhi520@gmail.com $
* @link https://www.zentao.pm
*/
/* Fields. */
$lang->project->common = $lang->projectCommon;
$lang->project->allProjects = 'Tous les ' . $lang->projectCommon . 's';
$lang->project->id = $lang->projectCommon . ' ID';
$lang->project->type = 'Type';
$lang->project->name = "Nom du {$lang->projectCommon}";
$lang->project->code = 'Code';
$lang->project->statge = 'Stage';
$lang->project->pri = 'Priority';
$lang->project->openedBy = 'OpenedBy';
$lang->project->openedDate = 'OpenedDate';
$lang->project->closedBy = 'ClosedBy';
$lang->project->closedDate = 'ClosedDate';
$lang->project->canceledBy = 'CanceledBy';
$lang->project->canceledDate = 'CanceledDate';
$lang->project->begin = 'Début';
$lang->project->end = 'Fin';
$lang->project->dateRange = 'Durée';
$lang->project->to = 'à';
$lang->project->days = 'Budget Jours';
$lang->project->day = ' Jours';
$lang->project->workHour = ' Heures';
$lang->project->totalHours = 'Budget (Heure)';
$lang->project->totalDays = 'Budget (Jour)';
$lang->project->status = 'Statut';
$lang->project->subStatus = 'Sub Status';
$lang->project->desc = 'Description';
$lang->project->owner = 'Propriétaire';
$lang->project->PO = "Propriétaire {$lang->projectCommon}";
$lang->project->PM = "Directeur {$lang->projectCommon}";
$lang->project->QD = 'Quality Manager';
$lang->project->RD = 'Release Manager';
$lang->project->qa = 'QA';
$lang->project->release = 'Release';
$lang->project->acl = "Contrôle d'accès";
$lang->project->teamname = "Nom de l'équipe";
$lang->project->order = "Rang du {$lang->projectCommon}";
$lang->project->orderAB = "Rang";
$lang->project->products = "{$lang->productCommon} liés";
$lang->project->whitelist = 'Liste Blanche';
$lang->project->totalEstimate = 'Estimé';
$lang->project->totalConsumed = 'Coût';
$lang->project->totalLeft = 'Reste';
$lang->project->progress = ' Progrès';
$lang->project->hours = 'Estimé: %s, Coût: %s, Reste: %s.';
$lang->project->viewBug = 'Bugs';
$lang->project->noProduct = "Aucun {$lang->productCommon} pour l'instant.";
$lang->project->createStory = "Créer une Story";
$lang->project->all = "Tous les {$lang->projectCommon}s";
$lang->project->undone = 'Non Terminé';
$lang->project->unclosed = 'Non Fermées';
$lang->project->typeDesc = "Aucune story, bug, build, test, ou graph d'atterrissage n'est disponible";
$lang->project->mine = 'A Moi: ';
$lang->project->other = 'Autres:';
$lang->project->deleted = 'Supprimé';
$lang->project->delayed = 'Ajourné';
$lang->project->product = $lang->project->products;
$lang->project->readjustTime = "Adjuster Début et Fin du {$lang->projectCommon}";
$lang->project->readjustTask = 'Adjuster Début et Fin de la Tâche';
$lang->project->effort = 'Effort';
$lang->project->relatedMember = 'Equipe';
$lang->project->watermark = 'Exporté par ZenTao';
$lang->project->viewByUser = 'Par Utilisateur';
$lang->project->start = 'Démarrer';
$lang->project->activate = 'Activer';
$lang->project->putoff = 'Ajourner';
$lang->project->suspend = 'Suspendre';
$lang->project->close = 'Fermer';
$lang->project->export = 'Exporter';
$lang->project->typeList['sprint'] = 'Sprint';
$lang->project->typeList['waterfall'] = 'En Cascade';
$lang->project->typeList['ops'] = 'OPS';
$lang->project->endList[7] = '1 Semaine';
$lang->project->endList[14] = '2 Semaines';
$lang->project->endList[31] = '1 Mois';
$lang->project->endList[62] = '2 Mois';
$lang->project->endList[93] = '3 Mois';
$lang->project->endList[186] = '6 Mois';
$lang->project->endList[365] = '1 Année';
$lang->team = new stdclass();
$lang->team->account = 'Utilisateur';
$lang->team->role = 'Rôle';
$lang->team->join = 'Ajouté';
$lang->team->hours = 'Heure/jour';
$lang->team->days = 'Jour';
$lang->team->totalHours = 'Total Heures';
$lang->team->limited = 'Restrictions';
$lang->team->limitedList['yes'] = 'Oui';
$lang->team->limitedList['no'] = 'Non';
$lang->project->basicInfo = 'Informations de base';
$lang->project->otherInfo = 'Autres Informations';
/* 字段取值列表。*/
$lang->project->statusList['wait'] = 'En attente';
$lang->project->statusList['doing'] = 'En cours';
$lang->project->statusList['suspended'] = 'Suspendu';
$lang->project->statusList['closed'] = 'Fermé';
$lang->project->aclList['open'] = "Défaut (les utilisateurs qui peuvent consulter l'onglet {$lang->projectCommon} peuvent y accéder.)";
$lang->project->aclList['private'] = "Privé (réservé aux membres de l'équipe.)";
$lang->project->aclList['custom'] = "Liste blanche (seuls les membres de l'équipe et de la Liste Blanche peuvent y accéder.)";
/* 方法列表。 Méthode List */
$lang->project->index = "Accueil {$lang->projectCommon}";
$lang->project->task = 'Liste Tâches';
$lang->project->groupTask = 'Vision Groupée';
$lang->project->story = 'Liste Stories';
$lang->project->bug = 'Liste Bugs';
$lang->project->dynamic = 'Historique';
$lang->project->latestDynamic = 'Historique';
$lang->project->build = 'Liste Builds';
$lang->project->testtask = 'Recette';
$lang->project->burn = ' Atterrissage';
$lang->project->computeBurn = 'Calculer';
$lang->project->burnData = "Données d'atterrissage";
$lang->project->fixFirst = 'Fixer 1er-Jour Estimation';
$lang->project->team = 'Membres';
$lang->project->doc = 'Documents';
$lang->project->doclib = 'Répertoire de Documents';
$lang->project->manageProducts = 'Liaisons du ' . $lang->projectCommon . ' avec les ' . $lang->productCommon . 's';
$lang->project->linkStory = 'Stories liées';
$lang->project->linkStoryByPlan = 'Stories liées par Plan';
$lang->project->linkPlan = 'Plans liés';
$lang->project->unlinkStoryTasks = 'Dissocier';
$lang->project->linkedProducts = "{$lang->productCommon}s liés à ce {$lang->projectCommon}";
$lang->project->unlinkedProducts = "{$lang->productCommon}s dissociés de ce {$lang->projectCommon}";
$lang->project->view = "Détail du {$lang->projectCommon}";
$lang->project->startAction = "Commencer le {$lang->projectCommon}";
$lang->project->activateAction = "Activer le {$lang->projectCommon}";
$lang->project->delayAction = "Ajourner le {$lang->projectCommon}";
$lang->project->suspendAction = "Suspendre le {$lang->projectCommon}";
$lang->project->closeAction = "Fermer le {$lang->projectCommon}";
$lang->project->testtaskAction = "Recettes du {$lang->projectCommon}";
$lang->project->teamAction = "Membres du {$lang->projectCommon}";
$lang->project->kanbanAction = "Kaban {$lang->projectCommon}";
$lang->project->printKanbanAction = "Imprimer le Kanban";
$lang->project->treeAction = "Arborescence {$lang->projectCommon}";
$lang->project->exportAction = "Exporter {$lang->projectCommon}";
$lang->project->computeBurnAction = "Calculer Atterrissage";
$lang->project->create = "Créer {$lang->projectCommon}";
$lang->project->copy = "Copier {$lang->projectCommon}";
$lang->project->delete = "Supprimer {$lang->projectCommon}";
$lang->project->browse = "Liste du {$lang->projectCommon}";
$lang->project->edit = "Editer {$lang->projectCommon}";
$lang->project->batchEdit = "Edition par lot";
$lang->project->manageMembers = 'Organiser Equipe';
$lang->project->unlinkMember = 'Retirer le membre';
$lang->project->unlinkStory = 'Dissocier Story';
$lang->project->unlinkStoryAB = 'Dissocier';
$lang->project->batchUnlinkStory = 'Dissocier Stories par lot';
$lang->project->importTask = 'Transfert Tâche';
$lang->project->importPlanStories = 'Lier Stories Par Plan';
$lang->project->importBug = 'Importer Bug';
$lang->project->updateOrder = "Rang {$lang->projectCommon}";
$lang->project->tree = 'Arboressence';
$lang->project->treeTask = 'Seulement les Tâches';
$lang->project->treeStory = 'Seulement les Stories';
$lang->project->treeOnlyTask = 'Seulement les Tâches';
$lang->project->treeOnlyStory = 'Seulement les Stories';
$lang->project->storyKanban = 'Story Kanban';
$lang->project->storySort = 'Rang Story';
$lang->project->importPlanStory = $lang->projectCommon . ' est créé!\nVoulez-vous importer des stories qui ont été ajoutées au Plan ?';
$lang->project->iteration = 'Itérations';
$lang->project->iterationInfo = '%s Itérations';
$lang->project->viewAll = 'Voir Tout';
/* 分组浏览。*/
$lang->project->allTasks = 'Voir Toutes';
$lang->project->assignedToMe = 'à Moi';
$lang->project->myInvolved = "Où j'ai participé";
$lang->project->statusSelects[''] = 'Plus...';
$lang->project->statusSelects['wait'] = 'En Attente';
$lang->project->statusSelects['doing'] = 'En Cours';
$lang->project->statusSelects['undone'] = 'Unfinished';
$lang->project->statusSelects['finishedbyme'] = 'Terminées par moi';
$lang->project->statusSelects['done'] = 'Faites';
$lang->project->statusSelects['closed'] = 'Fermées';
$lang->project->statusSelects['cancel'] = 'Annulées';
$lang->project->groups[''] = 'Vision groupée';
$lang->project->groups['story'] = 'Grouper par Story';
$lang->project->groups['status'] = 'Grouper par Statut';
$lang->project->groups['pri'] = 'Grouper par Priorité';
$lang->project->groups['assignedTo'] = 'Grouper par Assignation';
$lang->project->groups['finishedBy'] = 'Grouper par Finisseur';
$lang->project->groups['closedBy'] = 'Grouper par Clôtureur';
$lang->project->groups['type'] = 'Grouper par Type';
$lang->project->groupFilter['story']['all'] = 'Toutes';
$lang->project->groupFilter['story']['linked'] = 'Tâches lies à des stories';
$lang->project->groupFilter['pri']['all'] = 'Toutes';
$lang->project->groupFilter['pri']['noset'] = 'Non Spécifiée';
$lang->project->groupFilter['assignedTo']['undone'] = 'Non Terminées';
$lang->project->groupFilter['assignedTo']['all'] = 'Toutes';
$lang->project->byQuery = 'Recherche';
/* 查询条件列表。*/
$lang->project->allProject = "Tous les {$lang->projectCommon}s";
$lang->project->aboveAllProduct = "Tous les {$lang->productCommon}s dépendants";
$lang->project->aboveAllProject = "Tous les {$lang->projectCommon}s dépendants";
/* 页面提示。*/
$lang->project->linkStoryByPlanTips = "Cette action va lier toutes les stories incluses dans le plan à ce {$lang->projectCommon}.";
$lang->project->selectProject = "Sélectionner {$lang->projectCommon}";
$lang->project->beginAndEnd = 'Durée';
$lang->project->begin = 'Début';
$lang->project->end = 'Fin';
$lang->project->lblStats = 'Efforts';
$lang->project->stats = 'Disponible: <strong>%s</strong>(h). Estimé: <strong>%s</strong>(h). Coût: <strong>%s</strong>(h). Reste: <strong>%s</strong>(h).';
$lang->project->taskSummary = "Total des tâches de cette page :<strong>%s</strong>. A Faire: <strong>%s</strong>. En cours: <strong>%s</strong>. &nbsp;&nbsp;&nbsp; Estimé: <strong>%s</strong>(h). Coût: <strong>%s</strong>(h). Reste: <strong>%s</strong>(h).";
$lang->project->checkedSummary = "Sélectionné: <strong>%total%</strong>. A Faire: <strong>%wait%</strong>. En cours: <strong>%doing%</strong>. &nbsp;&nbsp;&nbsp; Estimé: <strong>%estimate%</strong>(h). Coût: <strong>%consumed%</strong>(h). Reste: <strong>%left%</strong>(h).";
$lang->project->memberHoursAB = "%s a <strong>%s</ strong> heures.";
$lang->project->memberHours = '<div class="table-col"><div class="clearfix segments"><div class="segment"><div class="segment-title">%s Heures Disponibles</div><div class="segment-value">%s</div></div></div></div>';
$lang->project->countSummary = '<div class="table-col"><div class="clearfix segments"><div class="segment"><div class="segment-title">Tâches</div><div class="segment-value">%s</div></div><div class="segment"><div class="segment-title">En Cours</div><div class="segment-value"><span class="label label-dot label-primary"></span> %s</div></div><div class="segment"><div class="segment-title">A Faire</div><div class="segment-value"><span class="label label-dot label-primary muted"></span> %s</div></div></div></div>';
$lang->project->timeSummary = '<div class="table-col"><div class="clearfix segments"><div class="segment"><div class="segment-title">Estimé</div><div class="segment-value">%s</div></div><div class="segment"><div class="segment-title">Coût</div><div class="segment-value text-red">%s</div></div><div class="segment"><div class="segment-title">Reste</div><div class="segment-value">%s</div></div></div></div>';
$lang->project->groupSummaryAB = "<div>Tâches <strong>%s :</strong><span class='text-muted'>A Faire</span> %s &nbsp; <span class='text-muted'>En Cours</span> %s</div><div>Estimé <strong>%s :</strong><span class='text-muted'>Coût</span> %s &nbsp; <span class='text-muted'>Reste</span> %s</div>";
$lang->project->wbs = "Créer Tâche";
$lang->project->batchWBS = "Créer Tâche en lot";
$lang->project->howToUpdateBurn = "<a href='https://api.zentao.pm/goto.php?item=burndown' target='_blank' title='Comment mettre à jour le Graphe d´atterrissage ?' class='btn btn-link'>Mise à jour <i class='icon icon-help'></i></a>";
$lang->project->whyNoStories = "Aucune story ne peut être associée. Vérifiez s'il existe des stories dans {$lang->projectCommon} qui sont associées à {$lang->productCommon} et vérifiez qu'elles ont bien été validées.";
$lang->project->productStories = "Les stories associées au {$lang->projectCommon} sont une portion des stories associées au {$lang->productCommon}. Les stories ne peuvent être associées à un {$lang->projectCommon} qu'après avoir été validées. <a href='%s'> Associer Stories</a> maintenant.";
$lang->project->haveDraft = "%s stories sont encore en conception, elles ne peuvent pas être associées au {$lang->projectCommon} actuellement.";
$lang->project->doneProjects = 'Terminé';
$lang->project->selectDept = 'Sélection Compartiment';
$lang->project->selectDeptTitle = 'Sélection Utilisateur';
$lang->project->copyTeam = 'Copier Equipe';
$lang->project->copyFromTeam = "Copié de l'Equipe {$lang->projectCommon} : <strong>%s</strong>";
$lang->project->noMatched = "Aucun $lang->projectCommon inclus '%s' ne peut être trouvé.";
$lang->project->copyTitle = "Choisissez un {$lang->projectCommon} à copier.";
$lang->project->copyTeamTitle = "Choisissez une Equipe {$lang->projectCommon} à copier.";
$lang->project->copyNoProject = "Aucun {$lang->projectCommon} ne peut être copié.";
$lang->project->copyFromProject = "Copié du {$lang->projectCommon} <strong>%s</strong>";
$lang->project->cancelCopy = 'Annuler la copie';
$lang->project->byPeriod = 'Par Temps';
$lang->project->byUser = 'Par Utilisateur';
$lang->project->noProject = "Aucun {$lang->projectCommon}. ";
$lang->project->noMembers = "Actuellement il n'y a aucun membre dans l'équipe. On ne va pas aller loin... ";
/* 交互提示。*/
$lang->project->confirmDelete = "Voulez-vous réellement supprimer le {$lang->projectCommon}[%s] ?";
$lang->project->confirmUnlinkMember = "Voulez-vous retirer cet utilisateur du {$lang->projectCommon} ?";
$lang->project->confirmUnlinkStory = "Voulez-vous retirer cette Story du {$lang->projectCommon} ?";
$lang->project->errorNoLinkedProducts = "Aucun {$lang->productCommon} n'est associé à ce {$lang->projectCommon}. Vous allez être redirigé vers la page {$lang->productCommon} pour en associer un.";
$lang->project->errorSameProducts = "Ce {$lang->projectCommon} ne peut pas être associé deux fois au même {$lang->productCommon}. Imaginez un peu les résultats !";
$lang->project->accessDenied = "Votre accès au {$lang->projectCommon} est refusé ! Désolé.";
$lang->project->tips = 'Note';
$lang->project->afterInfo = "Le {$lang->projectCommon} a été créé avec succès ! Ensuite vous pouvez ";
$lang->project->setTeam = "Composer l'Equipe";
$lang->project->linkStory = 'Associer Story';
$lang->project->createTask = 'Créer des Tâches';
$lang->project->goback = "Revenir en arrière";
$lang->project->noweekend = 'Exclure les Weekends';
$lang->project->withweekend = 'Inclure les Weekends';
$lang->project->interval = 'Intervals';
$lang->project->fixFirstWithLeft = 'Mettre à jour les heures également';
$lang->project->action = new stdclass();
$lang->project->action->opened = '$date, créée par <strong>$actor</strong> .' . "\n";
$lang->project->action->managed = '$date, gérée par <strong>$actor</strong> .' . "\n";
$lang->project->action->extra = "Les {$lang->productCommon}s associés sont %s.";
/* 统计。*/
$lang->project->charts = new stdclass();
$lang->project->charts->burn = new stdclass();
$lang->project->charts->burn->graph = new stdclass();
$lang->project->charts->burn->graph->caption = " Graph d'atterrissage";
$lang->project->charts->burn->graph->xAxisName = "Date";
$lang->project->charts->burn->graph->yAxisName = "Heure";
$lang->project->charts->burn->graph->baseFontSize = 12;
$lang->project->charts->burn->graph->formatNumber = 0;
$lang->project->charts->burn->graph->animation = 0;
$lang->project->charts->burn->graph->rotateNames = 1;
$lang->project->charts->burn->graph->showValues = 0;
$lang->project->charts->burn->graph->reference = 'Idéal';
$lang->project->charts->burn->graph->actuality = 'Actuel';
$lang->project->placeholder = new stdclass();
$lang->project->placeholder->code = "Abréviation du nom du {$lang->projectCommon}";
$lang->project->placeholder->totalLeft = "Heures estimées le premier jour du {$lang->projectCommon}.";
$lang->project->selectGroup = new stdclass();
$lang->project->selectGroup->done = '(Fait)';
$lang->project->orderList['order_asc'] = "Story Rang Ascendant";
$lang->project->orderList['order_desc'] = "Story Rang Descendant";
$lang->project->orderList['pri_asc'] = "Story Priorité Ascendante";
$lang->project->orderList['pri_desc'] = "Story Priorité Descendante";
$lang->project->orderList['stage_asc'] = "Story Phase Ascendante";
$lang->project->orderList['stage_desc'] = "Story Phase Descendante";
$lang->project->kanban = "Kanban";
$lang->project->kanbanSetting = "Paramétrage";
$lang->project->resetKanban = "Réinitialiser";
$lang->project->printKanban = "Impression";
$lang->project->bugList = "Bugs";
$lang->project->kanbanHideCols = 'Colomnes masquées';
$lang->project->kanbanShowOption = 'Unfold';
$lang->project->kanbanColsColor = 'Personnalisation Couleurs';
$lang->kanbanSetting = new stdclass();
$lang->kanbanSetting->noticeReset = 'Voulez-vous réinitialiser le tableau Kanban ?';
$lang->kanbanSetting->optionList['0'] = 'Masquer';
$lang->kanbanSetting->optionList['1'] = 'Montrer';
$lang->printKanban = new stdclass();
$lang->printKanban->common = 'Imprimer Kanban';
$lang->printKanban->content = 'Contenu';
$lang->printKanban->print = 'Imprimer';
$lang->printKanban->taskStatus = 'Statut';
$lang->printKanban->typeList['all'] = 'Tout';
$lang->printKanban->typeList['increment'] = 'Incrément';
$lang->project->featureBar['task']['all'] = $lang->project->allTasks;
$lang->project->featureBar['task']['unclosed'] = $lang->project->unclosed;
$lang->project->featureBar['task']['assignedtome'] = $lang->project->assignedToMe;
$lang->project->featureBar['task']['myinvolved'] = $lang->project->myInvolved;
$lang->project->featureBar['task']['delayed'] = 'Ajournées';
$lang->project->featureBar['task']['needconfirm'] = 'A confirmer';
$lang->project->featureBar['task']['status'] = $lang->project->statusSelects[''];
$lang->project->featureBar['all']['all'] = $lang->project->all;
$lang->project->featureBar['all']['undone'] = $lang->project->undone;
$lang->project->featureBar['all']['wait'] = $lang->project->statusList['wait'];
$lang->project->featureBar['all']['doing'] = $lang->project->statusList['doing'];
$lang->project->featureBar['all']['suspended'] = $lang->project->statusList['suspended'];
$lang->project->featureBar['all']['closed'] = $lang->project->statusList['closed'];
$lang->project->treeLevel = array();
$lang->project->treeLevel['all'] = 'Déplier Tout';
$lang->project->treeLevel['root'] = 'Masquer Tout';
$lang->project->treeLevel['task'] = 'Stories&Tâches';
$lang->project->treeLevel['story'] = 'Seulement Stories';
global $config;
if($config->global->flow == 'onlyTask')
{
unset($lang->project->groups['story']);
unset($lang->project->featureBar['task']['needconfirm']);
}
+2 -2
View File
@@ -1564,10 +1564,10 @@ class projectModel extends model
$versions = $this->loadModel('story')->getVersions($stories);
$linkedStories = $this->dao->select('*')->from(TABLE_PROJECTSTORY)->where('project')->eq($projectID)->orderBy('order_desc')->fetchPairs('story', 'order');
$lastOrder = reset($linkedStories);
$statusPairs = $this->dao->select('id, status')->from(TABLE_STORY)->where('id')->in(array_values($stories))->fetchPairs();
foreach($stories as $key => $storyID)
{
$status = $this->dao->findById($storyID)->from(TABLE_STORY)->fetch('status');
if($status == 'draft') continue;
if($statusPairs[$storyID] == 'draft') continue;
if(isset($linkedStories[$storyID])) continue;
$productID = (int)$products[$storyID];
+13
View File
@@ -0,0 +1,13 @@
<?php
/**
* The qa module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package company
* @version $Id: en.php 4129 2013-01-18 01:58:14Z wwccss $
* @link https://www.zentao.pm
*/
$lang->qa->common = 'QA';
$lang->qa->index = 'Accueil Qualité';
+75
View File
@@ -0,0 +1,75 @@
<?php
/**
* The release module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package release
* @version $Id: en.php 4129 2013-01-18 01:58:14Z wwccss $
* @link https://www.zentao.pm
*/
$lang->release->common = 'Release';
$lang->release->create = "Créer Release";
$lang->release->edit = "Editer Release";
$lang->release->linkStory = "Intégrer Story";
$lang->release->linkBug = "Intégrer Bug";
$lang->release->delete = "Supprimer Release";
$lang->release->deleted = 'Supprimée';
$lang->release->view = "Détail Release";
$lang->release->browse = "Liste Release";
$lang->release->changeStatus = "Change Statut";
$lang->release->batchUnlink = "Retirer par Lot";
$lang->release->batchUnlinkStory = "Retirer Stories par Lot";
$lang->release->batchUnlinkBug = "Retirer Bugs par Lot";
$lang->release->confirmDelete = "Voulez-vous réellement supprimer cette release ?";
$lang->release->confirmUnlinkStory = "Voulez-vous retirer cette story de la release ?";
$lang->release->confirmUnlinkBug = "Voulez-vous retirer ce bug de la release ?";
$lang->release->existBuild = '『Build』『%s』existant. Vous pouvez changer『name』ou choisir un『build』.';
$lang->release->noRelease = 'Pas de release à ce jour.';
$lang->release->errorDate = 'The release date should not be greater than today.';
$lang->release->basicInfo = 'Infos de Base';
$lang->release->id = 'ID';
$lang->release->product = $lang->productCommon;
$lang->release->branch = 'Platforme/Branche';
$lang->release->build = 'Build';
$lang->release->name = 'Nom';
$lang->release->marker = 'Etape Importante';
$lang->release->date = 'Date Release';
$lang->release->desc = 'Description';
$lang->release->status = 'Statut';
$lang->release->subStatus = 'Sub Statut';
$lang->release->last = 'Dernière Release';
$lang->release->unlinkStory = 'Retirer Story';
$lang->release->unlinkBug = 'Retirer Bug';
$lang->release->stories = 'Stories Terminées';
$lang->release->bugs = 'Bugs Résolus';
$lang->release->leftBugs = 'Bugs Actifs';
$lang->release->generatedBugs = 'Bugs Actifs';
$lang->release->finishStories = '%s Stories Terminées';
$lang->release->resolvedBugs = '%s Bugs Résolus';
$lang->release->createdBugs = '%s Bugs non résolus';
$lang->release->export = 'Export HTML';
$lang->release->yesterday = 'Versionné Hier';
$lang->release->all = 'All';
$lang->release->filePath = 'Télecharger : ';
$lang->release->scmPath = 'SCM Path : ';
$lang->release->exportTypeList['all'] = 'Tous';
$lang->release->exportTypeList['story'] = 'Story';
$lang->release->exportTypeList['bug'] = 'Bug';
$lang->release->exportTypeList['leftbug'] = 'Bug Actifs';
$lang->release->statusList[''] = '';
$lang->release->statusList['normal'] = 'Normale';
$lang->release->statusList['terminate'] = 'Terminée';
$lang->release->changeStatusList['normal'] = 'Active';
$lang->release->changeStatusList['terminate'] = 'Terminée';
$lang->release->action = new stdclass();
$lang->release->action->changestatus = array('main' => '$date, $extra par <strong>$actor</strong>', 'extra' => 'changeStatusList');
+102
View File
@@ -0,0 +1,102 @@
<?php
/**
* The report module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package report
* @version $Id: en.php 5080 2013-07-10 00:46:59Z wyd621@gmail.com $
* @link https://www.zentao.pm
*/
$lang->report->common = 'Rapports';
$lang->report->index = 'Accueil Rapports';
$lang->report->list = 'Rapports';
$lang->report->item = 'Item';
$lang->report->value = 'Valeur';
$lang->report->percent = '%';
$lang->report->undefined = 'N/D';
$lang->report->query = 'Query';
$lang->report->colors[] = 'AFD8F8';
$lang->report->colors[] = 'F6BD0F';
$lang->report->colors[] = '8BBA00';
$lang->report->colors[] = 'FF8E46';
$lang->report->colors[] = '008E8E';
$lang->report->colors[] = 'D64646';
$lang->report->colors[] = '8E468E';
$lang->report->colors[] = '588526';
$lang->report->colors[] = 'B3AA00';
$lang->report->colors[] = '008ED6';
$lang->report->colors[] = '9D080D';
$lang->report->colors[] = 'A186BE';
$lang->report->assign['noassign'] = 'Non affecté';
$lang->report->assign['assign'] = 'Affecté';
$lang->report->singleColor[] = 'F6BD0F';
$lang->report->projectDeviation = 'Dérive ' . $lang->projectCommon;
$lang->report->productSummary = 'Résumé ' . $lang->productCommon;
$lang->report->bugCreate = 'Résumé remontée Bugs';
$lang->report->bugAssign = 'Résumé affectation Bugs';
$lang->report->workload = 'Résumé charge travail';
$lang->report->workloadAB = 'Charge Travail';
$lang->report->bugOpenedDate = 'Bugs signalés de';
$lang->report->beginAndEnd = ' de';
$lang->report->dept = 'Compartiment';
$lang->report->deviationChart = 'Graphique de Dérive du ' . $lang->projectCommon;
$lang->reportList->project->lists[10] = 'Dérive ' . $lang->projectCommon . '|report|projectdeviation';
$lang->reportList->product->lists[10] = 'Résumé ' . $lang->productCommon . '|report|productsummary';
$lang->reportList->test->lists[10] = 'Résumé remontée Bugs|report|bugcreate';
$lang->reportList->test->lists[13] = 'Résumé affectation Bugs|report|bugassign';
$lang->reportList->staff->lists[10] = 'Résumé charge travail|report|workload';
$lang->report->id = 'ID';
$lang->report->project = $lang->projectCommon;
$lang->report->product = $lang->productCommon;
$lang->report->user = 'Utilisateur';
$lang->report->bugTotal = 'Bugs';
$lang->report->task = 'Tâches';
$lang->report->estimate = 'Estimé';
$lang->report->consumed = 'Coût';
$lang->report->remain = 'Reste';
$lang->report->deviation = 'Dérive';
$lang->report->deviationRate = 'Taux Dérive';
$lang->report->total = 'Total';
$lang->report->to = 'à';
$lang->report->taskTotal = "Tâches Totales";
$lang->report->manhourTotal = "Heures Totales";
$lang->report->validRate = "Taux Validation";
$lang->report->validRateTips = "Résolution est Résolu/Reporté ou statut est Résolu/Fermé.";
$lang->report->unplanned = 'Non planifié';
$lang->report->workday = 'Heures/Jour';
$lang->report->diffDays = 'jours';
$lang->report->typeList['default'] = 'Défaut';
$lang->report->typeList['pie'] = 'Camenbert';
$lang->report->typeList['bar'] = 'Barres';
$lang->report->typeList['line'] = 'Lignes';
$lang->report->conditions = 'Filtré par :';
$lang->report->closedProduct = $lang->productCommon . 's Fermés';
$lang->report->overduePlan = 'Plans Echus';
/* daily reminder. */
$lang->report->idAB = 'ID';
$lang->report->bugTitle = 'Nom Bug';
$lang->report->taskName = 'Nom Tâche';
$lang->report->todoName = 'Nom Agenda';
$lang->report->testTaskName = 'Nom Recette';
$lang->report->deadline = 'Date Butoir';
$lang->report->mailTitle = new stdclass();
$lang->report->mailTitle->begin = 'Note : Vous avez';
$lang->report->mailTitle->bug = " Bug (%s),";
$lang->report->mailTitle->task = " Tâches (%s),";
$lang->report->mailTitle->todo = " Agenda (%s),";
$lang->report->mailTitle->testTask = " Recettes (%s),";
$lang->report->proVersion = '<a href="https://www.zentao.pm/page/vs.html" target="_blank">Try ZenTao Pro for more!</a>';
$lang->report->proVersionEn = '<a href="https://www.zentao.pm/page/vs.html" target="_blank">Try ZenTao Pro for more!</a>';
+88
View File
@@ -0,0 +1,88 @@
<?php
$lang->score->common = 'Mes Points';
$lang->score->record = 'Points';
$lang->score->current = 'Mes Points';
$lang->score->level = 'Niveau de Points';
$lang->score->reset = 'Réinitialiser';
$lang->score->tips = 'Points obtenus hier : <strong>%d</strong><br/> Total Points: <strong>%d</strong>';
$lang->score->resetTips = 'Ca va prendre un moment. <strong>Ne fermez pas la fenêtre.</strong>';
$lang->score->resetStart = 'Démarrer';
$lang->score->resetLoading = 'Calcul en cours : ';
$lang->score->resetFinish = 'Terminé';
$lang->score->id = 'ID';
$lang->score->userID = 'UserID';
$lang->score->account = 'User';
$lang->score->module = 'Module';
$lang->score->method = 'Actions';
$lang->score->before = 'Avant';
$lang->score->score = '+/-';
$lang->score->after = 'Après';
$lang->score->time = 'Heure';
$lang->score->desc = 'Description';
$lang->score->noLimit = 'Sans limite';
$lang->score->times = 'Heures';
$lang->score->hour = 'Heures';
$lang->score->modules['task'] = 'Tâche';
$lang->score->modules['tutorial'] = 'Tutoriel';
$lang->score->modules['user'] = 'User';
$lang->score->modules['ajax'] = 'Autre';
$lang->score->modules['doc'] = 'Document';
$lang->score->modules['todo'] = 'Agenda';
$lang->score->modules['story'] = 'Story';
$lang->score->modules['bug'] = 'Bug';
$lang->score->modules['testcase'] = 'CasTest';
$lang->score->modules['testtask'] = 'Recette';
$lang->score->modules['build'] = 'Build';
$lang->score->modules['project'] = 'Projet';
$lang->score->modules['productplan'] = 'Plan';
$lang->score->modules['release'] = 'Release';
$lang->score->modules['block'] = 'Bloc';
$lang->score->modules['search'] = 'Recherche';
$lang->score->methods['task']['create'] = 'Créer Tâche';
$lang->score->methods['task']['close'] = 'Fermer Tâche';
$lang->score->methods['task']['finish'] = 'Terminer Tâche';
$lang->score->methods['tutorial']['finish'] = 'Terminer Tutoriel';
$lang->score->methods['user']['login'] = 'Connexion';
$lang->score->methods['user']['changePassword'] = 'Changer Password';
$lang->score->methods['user']['editProfile'] = 'Editer Profil';
$lang->score->methods['ajax']['selectTheme'] = 'Changer Thème';
$lang->score->methods['ajax']['selectLang'] = 'Changer Langue';
$lang->score->methods['ajax']['showSearchMenu'] = 'Recherche Avancée';
$lang->score->methods['ajax']['customMenu'] = 'Menu Personnalisé';
$lang->score->methods['ajax']['dragSelected'] = 'Déplacez sur Page de Liste';
$lang->score->methods['ajax']['lastNext'] = 'Raccourci Page Suivante';
$lang->score->methods['ajax']['switchToDataTable'] = 'Basculer Tableau de Données';
$lang->score->methods['ajax']['submitPage'] = 'Changer Pagination Nb#';
$lang->score->methods['ajax']['quickJump'] = 'Saut Rapide';
$lang->score->methods['ajax']['batchCreate'] = 'Créer par Lot Premier';
$lang->score->methods['ajax']['batchEdit'] = 'Editer par Lot Premier';
$lang->score->methods['ajax']['batchOther'] = 'Autres Actions par Lot';
$lang->score->methods['doc']['create'] = 'Créer Document';
$lang->score->methods['todo']['create'] = 'Créer Entrée Agenda';
$lang->score->methods['story']['create'] = 'Créer Story';
$lang->score->methods['story']['close'] = 'Fermer Story';
$lang->score->methods['bug']['create'] = 'Signaler un Bug';
$lang->score->methods['bug']['confirmBug'] = 'Confirmer Bug';
$lang->score->methods['bug']['createFormCase'] = 'Créer Formulaire Bug';
$lang->score->methods['bug']['resolve'] = 'Résoudre Bug';
$lang->score->methods['bug']['saveTplModal'] = 'Sauver Modèle';
$lang->score->methods['testtask']['runCase'] = 'Jouer CasTest';
$lang->score->methods['testcase']['create'] = 'Créer CasTest';
$lang->score->methods['build']['create'] = 'Créer Build';
$lang->score->methods['project']['create'] = 'Créer Projet';
$lang->score->methods['project']['close'] = 'Terminer Projet';
$lang->score->methods['productplan']['create'] = 'Créer Plan';
$lang->score->methods['release']['create'] = 'Créer Release';
$lang->score->methods['block']['set'] = 'Personnaliser Bloc';
$lang->score->methods['search']['saveQuery'] = 'Sauver Query';
$lang->score->methods['search']['saveQueryAdvanced'] = 'Recherche Avancée';
$lang->score->extended['user']['changePassword'] = "Obtenez ##strength,1## points, si le mot de passe est moyen. Obtenez ##strength,2## points, s'il est fort.";
$lang->score->extended['project']['close'] = "Après que le projet soit fermé, le Project Manager obtient ##manager,close## points et les membres de l'équipe obtiennent ##member,close## points. S'il a été réalisé dans les temps ou plus vite, le Project Manager obtient ##manager,onTime## points et les membres de l'équipe obtiennent ##member,onTime## points.";
$lang->score->extended['bug']['resolve'] = 'Après un bug résolu, obtenez des extra-points en fonction de sa sévérité. S1, + ##severity,3##; S2 + ##severity,2##, S3 + ##severity,1##.';
$lang->score->extended['bug']['confirmBug'] = 'Après un bug confirmé, obtenez des extra-points en fonction de sa sévérité. S1, + ##severity,3##; S2 + ##severity,2##, S3 + ##severity,1##.';
$lang->score->extended['task']['finish'] = 'Après une tâche accomplie, obtenez des extra-points par arrondi(heures-homme / 10 Estimés / Coût) + Points de Priorité (p1 ##pri,1##, p2 ##pri,2##).';
$lang->score->extended['story']['close'] = "Après la fermeture d'une Story, son créateur recevra extra ##createID## points.";
+50
View File
@@ -0,0 +1,50 @@
<?php
/**
* The search module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package search
* @version $Id: en.php 4129 2013-01-18 01:58:14Z wwccss $
* @link https://www.zentao.pm
*/
$lang->search->common = 'Rechercher';
$lang->search->reset = 'Réinitialiser';
$lang->search->saveQuery = 'Sauver Query';
$lang->search->myQuery = 'Mes Query';
$lang->search->group1 = 'Groupe 1';
$lang->search->group2 = 'Groupe 2';
$lang->search->buildForm = 'Formulaire de Recherche';
$lang->search->buildQuery = 'Exécuter Query';
$lang->search->savedQuery = 'Query sauvegardées';
$lang->search->deleteQuery = 'Supprimer Query';
$lang->search->setQueryTitle = 'Entrez un titre. Recherchez quand la query sera sauvée.';
$lang->search->select = 'Filtre Story/Tâche';
$lang->search->me = 'Moi';
$lang->search->noQuery = 'Aucune query de sauvegardée !';
$lang->search->onMenuBar = 'Montrer dans le Menu';
$lang->search->custom = 'Personnalisation';
$lang->search->account = 'Compte';
$lang->search->module = 'Module';
$lang->search->title = 'Titre';
$lang->search->form = 'Champ de Formulaire';
$lang->search->sql = 'Condition SQL';
$lang->search->shortcut = $lang->search->onMenuBar;
$lang->search->operators['='] = '=';
$lang->search->operators['!='] = '!=';
$lang->search->operators['>'] = '>';
$lang->search->operators['>='] = '>=';
$lang->search->operators['<'] = '<';
$lang->search->operators['<='] = '<=';
$lang->search->operators['include'] = 'Include';
$lang->search->operators['between'] = 'Between';
$lang->search->operators['notinclude'] = 'Exclude';
$lang->search->operators['belong'] = 'Belong';
$lang->search->andor['and'] = 'And';
$lang->search->andor['or'] = 'Or';
$lang->search->null = 'Null';
-1
View File
@@ -412,7 +412,6 @@ $(function()
if(typeof(params[fieldName]['class']) != undefined && params[fieldName]['class'] == 'date')
{
console.log($searchForm.find("#value" + fieldNO));
setDateField($searchForm.find("#value" + fieldNO), fieldNO);
$searchForm.find("#value" + fieldNO).addClass('date'); // Shortcut the width of the datepicker to make sure align with others.
var maxNO = 2 * groupItems;
+1 -1
View File
@@ -58,7 +58,7 @@ class settingModel extends model
$path = preg_replace("/^{$account}/", 'account', $path);
}
$level = substr_count($path, '.');
$level = substr_count($path, '.');
$section = '';
if($level <= 1) return false;
+39
View File
@@ -0,0 +1,39 @@
<?php
/**
* The sso module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Yidong Wang <yidong@cnezsoft.com>
* @package sso
* @version $Id$
* @link https://www.zentao.pm
*/
$lang->sso = new stdclass();
$lang->sso->settings = 'Paramétrages';
$lang->sso->turnon = 'Zdoo';
$lang->sso->redirect = 'Redirection automatique vers Zdoo';
$lang->sso->code = 'Code';
$lang->sso->key = 'Clé Secrète';
$lang->sso->addr = 'Adresse';
$lang->sso->bind = 'Liaison utilisateur';
$lang->sso->addrNotice = 'Example http://www.ranzhi.com/sys/sso-check.html';
$lang->sso->turnonList = array();
$lang->sso->turnonList[1] = 'On';
$lang->sso->turnonList[0] = 'Off';
$lang->sso->bindType = 'Type de lien';
$lang->sso->bindUser = 'Liaison Utilisateur';
$lang->sso->bindTypeList['bind'] = 'Se lier à un utilisateur existant';
$lang->sso->bindTypeList['add'] = 'Ajouter User';
$lang->sso->help = <<<EOD
<p>1. Zdoo address is required. If use PATH_INFO, it is http://YOUR ZDOO ADDRESS/sys/sso-check.html If GET, it is http://YOUR ZDOO ADDRESS/sys/index.php?m=sso&f=check</p>
<p>2. Code and Secret Key must be the same as set in Zdoo.</p>
EOD;
$lang->sso->bindNotice = "Un utilisateur qui a été récemment ajouté n'a pas de permission. Vous devez demander à l'administrateur ZenTao d'accorder des droits à cet utilisateur.";
$lang->sso->bindNoPassword = 'Password ne devrait pas être vide.';
$lang->sso->bindNoUser = 'Password erroné/Utilisateur introuvable !';
$lang->sso->bindHasAccount = "Ce nom d'utilisateur existe déjà. Modifiez votre code utilisateur ou liez-vous à lui.";
+327
View File
@@ -0,0 +1,327 @@
<?php
/**
* The story module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package story
* @version $Id: en.php 5141 2013-07-15 05:57:15Z chencongzhi520@gmail.com $
* @link https://www.zentao.pm
*/
$lang->story->create = "Créer Story";
$lang->story->batchCreate = "Créer par Lot";
$lang->story->change = "Changer";
$lang->story->changeAction = "Changer Story";
$lang->story->changed = 'Changée';
$lang->story->assignTo = 'Affecter';
$lang->story->assignAction = 'Affecter Story';
$lang->story->review = 'Valider';
$lang->story->reviewAction = 'Valider Story';
$lang->story->needReview = 'Validation requise';
$lang->story->batchReview = 'Validation par lot';
$lang->story->edit = "Editer Story";
$lang->story->batchEdit = "Editer par Lot";
$lang->story->subdivide = 'Décomposer';
$lang->story->subdivideAction = 'Décomposer Story';
$lang->story->close = 'Fermer';
$lang->story->closeAction = 'Fermer Story';
$lang->story->batchClose = 'Fermer par Lot';
$lang->story->activate = 'Activer';
$lang->story->activateAction = 'Activer Story';
$lang->story->delete = "Supprimer";
$lang->story->deleteAction = "Supprimer Story";
$lang->story->view = "Détail Story";
$lang->story->setting = "Paramétrage";
$lang->story->tasks = "Tâches Associées";
$lang->story->bugs = "Bugs Associés";
$lang->story->cases = "CasTest Associés";
$lang->story->taskCount = 'Tâches';
$lang->story->bugCount = 'Bugs';
$lang->story->caseCount = 'CasTests';
$lang->story->taskCountAB = 'T';
$lang->story->bugCountAB = 'B';
$lang->story->caseCountAB = 'C';
$lang->story->linkStory = 'Lier Story';
$lang->story->unlinkStory = 'Dissocier';
$lang->story->export = "Exporter Données";
$lang->story->exportAction = "Exporter Story";
$lang->story->zeroCase = "Stories sans CasTests";
$lang->story->zeroTask = "Seulement liste des stories sans tâches";
$lang->story->reportChart = "Rapport";
$lang->story->reportAction = "Rapport de Story";
$lang->story->copyTitle = "Copier Titre";
$lang->story->batchChangePlan = "Changer Plans par lot";
$lang->story->batchChangeBranch = "Changer Branches par lot";
$lang->story->batchChangeStage = "Changer Phases par lot";
$lang->story->batchAssignTo = "Affecter par lot";
$lang->story->batchChangeModule = "Changer Modules par lot";
$lang->story->viewAll = "Voir Tout";
$lang->story->common = 'Story';
$lang->story->id = 'ID';
$lang->story->product = $lang->productCommon;
$lang->story->branch = "Branche/Plateforme";
$lang->story->module = 'Module';
$lang->story->moduleAB = 'Module';
$lang->story->source = 'De';
$lang->story->sourceNote = 'Note';
$lang->story->fromBug = 'Depuis Bug';
$lang->story->title = 'Titre';
$lang->story->type = 'Type';
$lang->story->color = 'Color';
$lang->story->toBug = 'ToBug';
$lang->story->spec = 'Description';
$lang->story->assign = 'Affecter';
$lang->story->verify = 'Acceptance';
$lang->story->pri = 'Priorité';
$lang->story->estimate = 'Estimation';
$lang->story->estimateAB = 'Esti.(h)';
$lang->story->hour = 'Heures';
$lang->story->status = 'Statut';
$lang->story->subStatus = 'Sub Status';
$lang->story->stage = 'Phase';
$lang->story->stageAB = 'Phase';
$lang->story->stagedBy = 'Fixé par';
$lang->story->mailto = 'Mailto';
$lang->story->openedBy = 'Créée par';
$lang->story->openedDate = 'Date Création';
$lang->story->assignedTo = 'Assignée à';
$lang->story->assignedDate = 'Date Assignation';
$lang->story->lastEditedBy = 'Editée par';
$lang->story->lastEditedDate = 'Date Edition';
$lang->story->closedBy = 'Fermée par';
$lang->story->closedDate = 'Date Fermeture';
$lang->story->closedReason = 'Raison';
$lang->story->rejectedReason = 'Raison du Rejet';
$lang->story->reviewedBy = 'Validée par';
$lang->story->reviewedDate = 'Date Validation';
$lang->story->version = 'Version';
$lang->story->plan = 'Intégrée Plans';
$lang->story->planAB = 'Plan';
$lang->story->comment = 'Commentaire';
$lang->story->linkStories = 'Stories Liées';
$lang->story->childStories = 'Stories Décomposées';
$lang->story->duplicateStory = 'Story Dupliquées';
$lang->story->reviewResult = 'Résultat Validation';
$lang->story->preVersion = 'Dernière Version';
$lang->story->keywords = 'Tags';
$lang->story->newStory = "Continuer d'ajouter";
$lang->story->colorTag = 'Couleur';
$lang->story->files = 'Fichiers';
$lang->story->copy = "Copier Story";
$lang->story->total = "Stories Total";
$lang->story->allStories = 'Toutes les Stories';
$lang->story->unclosed = 'Non Fermées';
$lang->story->deleted = 'Supprimée';
$lang->story->released = 'Stories Versionnées';
$lang->story->ditto = 'Idem';
$lang->story->dittoNotice = "La story n'est pas associée au même product que la précédente !";
$lang->story->useList[0] = 'Oui';
$lang->story->useList[1] = 'Non';
$lang->story->statusList[''] = '';
$lang->story->statusList['draft'] = 'Brouillon';
$lang->story->statusList['active'] = 'Active';
$lang->story->statusList['closed'] = 'Fermée';
$lang->story->statusList['changed'] = 'Changée';
$lang->story->stageList[''] = '';
$lang->story->stageList['wait'] = 'En Attente';
$lang->story->stageList['planned'] = 'Plannifée';
$lang->story->stageList['projected'] = 'Projetée';
$lang->story->stageList['developing'] = 'En Dév.';
$lang->story->stageList['developed'] = 'Développée';
$lang->story->stageList['testing'] = 'En Test';
$lang->story->stageList['tested'] = 'Testée';
$lang->story->stageList['verified'] = 'Acceptée';
$lang->story->stageList['released'] = 'Versionnée';
$lang->story->stageList['closed'] = 'Fermée';
$lang->story->reasonList[''] = '';
$lang->story->reasonList['done'] = 'Déjà Fait';
$lang->story->reasonList['subdivided'] = 'Décomposée';
$lang->story->reasonList['duplicate'] = 'Doublon';
$lang->story->reasonList['postponed'] = 'Reportée';
$lang->story->reasonList['willnotdo'] = "On ne fera pas";
$lang->story->reasonList['cancel'] = 'Annulée';
$lang->story->reasonList['bydesign'] = 'Du Design';
//$lang->story->reasonList['isbug'] = 'Bug!';
$lang->story->reviewResultList[''] = '';
$lang->story->reviewResultList['pass'] = 'Accepté';
$lang->story->reviewResultList['revert'] = 'Retour Arrière';
$lang->story->reviewResultList['clarify'] = 'A Clarifier';
$lang->story->reviewResultList['reject'] = 'Refusé';
$lang->story->reviewList[0] = 'Non';
$lang->story->reviewList[1] = 'Oui';
$lang->story->sourceList[''] = '';
$lang->story->sourceList['customer'] = 'Client';
$lang->story->sourceList['user'] = 'Utilisateur';
$lang->story->sourceList['po'] = $lang->productCommon . ' Owner';
$lang->story->sourceList['market'] = 'Marketing';
$lang->story->sourceList['service'] = 'Service Client';
$lang->story->sourceList['operation'] = 'Opérations';
$lang->story->sourceList['support'] = 'Support';
$lang->story->sourceList['competitor'] = 'Concurrence';
$lang->story->sourceList['partner'] = 'Partenaire';
$lang->story->sourceList['dev'] = 'Equipe de Dev';
$lang->story->sourceList['tester'] = 'Equipe de Test';
$lang->story->sourceList['bug'] = 'Bug';
$lang->story->sourceList['forum'] = 'Forum';
$lang->story->sourceList['other'] = 'Autre';
$lang->story->priList[] = '';
$lang->story->priList[1] = '1';
$lang->story->priList[2] = '2';
$lang->story->priList[3] = '3';
$lang->story->priList[4] = '4';
$lang->story->legendBasicInfo = 'Infos de Base';
$lang->story->legendLifeTime = 'Vie de la Story ';
$lang->story->legendRelated = 'Info Connexes';
$lang->story->legendMailto = 'Mailto';
$lang->story->legendAttatch = 'Fichiers';
$lang->story->legendProjectAndTask = $lang->projectCommon . ' et Tâches';
$lang->story->legendBugs = 'Bugs Liés';
$lang->story->legendFromBug = 'du Bug';
$lang->story->legendCases = 'CasTests Liés';
$lang->story->legendLinkStories = 'Stories Liées';
$lang->story->legendChildStories = 'Sous-Stories';
$lang->story->legendSpec = 'Description';
$lang->story->legendVerify = 'Acceptance';
$lang->story->legendMisc = 'Divers';
$lang->story->lblChange = 'Changer';
$lang->story->lblReview = 'Valider';
$lang->story->lblActivate = 'Activer';
$lang->story->lblClose = 'Fermer';
$lang->story->lblTBC = 'Tâche/Bug/CasTest';
$lang->story->checkAffection = 'Influence';
$lang->story->affectedProjects = '' . $lang->projectCommon . 's';
$lang->story->affectedBugs = 'Bugs';
$lang->story->affectedCases = 'CasTests';
$lang->story->specTemplate = "En tant que < type utilisateur >, je veux < différents objectifs > pour < différentes raisons >.";
$lang->story->needNotReview = 'Aucune Validation Requise';
$lang->story->successSaved = "Story est sauvegardée !";
$lang->story->confirmDelete = "Voulez-vous vraiment supprimer cette story ?";
$lang->story->errorEmptyChildStory = '『Decomposed Stories』ne peuvent être vides.';
$lang->story->mustChooseResult = 'Sélect Résultat';
$lang->story->mustChoosePreVersion = 'Sélect une version pour revenir en arrière.';
$lang->story->noStory = "Aucune story pour l'instant. ";
$lang->story->ignoreChangeStage = "Story %s est à l'état brouillon et nécessite d'être complétée et validée...";
$lang->story->form = new stdclass();
$lang->story->form->area = 'Périmètre';
$lang->story->form->desc = "Quelle story est-ce ? Quel est son état d'acceptance ?";
$lang->story->form->resource = 'Qui va allouer des resources ? Combien de temps cela va-t-il prendre ?';
$lang->story->form->file = 'Si certains fichiers sont associés à la story, cliquez ici pour les uploader.';
$lang->story->action = new stdclass();
$lang->story->action->reviewed = array('main' => '$date, validée par <strong>$actor</strong>. Le résultat est <strong>$extra</strong>.', 'extra' => 'reviewResultList');
$lang->story->action->closed = array('main' => '$date, Fermée par <strong>$actor</strong>. La raison est <strong>$extra</strong> $appendLink.', 'extra' => 'reasonList');
$lang->story->action->linked2plan = array('main' => '$date, planifiée par <strong>$actor</strong> au Plan <strong>$extra</strong>');
$lang->story->action->unlinkedfromplan = array('main' => '$date, déplanifiée par <strong>$actor</strong> du Plan <strong>$extra</strong>.');
$lang->story->action->linked2project = array('main' => '$date, associée au ' . $lang->projectCommon . ' <strong>$extra</strong> par <strong>$actor</strong>.');
$lang->story->action->unlinkedfromproject = array('main' => '$date, dissociée du ' . $lang->projectCommon . ' <strong>$extra</strong> par <strong>$actor</strong>.');
$lang->story->action->linked2build = array('main' => '$date, intégrée par <strong>$actor</strong> au Build <strong>$extra</strong>');
$lang->story->action->unlinkedfrombuild = array('main' => '$date, retirée par <strong>$actor</strong> du Build <strong>$extra</strong>.');
$lang->story->action->linked2release = array('main' => '$date, ajoutée par <strong>$actor</strong> à la Release <strong>$extra</strong>');
$lang->story->action->unlinkedfromrelease = array('main' => '$date, retirée par <strong>$actor</strong> de la Release <strong>$extra</strong>.');
$lang->story->action->linkrelatedstory = array('main' => '$date, associée par <strong>$actor</strong> à la Story <strong>$extra</strong>.');
$lang->story->action->subdividestory = array('main' => '$date, décomposée par <strong>$actor</strong> en Story <strong>$extra</strong>.');
$lang->story->action->unlinkrelatedstory = array('main' => '$date, dissociée par <strong>$actor</strong> de la Story <strong>$extra</strong>.');
$lang->story->action->unlinkchildstory = array('main' => '$date, dissociée par <strong>$actor</strong> de la sous-Story <strong>$extra</strong>.');
/* 统计报表。*/
$lang->story->report = new stdclass();
$lang->story->report->common = 'Rapport';
$lang->story->report->select = 'Choix Type de Rapport';
$lang->story->report->create = 'Créer Rapport';
$lang->story->report->value = 'Rapports';
$lang->story->report->charts['storysPerProduct'] = 'Regroupé par ' . $lang->productCommon . ' Story';
$lang->story->report->charts['storysPerModule'] = 'Regroupé par Module Story';
$lang->story->report->charts['storysPerSource'] = 'Regroupé par Source';
$lang->story->report->charts['storysPerPlan'] = 'Regroupé par Plan';
$lang->story->report->charts['storysPerStatus'] = 'Regroupé par Statut';
$lang->story->report->charts['storysPerStage'] = 'Regroupé par Phase';
$lang->story->report->charts['storysPerPri'] = 'Regroupé par Priorité';
$lang->story->report->charts['storysPerEstimate'] = 'Regroupé par Estimés';
$lang->story->report->charts['storysPerOpenedBy'] = 'Regroupé par Créateur';
$lang->story->report->charts['storysPerAssignedTo'] = 'Regroupé par Détenteur';
$lang->story->report->charts['storysPerClosedReason'] = 'Par Raison de Fermeture';
$lang->story->report->charts['storysPerChange'] = 'Regroupé par Modif de Story';
$lang->story->report->options = new stdclass();
$lang->story->report->options->graph = new stdclass();
$lang->story->report->options->type = 'pie';
$lang->story->report->options->width = 500;
$lang->story->report->options->height = 140;
$lang->story->report->storysPerProduct = new stdclass();
$lang->story->report->storysPerModule = new stdclass();
$lang->story->report->storysPerSource = new stdclass();
$lang->story->report->storysPerPlan = new stdclass();
$lang->story->report->storysPerStatus = new stdclass();
$lang->story->report->storysPerStage = new stdclass();
$lang->story->report->storysPerPri = new stdclass();
$lang->story->report->storysPerOpenedBy = new stdclass();
$lang->story->report->storysPerAssignedTo = new stdclass();
$lang->story->report->storysPerClosedReason = new stdclass();
$lang->story->report->storysPerEstimate = new stdclass();
$lang->story->report->storysPerChange = new stdclass();
$lang->story->report->storysPerProduct->item = $lang->productCommon;
$lang->story->report->storysPerModule->item = 'Module';
$lang->story->report->storysPerSource->item = 'Source';
$lang->story->report->storysPerPlan->item = 'Plan';
$lang->story->report->storysPerStatus->item = 'Statut';
$lang->story->report->storysPerStage->item = 'Phase';
$lang->story->report->storysPerPri->item = 'Priorité';
$lang->story->report->storysPerOpenedBy->item = 'Créateur';
$lang->story->report->storysPerAssignedTo->item = 'Détenteur';
$lang->story->report->storysPerClosedReason->item = 'Raison';
$lang->story->report->storysPerEstimate->item = 'Estimation';
$lang->story->report->storysPerChange->item = 'Chang. Story';
$lang->story->report->storysPerProduct->graph = new stdclass();
$lang->story->report->storysPerModule->graph = new stdclass();
$lang->story->report->storysPerSource->graph = new stdclass();
$lang->story->report->storysPerPlan->graph = new stdclass();
$lang->story->report->storysPerStatus->graph = new stdclass();
$lang->story->report->storysPerStage->graph = new stdclass();
$lang->story->report->storysPerPri->graph = new stdclass();
$lang->story->report->storysPerOpenedBy->graph = new stdclass();
$lang->story->report->storysPerAssignedTo->graph = new stdclass();
$lang->story->report->storysPerClosedReason->graph = new stdclass();
$lang->story->report->storysPerEstimate->graph = new stdclass();
$lang->story->report->storysPerChange->graph = new stdclass();
$lang->story->report->storysPerProduct->graph->xAxisName = $lang->productCommon;
$lang->story->report->storysPerModule->graph->xAxisName = 'Module';
$lang->story->report->storysPerSource->graph->xAxisName = 'Source';
$lang->story->report->storysPerPlan->graph->xAxisName = 'Plan';
$lang->story->report->storysPerStatus->graph->xAxisName = 'Statut';
$lang->story->report->storysPerStage->graph->xAxisName = 'Phase';
$lang->story->report->storysPerPri->graph->xAxisName = 'Priorité';
$lang->story->report->storysPerOpenedBy->graph->xAxisName = 'Créateur';
$lang->story->report->storysPerAssignedTo->graph->xAxisName = 'Détenteur';
$lang->story->report->storysPerClosedReason->graph->xAxisName = 'Raison Fermeture';
$lang->story->report->storysPerEstimate->graph->xAxisName = 'Estimattion ';
$lang->story->report->storysPerChange->graph->xAxisName = 'Change Times';
$lang->story->placeholder = new stdclass();
$lang->story->placeholder->estimate = $lang->story->hour;
$lang->story->chosen = new stdClass();
$lang->story->chosen->reviewedBy = 'Choisir valideur';
$lang->story->notice = new stdClass();
$lang->story->notice->closed = 'La Story que vous avez sélectionnée est malheureusement fermée !';
+16
View File
@@ -0,0 +1,16 @@
<?php
/**
* The svn module zh-cn file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package svn
* @version $Id$
* @link https://www.zentao.pm
*/
/* Methods. */
$lang->svn->common = 'Subversion';
$lang->svn->cat = 'Voir Code Source';
$lang->svn->diff = 'Comparer Code Source';
$lang->svn->apiSync = 'API: Synchroniser Logs SVN';
+2
View File
@@ -199,6 +199,7 @@ $lang->task->cannotDeleteParent = 'Cannot delete parent task';
$lang->task->error = new stdclass();
$lang->task->error->consumedNumber = '"Verbraucht" muss eine Zahl sein.';
$lang->task->error->estimateNumber = '"Stunden" müss eine Zahl sein.';
$lang->task->error->recordMinus = 'Work hours should not be negative number.';
$lang->task->error->consumedSmall = '"Verbraucht" muss larger than before.';
$lang->task->error->consumedThisTime = 'Bitte geben Sie die Stunden an';
$lang->task->error->left = 'Bitte geben Sie die verbleibenden Stunden an"';
@@ -207,6 +208,7 @@ $lang->task->error->skipClose = 'Aufgabe: %s ist nicht “Erledigt” ode
$lang->task->error->consumed = 'Aufgabe: %s Hour must be more than 0. Ignore changes to this Task.';
$lang->task->error->assignedTo = 'Mehere Tasks können nicht zugewisen werden, da die Benutzer nicht teil des Teams sind.';
$lang->task->error->consumedEmpty = '"Current Cost" should not be empty.';
$lang->task->error->deadlineSmall = '"Deadline" must be greater than "StartDate".';
/* Report. */
$lang->task->report = new stdclass();
+296
View File
@@ -0,0 +1,296 @@
<?php
/**
* The task module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package task
* @version $Id: en.php 5040 2013-07-06 06:22:18Z zhujinyonging@gmail.com $
* @link https://www.zentao.pm
*/
$lang->task->index = "Accueil";
$lang->task->create = "Créer Tâche";
$lang->task->batchCreate = "Créer par Lots";
$lang->task->batchCreateChildren = "Créer sous-tâches par lots";
$lang->task->batchEdit = "Edition par lots";
$lang->task->batchChangeModule = "Change Modules par lots";
$lang->task->batchClose = "Fermeture par lots";
$lang->task->batchCancel = "Annulation par lots";
$lang->task->edit = "Editer Tâche";
$lang->task->delete = "Supprimer";
$lang->task->deleteAction = "supprimer Tâche";
$lang->task->deleted = "Supprimée";
$lang->task->delayed = 'Ajournées';
$lang->task->view = "Détail Tâche";
$lang->task->logEfforts = "Effort";
$lang->task->record = "Estimés";
$lang->task->start = "Démarrer";
$lang->task->startAction = "Démarrer Tâche";
$lang->task->restart = "Continuer";
$lang->task->restartAction = "Continuer Tâche";
$lang->task->finishAction = "Terminer Tâche";
$lang->task->finish = "Finie";
$lang->task->pause = "Interrompre";
$lang->task->pauseAction = "Interrompre Tâche";
$lang->task->close = "Fermer";
$lang->task->closeAction = "Fermer Tâche";
$lang->task->cancel = "Annuler";
$lang->task->cancelAction = "Annuler Tâche";
$lang->task->activateAction = "Activer Tâche";
$lang->task->activate = "Activer";
$lang->task->export = "Exporter Données";
$lang->task->exportAction = "Exporter Tâche";
$lang->task->reportChart = "Rapport Graphique";
$lang->task->fromBug = 'à partir Bug';
$lang->task->case = 'Associée CasTest';
$lang->task->confirmStoryChange = "Confirmer Changement";
$lang->task->storyChange = "Story Changée";
$lang->task->progress = 'Progression';
$lang->task->progressAB = '%';
$lang->task->progressTips = 'Coût/(Coût+Reste)';
$lang->task->copy = 'Copier Tâche';
$lang->task->waitTask = 'Waiting Task';
$lang->task->common = 'Tâche';
$lang->task->id = 'ID';
$lang->task->project = $lang->projectCommon;
$lang->task->module = 'Module';
$lang->task->moduleAB = 'Module';
$lang->task->story = 'Story';
$lang->task->storyAB = 'Story';
$lang->task->storySpec = 'Description Story';
$lang->task->storyVerify = "Critères d'Acceptance";
$lang->task->storyVersion = 'Story Version';
$lang->task->color = 'Color';
$lang->task->name = 'Nom';
$lang->task->type = 'Type';
$lang->task->pri = 'Priorité';
$lang->task->mailto = 'Mailto';
$lang->task->estimate = 'Estimés';
$lang->task->estimateAB = 'Esti.';
$lang->task->left = 'Reste Heures';
$lang->task->leftAB = 'Reste';
$lang->task->consumed = 'Coût Total';
$lang->task->currentConsumed = 'Coût Actuel';
$lang->task->myConsumed = 'Mon Coût';
$lang->task->consumedAB = 'Coût';
$lang->task->hour = 'Heures';
$lang->task->consumedThisTime = 'Coût';
$lang->task->leftThisTime = 'Reste';
$lang->task->datePlan = 'Timeframe';
$lang->task->estStarted = 'StartDate';
$lang->task->realStarted = 'ActualStart';
$lang->task->date = 'Date';
$lang->task->deadline = 'Date Butoir';
$lang->task->deadlineAB = 'Date Butoir';
$lang->task->status = 'Statut';
$lang->task->subStatus = 'Sub Status';
$lang->task->desc = 'Description';
$lang->task->assign = 'Assigner';
$lang->task->assignAction = 'Assigner Tâche';
$lang->task->assignTo = $lang->task->assign;
$lang->task->batchAssignTo = 'Assigner en lots';
$lang->task->assignedTo = 'Affectée à';
$lang->task->assignedToAB = 'AssignedTo';
$lang->task->assignedDate = 'AssignedDate';
$lang->task->openedBy = 'CreatedBy';
$lang->task->openedDate = 'CreatedDate';
$lang->task->openedDateAB = 'CreatedOn';
$lang->task->finishedBy = 'FinishedBy';
$lang->task->finishedByAB = 'FinishedBy';
$lang->task->finishedDate = 'ActualFinished';
$lang->task->finishedDateAB = 'ActualFinish';
$lang->task->finishedList = 'FinishedBy';
$lang->task->canceledBy = 'CancelledBy';
$lang->task->canceledDate = 'CancelledDate';
$lang->task->closedBy = 'ClosedBy';
$lang->task->closedDate = 'ClosedDate';
$lang->task->closedReason = 'CloseReason';
$lang->task->lastEditedBy = 'EditedBy';
$lang->task->lastEditedDate = 'EditedDate';
$lang->task->lastEdited = 'EditedBy';
$lang->task->recordEstimate = 'Effort';
$lang->task->editEstimate = 'Editer Estimé';
$lang->task->deleteEstimate = 'Supprimer Estimés';
$lang->task->colorTag = 'Couleur';
$lang->task->files = 'Fichiers';
$lang->task->hasConsumed = 'Consommé';
$lang->task->multiple = 'Utilisateurs Multiples';
$lang->task->multipleAB = 'M';
$lang->task->team = 'Equipe';
$lang->task->transfer = 'Transferer';
$lang->task->transferTo = 'Transferer à';
$lang->task->children = 'Sous-Tâche';
$lang->task->childrenAB = 'C';
$lang->task->parent = 'Tâche Parent';
$lang->task->parentAB = 'Parent';
$lang->task->lblPri = 'P';
$lang->task->lblHour = '(h)';
$lang->task->lblTestStory = 'Story Testée';
$lang->task->ditto = 'Idem';
$lang->task->dittoNotice = "Cette Tâche n'est pas associée au projet comme la précédente peut l'être !";
$lang->task->selectTestStory = 'Select Story Testé';
$lang->task->selectAllUser = 'Tous Utilis.';
$lang->task->noStory = 'Aucune Story associée';
$lang->task->noAssigned = 'Non affectées';
$lang->task->noFinished = 'Non Finies';
$lang->task->noClosed = 'Non Fermées';
$lang->task->yesterdayFinished = 'Tâche Terminée Hier';
$lang->task->allTasks = 'Tâche';
$lang->task->statusList[''] = '';
$lang->task->statusList['wait'] = 'A Faire';
$lang->task->statusList['doing'] = 'En Cours';
$lang->task->statusList['done'] = 'Faite';
$lang->task->statusList['pause'] = 'Interrompue';
$lang->task->statusList['cancel'] = 'Annulée';
$lang->task->statusList['closed'] = 'Fermée';
$lang->task->typeList[''] = '';
$lang->task->typeList['design'] = 'Design';
$lang->task->typeList['devel'] = 'Développement';
$lang->task->typeList['test'] = 'Test';
$lang->task->typeList['study'] = 'Analyse';
$lang->task->typeList['discuss'] = 'Discussion';
$lang->task->typeList['ui'] = 'UI';
$lang->task->typeList['affair'] = 'Commercial';
$lang->task->typeList['misc'] = 'Divers';
$lang->task->priList[0] = '';
$lang->task->priList[1] = '1';
$lang->task->priList[2] = '2';
$lang->task->priList[3] = '3';
$lang->task->priList[4] = '4';
$lang->task->reasonList[''] = '';
$lang->task->reasonList['done'] = 'Fait';
$lang->task->reasonList['cancel'] = 'Annulé';
$lang->task->afterChoices['continueAdding'] = ' Continuer Ajouter Tâches';
$lang->task->afterChoices['toTaskList'] = 'Aller à la liste des Tâches';
$lang->task->afterChoices['toStoryList'] = 'Aller à la liste des Stories';
$lang->task->legendBasic = 'Infos de Base';
$lang->task->legendEffort = 'Effort';
$lang->task->legendLife = 'Vie de la Tâche';
$lang->task->legendDesc = 'Description Tâche';
$lang->task->confirmDelete = "Voulez-vous réellement supprimer cette tâche ?";
$lang->task->confirmDeleteEstimate = "Voulez-vous la supprimer ?";
$lang->task->copyStoryTitle = '<span style="color:blue;">StoryModel</span>';
$lang->task->afterSubmit = "Suiv. ";
$lang->task->successSaved = "Créée !";
$lang->task->delayWarning = " <strong class='text-danger'> Retard %s jours </strong>";
$lang->task->remindBug = "Cette tâche a été convertie depuis un bug. Voulez-vous mettre à jour le Bug : %s ?";
$lang->task->confirmChangeProject = "Si vous changez {$lang->projectCommon}, Module, Story et AssignedTo seront également changés. Voulez-vous le faire ?";
$lang->task->confirmFinish = '"Heures Restantes" à 0. Voulez-vous passer le statut à "Terminée" ?';
$lang->task->confirmRecord = '"Heures Restantes" à 0. Voulez-vous passer le statut de la tâche à "Finie" ?';
$lang->task->confirmTransfer = '"Heures Restantes" à 0. Voulez-vous transférer la tâche ?';
$lang->task->noticeLinkStory = "Aucune Story n'est associée. Vous pouvez %s pour ce projet, alors %s.";
$lang->task->noticeSaveRecord = "Votre temps n'a pas été sauvé. Enregistrez-le d'abord.";
$lang->task->commentActions = '%s. %s, commenté par <strong>%s</strong>.';
$lang->task->deniedNotice = 'Seulement le %s peut %s la tâche.';
$lang->task->noTask = "Pas de tâche pour l'instant. ";
$lang->task->createDenied = 'La création de tâches est interdite dans ce projet';
$lang->task->cannotDeleteParent = 'Cannot delete parent task';
$lang->task->error = new stdclass();
$lang->task->error->consumedNumber = '"Coût" doit être numérique.';
$lang->task->error->estimateNumber = '"Estimé" doit être numérique.';
$lang->task->error->recordMinus = 'Work hours should not be negative number.';
$lang->task->error->consumedSmall = '"Coût en heures" doit être > au dernier chiffre.';
$lang->task->error->consumedThisTime = 'Entrez le "Coût en Heures"';
$lang->task->error->left = 'Entrez les "Heures Restantes"';
$lang->task->error->work = '"Commentaire" doit être < %d caractères.';
$lang->task->error->skipClose = 'Tâche: %s non “Finie” ou “Annulée”. Voulez-vous la fermer malgré tout ?';
$lang->task->error->consumed = 'Tâche: %s heures doivent être < 0. Ignorer changements de cette tâche.';
$lang->task->error->assignedTo = "Tâche Multi-user dans le statut courant ne peut pas être assignée à un membre qui ne fait pas partie de l'équipe.";
$lang->task->error->consumedEmpty = '"Coût Actuel" ne devrait pas être vide.';
$lang->task->error->deadlineSmall = '"Deadline" must be greater than "StartDate".';
/* Report. */
$lang->task->report = new stdclass();
$lang->task->report->common = 'Rapport';
$lang->task->report->select = 'Choix Type de Rapport';
$lang->task->report->create = 'Créer Rapport';
$lang->task->report->value = 'Tâches';
$lang->task->report->charts['tasksPerProject'] = 'Regroupé par ' . $lang->projectCommon . ' Tâche';
$lang->task->report->charts['tasksPerModule'] = 'Regroupé par Module';
$lang->task->report->charts['tasksPerAssignedTo'] = 'Regroupé par Assignation';
$lang->task->report->charts['tasksPerType'] = 'Regroupé par Type de Tâche';
$lang->task->report->charts['tasksPerPri'] = 'Regroupé par Priorité Tâche';
$lang->task->report->charts['tasksPerStatus'] = 'Regroupé par Statut de Tâche';
$lang->task->report->charts['tasksPerDeadline'] = 'Regroupé par date butoir';
$lang->task->report->charts['tasksPerEstimate'] = 'Regroupé par Estimé';
$lang->task->report->charts['tasksPerLeft'] = 'Regroupé par H. Restantes';
$lang->task->report->charts['tasksPerConsumed'] = 'Regroupé par H. Consommées';
$lang->task->report->charts['tasksPerFinishedBy'] = 'Regroupé par Finisseur';
$lang->task->report->charts['tasksPerClosedReason'] = 'Par Raison de Fermeture';
$lang->task->report->charts['finishedTasksPerDay'] = 'Par Tâches Finies/Jour';
$lang->task->report->options = new stdclass();
$lang->task->report->options->graph = new stdclass();
$lang->task->report->options->type = 'pie';
$lang->task->report->options->width = 500;
$lang->task->report->options->height = 140;
$lang->task->report->tasksPerProject = new stdclass();
$lang->task->report->tasksPerModule = new stdclass();
$lang->task->report->tasksPerAssignedTo = new stdclass();
$lang->task->report->tasksPerType = new stdclass();
$lang->task->report->tasksPerPri = new stdclass();
$lang->task->report->tasksPerStatus = new stdclass();
$lang->task->report->tasksPerDeadline = new stdclass();
$lang->task->report->tasksPerEstimate = new stdclass();
$lang->task->report->tasksPerLeft = new stdclass();
$lang->task->report->tasksPerConsumed = new stdclass();
$lang->task->report->tasksPerFinishedBy = new stdclass();
$lang->task->report->tasksPerClosedReason = new stdclass();
$lang->task->report->finishedTasksPerDay = new stdclass();
$lang->task->report->tasksPerProject->item = $lang->projectCommon;
$lang->task->report->tasksPerModule->item = 'Module';
$lang->task->report->tasksPerAssignedTo->item = 'Détenteur';
$lang->task->report->tasksPerType->item = 'Type';
$lang->task->report->tasksPerPri->item = 'Priorité';
$lang->task->report->tasksPerStatus->item = 'Statut';
$lang->task->report->tasksPerDeadline->item = 'Date';
$lang->task->report->tasksPerEstimate->item = 'Estimé';
$lang->task->report->tasksPerLeft->item = 'Reste à faire (H)';
$lang->task->report->tasksPerConsumed->item = 'Consommé';
$lang->task->report->tasksPerFinishedBy->item = 'Finisseur';
$lang->task->report->tasksPerClosedReason->item = 'Raison';
$lang->task->report->finishedTasksPerDay->item = 'Date';
$lang->task->report->tasksPerProject->graph = new stdclass();
$lang->task->report->tasksPerModule->graph = new stdclass();
$lang->task->report->tasksPerAssignedTo->graph = new stdclass();
$lang->task->report->tasksPerType->graph = new stdclass();
$lang->task->report->tasksPerPri->graph = new stdclass();
$lang->task->report->tasksPerStatus->graph = new stdclass();
$lang->task->report->tasksPerDeadline->graph = new stdclass();
$lang->task->report->tasksPerEstimate->graph = new stdclass();
$lang->task->report->tasksPerLeft->graph = new stdclass();
$lang->task->report->tasksPerConsumed->graph = new stdclass();
$lang->task->report->tasksPerFinishedBy->graph = new stdclass();
$lang->task->report->tasksPerClosedReason->graph = new stdclass();
$lang->task->report->finishedTasksPerDay->graph = new stdclass();
$lang->task->report->tasksPerProject->graph->xAxisName = $lang->projectCommon;
$lang->task->report->tasksPerModule->graph->xAxisName = 'Module';
$lang->task->report->tasksPerAssignedTo->graph->xAxisName = 'Utilisateur';
$lang->task->report->tasksPerType->graph->xAxisName = 'Type';
$lang->task->report->tasksPerPri->graph->xAxisName = 'Priorité';
$lang->task->report->tasksPerStatus->graph->xAxisName = 'Statut';
$lang->task->report->tasksPerDeadline->graph->xAxisName = 'Date';
$lang->task->report->tasksPerEstimate->graph->xAxisName = 'Estimé';
$lang->task->report->tasksPerLeft->graph->xAxisName = 'R.à.Faire(h)';
$lang->task->report->tasksPerConsumed->graph->xAxisName = 'Consommé (h)';
$lang->task->report->tasksPerFinishedBy->graph->xAxisName = 'Utilisateur';
$lang->task->report->tasksPerClosedReason->graph->xAxisName = 'Raison Fermeture';
$lang->task->report->finishedTasksPerDay->type = 'bar';
$lang->task->report->finishedTasksPerDay->graph->xAxisName = 'Date';
+2
View File
@@ -199,6 +199,7 @@ $lang->task->cannotDeleteParent = '不能刪除父任務。';
$lang->task->error = new stdclass();
$lang->task->error->consumedNumber = '"本次消耗"必須為數字';
$lang->task->error->estimateNumber = '"預計剩餘"必須為數字';
$lang->task->error->recordMinus = '工時不能為負數';
$lang->task->error->consumedSmall = '"已經消耗"必須大於之前消耗';
$lang->task->error->consumedThisTime = '請填寫"工時"';
$lang->task->error->left = '請填寫"剩餘"';
@@ -207,6 +208,7 @@ $lang->task->error->skipClose = '任務:%s 不是“已完成”或“
$lang->task->error->consumed = '任務:%s工時不能小於0,忽略該任務工時的改動';
$lang->task->error->assignedTo = '當前狀態的多人任務不能指派給任務團隊外的成員。';
$lang->task->error->consumedEmpty = '"本次消耗"不能為空';
$lang->task->error->deadlineSmall = '"截止日期"必須大於"預計開始"';
/* Report. */
$lang->task->report = new stdclass();
+6 -1
View File
@@ -1490,7 +1490,12 @@ class taskModel extends model
$this->dao->update(TABLE_TASK)->data($task)->autoCheck()->where('id')->eq((int)$taskID)->exec();
if($oldTask->parent > 0) $this->updateParentStatus($taskID);
if($oldTask->parent == '-1') $this->dao->update(TABLE_TASK)->data($task)->autoCheck()->where('parent')->eq((int)$taskID)->exec();
if($oldTask->parent == '-1')
{
unset($task->assignedTo);
$this->dao->update(TABLE_TASK)->data($task)->autoCheck()->where('parent')->eq((int)$taskID)->exec();
$this->dao->update(TABLE_TASK)->set('assignedTo=openedBy')->where('parent')->eq((int)$taskID)->exec();
}
if($oldTask->story) $this->loadModel('story')->setStage($oldTask->story);
if(!dao::isError()) return common::createChanges($oldTask, $task);
}
+223
View File
@@ -0,0 +1,223 @@
<?php
/**
* The testcase module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package testcase
* @version $Id: en.php 4966 2013-07-02 02:59:25Z wyd621@gmail.com $
* @link https://www.zentao.pm
*/
$lang->testcase->id = 'ID';
$lang->testcase->product = $lang->productCommon;
$lang->testcase->module = 'Module';
$lang->testcase->lib = "Case Library";
$lang->testcase->branch = "Branche/Platforme";
$lang->testcase->moduleAB = 'Module';
$lang->testcase->story = 'Story';
$lang->testcase->storyVersion = 'Story Version';
$lang->testcase->color = 'Color';
$lang->testcase->order = 'Order';
$lang->testcase->title = 'Titre';
$lang->testcase->precondition = 'Prérequis';
$lang->testcase->pri = 'Priorité';
$lang->testcase->type = 'Type';
$lang->testcase->status = 'Statur';
$lang->testcase->subStatus = 'Sub Status';
$lang->testcase->steps = 'Etape';
$lang->testcase->openedBy = 'Créé par';
$lang->testcase->openedDate = 'Créé le';
$lang->testcase->lastEditedBy = 'Modifié par';
$lang->testcase->result = 'Résultat';
$lang->testcase->real = 'Détails';
$lang->testcase->keywords = 'Tags';
$lang->testcase->files = 'Fichiers';
$lang->testcase->linkCase = 'CasTests liés';
$lang->testcase->linkCases = 'Associer CasTests';
$lang->testcase->unlinkCase = 'Dissocier CasTest';
$lang->testcase->stage = 'Phase';
$lang->testcase->reviewedBy = 'Validé par';
$lang->testcase->reviewedDate = 'Validé le';
$lang->testcase->reviewResult = 'Résultat validation';
$lang->testcase->reviewedByAB = 'Validé par';
$lang->testcase->reviewedDateAB = 'Validé le';
$lang->testcase->reviewResultAB = 'Résultat validation';
$lang->testcase->forceNotReview = 'Aucune Validation Requise';
$lang->testcase->lastEditedByAB = 'Modifié par';
$lang->testcase->lastEditedDateAB = 'Modifié le';
$lang->testcase->lastEditedDate = 'Modifié le';
$lang->testcase->version = 'Version CasTest';
$lang->testcase->lastRunner = 'Joué par';
$lang->testcase->lastRunDate = 'Dernier Run';
$lang->testcase->assignedTo = 'Affecté à';
$lang->testcase->colorTag = 'Couleur';
$lang->testcase->lastRunResult = 'Résultat';
$lang->testcase->desc = 'Etape';
$lang->testcase->expect = 'Résultat Attendu';
$lang->testcase->allProduct = "Tous {$lang->productCommon}s";
$lang->testcase->fromBug = 'Depuis Bug';
$lang->testcase->toBug = 'Vers Bug';
$lang->testcase->changed = 'Changé';
$lang->testcase->bugs = 'Bugs Signalés';
$lang->testcase->bugsAB = 'B';
$lang->testcase->results = 'Résultat';
$lang->testcase->resultsAB = 'R';
$lang->testcase->stepNumber = 'Etape';
$lang->testcase->stepNumberAB = 'S';
$lang->testcase->createBug = 'Signaler Bug';
$lang->testcase->fromModule = 'Module Source';
$lang->testcase->fromCase = 'CasTest Source';
$lang->testcase->sync = 'Sync. CasTests';
$lang->testcase->ignore = 'Ignorer';
$lang->testcase->fromTesttask = 'De Campagne';
$lang->testcase->fromCaselib = 'De Library';
$lang->testcase->deleted = 'Deleted';
$lang->case = $lang->testcase; // For dao checking using. Because 'case' is a php keywords, so the module name is testcase, table name is still case.
$lang->testcase->stepID = 'ID';
$lang->testcase->stepDesc = 'Etape';
$lang->testcase->stepExpect = 'Résultat Attendu';
$lang->testcase->stepVersion = 'Version';
$lang->testcase->common = 'CasTest';
$lang->testcase->index = "Accueil CasTest";
$lang->testcase->create = "Ajout CasTest";
$lang->testcase->batchCreate = "Ajouter par Lot";
$lang->testcase->delete = "Supprimer";
$lang->testcase->deleteAction = "Supprimer CasTest";
$lang->testcase->view = "Détail CasTest";
$lang->testcase->review = "Doit être validé";
$lang->testcase->reviewAB = "Validation";
$lang->testcase->batchReview = "Validation par Lot";
$lang->testcase->edit = "Modifier CasTest";
$lang->testcase->batchEdit = "Modifier par Lot ";
$lang->testcase->batchChangeModule = "Changer Modules par Lot";
$lang->testcase->confirmLibcaseChange = "Confirmer Modification Library";
$lang->testcase->ignoreLibcaseChange = "Ignorer Modification Library";
$lang->testcase->batchChangeBranch = "Changer Branches par Lot";
$lang->testcase->groupByStories = 'Grouper par Story';
$lang->testcase->batchDelete = "Supprimer par Lot ";
$lang->testcase->batchConfirmStoryChange = "Confirmer par Lot";
$lang->testcase->batchCaseTypeChange = "Changer Types par Lot";
$lang->testcase->browse = "Liste CasTests";
$lang->testcase->groupCase = "Vue par Groupe";
$lang->testcase->import = "Importer";
$lang->testcase->importAction = "Importer CasTest";
$lang->testcase->importFile = "Importer CSV";
$lang->testcase->importFromLib = "Importer de la Library";
$lang->testcase->showImport = "Voir Import";
$lang->testcase->exportTemplet = "Exporter Modèle";
$lang->testcase->export = "Exporter Données";
$lang->testcase->exportAction = "Exporter CasTest";
$lang->testcase->reportChart = 'Graphique';
$lang->testcase->reportAction = 'Rapport CasTest';
$lang->testcase->confirmChange = 'Confirmer Modification CasTest';
$lang->testcase->confirmStoryChange = 'Confirmer Modification Story';
$lang->testcase->copy = 'Copier CasTest';
$lang->testcase->group = 'Groupe';
$lang->testcase->groupName = 'Nom Groupe';
$lang->testcase->step = 'Etapes';
$lang->testcase->stepChild = 'Sous-Etapes';
$lang->testcase->viewAll = 'Tous les CasTests';
$lang->testcase->new = 'Nouveau';
$lang->testcase->num = 'Ligne CasTes:';
$lang->testcase->deleteStep = 'Supprimer';
$lang->testcase->insertBefore = 'Insérer Avant';
$lang->testcase->insertAfter = 'Insérer Après';
$lang->testcase->assignToMe = 'Affecté à Moi';
$lang->testcase->openedByMe = 'Créé par Moi';
$lang->testcase->allCases = 'Tous';
$lang->testcase->allTestcases = 'Tous les CasTests';
$lang->testcase->needConfirm = 'Story Changée';
$lang->testcase->bySearch = 'Rechercher';
$lang->testcase->unexecuted = 'En Attente';
$lang->testcase->lblStory = 'Story liée';
$lang->testcase->lblLastEdited = 'Modifié par';
$lang->testcase->lblTypeValue = 'Valeur Type';
$lang->testcase->lblStageValue = 'Valeur Phase';
$lang->testcase->lblStatusValue = 'Valeur Statut';
$lang->testcase->legendBasicInfo = 'Infos de Base';
$lang->testcase->legendAttatch = 'Fichiers';
$lang->testcase->legendLinkBugs = 'Bugs';
$lang->testcase->legendOpenAndEdit = 'Créer/Editer';
$lang->testcase->legendComment = 'Commentaire';
$lang->testcase->summary = "Total <strong>%s</strong> castests sur cette page, et <strong>%s</strong> castests ont été joués.";
$lang->testcase->confirmDelete = 'Voulez-vous supprimer ce CasTest ?';
$lang->testcase->confirmBatchDelete = 'Voulez-vous supprimer des Castests par Lot ?';
$lang->testcase->ditto = 'Idem';
$lang->testcase->dittoNotice = "Ce CasTest n'est pas associé au Product alors quele précédent l'était !";
$lang->testcase->reviewList[0] = 'NON';
$lang->testcase->reviewList[1] = 'OUI';
$lang->testcase->priList[0] = '';
$lang->testcase->priList[3] = 3;
$lang->testcase->priList[1] = 1;
$lang->testcase->priList[2] = 2;
$lang->testcase->priList[4] = 4;
/* Define the types. */
$lang->testcase->typeList[''] = '';
$lang->testcase->typeList['feature'] = 'Fonctionnalité';
$lang->testcase->typeList['performance'] = 'Performance';
$lang->testcase->typeList['config'] = 'Configuration';
$lang->testcase->typeList['install'] = 'Installation';
$lang->testcase->typeList['security'] = 'Sécurité';
$lang->testcase->typeList['interface'] = 'Interface';
$lang->testcase->typeList['other'] = 'Autre';
$lang->testcase->stageList[''] = '';
$lang->testcase->stageList['unittest'] = 'Test Unitaire';
$lang->testcase->stageList['feature'] = 'Test Fonctionnel'; // recette MOE
$lang->testcase->stageList['intergrate'] = "Test d'Intégration"; // assemblage
$lang->testcase->stageList['system'] = 'Test Système';
$lang->testcase->stageList['smoke'] = 'Test de Charge';
$lang->testcase->stageList['bvt'] = 'Vérification Build (BVT)';
$lang->testcase->reviewResultList[''] = '';
$lang->testcase->reviewResultList['pass'] = 'Réussi';
$lang->testcase->reviewResultList['clarify'] = 'à Clarifier';
$lang->testcase->statusList[''] = '';
$lang->testcase->statusList['wait'] = 'En Attente';
$lang->testcase->statusList['normal'] = 'Normal';
$lang->testcase->statusList['blocked'] = 'Bloqué';
$lang->testcase->statusList['investigate'] = 'Analyse';
$lang->testcase->resultList['n/a'] = 'Ignorer';
$lang->testcase->resultList['pass'] = 'Réussite';
$lang->testcase->resultList['fail'] = 'Echec';
$lang->testcase->resultList['blocked'] = 'Bloqué';
$lang->testcase->buttonToList = 'Retour';
$lang->testcase->errorEncode = 'No data. Please select right encoding and upload again!';
$lang->testcase->noFunction = 'Iconv and mb_convert_encoding are not found. You cannot convert the data to the encoding you want!';
$lang->testcase->noRequire = "Row %s has“%s ”which is a required field and it should not be blank.";
$lang->testcase->noLibrary = "Aucune library n'existe. Créez-en une pour commencer.";
$lang->testcase->mustChooseResult = 'La Validation du résultat est nécessaire.';
$lang->testcase->noModule = "<div>Vous n'avez aucun modules.</div><div>Gérer les modules maintenant.</div>";
$lang->testcase->noCase = "Aucun CasTest pour l'instant. ";
$lang->testcase->searchStories = 'Rechercher des stories';
$lang->testcase->selectLib = 'Sélectionner Library';
$lang->testcase->action = new stdclass();
$lang->testcase->action->fromlib = array('main' => '$date, importé par <strong>$actor</strong> depuis <strong>$extra</strong>.');
$lang->testcase->action->reviewed = array('main' => '$date, enregistré par <strong>$actor</strong> et le résultat de validation est <strong>$extra</strong>.', 'extra' => 'reviewResultList');
$lang->testcase->featureBar['browse']['all'] = $lang->testcase->allCases;
$lang->testcase->featureBar['browse']['wait'] = 'En Attente';
$lang->testcase->featureBar['browse']['needconfirm'] = $lang->testcase->needConfirm;
$lang->testcase->featureBar['browse']['group'] = '';
$lang->testcase->featureBar['browse']['suite'] = 'Cahier Recette';
$lang->testcase->featureBar['browse']['zerocase'] = '';
$lang->testcase->featureBar['groupcase'] = $lang->testcase->featureBar['browse'];
+82
View File
@@ -0,0 +1,82 @@
<?php
$lang->testreport->common = 'Rapport de Test';
$lang->testreport->browse = 'Rapports de Test';
$lang->testreport->create = 'Créer un Rapport';
$lang->testreport->edit = 'Modifier Rapport';
$lang->testreport->delete = 'Supprimer Rapport';
$lang->testreport->export = 'Exporter';
$lang->testreport->exportAction = 'Exporter Rapport';
$lang->testreport->view = 'Détail Rapport';
$lang->testreport->recreate = 'Recréer';
$lang->testreport->title = 'Titre';
$lang->testreport->product = $lang->productCommon;
$lang->testreport->bugTitle = 'Bug';
$lang->testreport->storyTitle = 'Story';
$lang->testreport->project = 'Projet';
$lang->testreport->testtask = 'Campagne';
$lang->testreport->tasks = $lang->testreport->testtask;
$lang->testreport->startEnd = 'Début&Fin';
$lang->testreport->owner = 'Propriétaire';
$lang->testreport->members = 'Utilisateurs';
$lang->testreport->begin = 'Début';
$lang->testreport->end = 'Fin';
$lang->testreport->stories = 'Story Testée';
$lang->testreport->bugs = 'Bug Testé';
$lang->testreport->builds = 'Info Build';
$lang->testreport->goal = 'But Projet';
$lang->testreport->cases = 'CasTest';
$lang->testreport->bugInfo = 'Distribution Bugs';
$lang->testreport->report = 'Résumé';
$lang->testreport->legacyBugs = 'Bugs Restants';
$lang->testreport->createdBy = 'CreatedBy';
$lang->testreport->createdDate = 'Créé le';
$lang->testreport->objectID = 'Objet';
$lang->testreport->objectType = 'Object Type';
$lang->testreport->profile = 'Profil';
$lang->testreport->value = 'Valeur';
$lang->testreport->none = 'Aucun';
$lang->testreport->all = 'Tous Rapports';
$lang->testreport->deleted = 'Supprimé';
$lang->testreport->selectTask = 'Créer rapport par Campagne';
$lang->testreport->legendBasic = 'Infos de Base';
$lang->testreport->legendStoryAndBug = 'Périmètre';
$lang->testreport->legendBuild = 'Test Rounds';
$lang->testreport->legendCase = 'CasTests associés';
$lang->testreport->legendLegacyBugs = 'Bugs Restants';
$lang->testreport->legendReport = 'Rapport';
$lang->testreport->legendComment = 'Résumé';
$lang->testreport->legendMore = 'Plus...';
$lang->testreport->bugSeverityGroups = 'Distribution Sévérité de Bug';
$lang->testreport->bugTypeGroups = 'Distribution Type de Bug';
$lang->testreport->bugStatusGroups = 'Distribution Statut de Bug';
$lang->testreport->bugOpenedByGroups = 'Distribution Bug Signalé par';
$lang->testreport->bugResolvedByGroups = 'Distribution Bug Résolu par';
$lang->testreport->bugResolutionGroups = 'Distribution Bug Résolution';
$lang->testreport->bugModuleGroups = 'Distribution Bug Module';
$lang->testreport->legacyBugs = 'Bugs Restants';
$lang->testreport->bugConfirmedRate = 'Taux de Bugs confirmés (Résolution est corrigée ou reportée / statut est résolu ou fermé)';
$lang->testreport->bugCreateByCaseRate = 'Taux Bug Signalés par CasTest (Bugs signalés dans les CasTests / Nouveaux bugs)';
$lang->testreport->caseSummary = 'Total <strong>%s</strong> casTests. <strong>%s</strong> casTests joués. <strong>%s</strong> résultats générés. <strong>%s</strong> casTests ont échoué.';
$lang->testreport->buildSummary = 'Testé <strong>%s</strong> builds.';
$lang->testreport->confirmDelete = 'Voulez-vous supprimer ce rapport ?';
$lang->testreport->moreNotice = 'More features can be extended with reference to the ZenTao extension manual, or you can contact us at renee@easysoft.ltd for customization.';
$lang->testreport->exportNotice = "Exporté par <a href='https://www.zentao.pm' target='_blank' style='color:grey'>ZenTao</a>";
$lang->testreport->noReport = "Aucun rapport n'a été généré. Vérifiez plus tard.";
$lang->testreport->foundBugTip = "Bugs trouvés dans cette période de build et les build affectés sont dans la période de test.";
$lang->testreport->legacyBugTip = "Bigs Actifs, ou bugs qui n'ont pas été résolus dans la période de test.";
$lang->testreport->fromCaseBugTip = "Bugs trouvés en jouant des CasTests pendant la période de test.";
$lang->testreport->errorTrunk = "Vous ne pouvez pas créer un rapport de test pour le tronc. Modifiez le build lié !";
$lang->testreport->noTestTask = "Pas de campagne de test pour ce {$lang->productCommon}, aucun rapport ne peut être généré. Choisissez un {$lang->productCommon} avec des campagnes de recette et vous pourrez produire des rapports.";
$lang->testreport->noObjectID = "Pas de campagne de test ou un {$lang->projectCommon} est sélectionné, aucun rapport ne peut être généré.";
$lang->testreport->moreProduct = "Les rapports de test ne peuvent être produits que pour le même {$lang->productCommon}.";
$lang->testreport->bugSummary = <<<EOD
Total <strong>%s</strong> Bugs signalés <a data-toggle='tooltip' class='text-warning' title='{$lang->testreport->foundBugTip}'><i class='icon-help'></i></a>,
<strong>%s</strong> Bugs restent non résolus <a data-toggle='tooltip' class='text-warning' title='{$lang->testreport->legacyBugTip}'><i class='icon-help'></i></a>,
<strong>%s</strong> Bugs trouvés en jouant des CasTests<a data-toggle='tooltip' class='text-warning' title='{$lang->testreport->fromCaseBugTip}'><i class='icon-help'></i></a>.
Taux Effectif de Bugs <a data-toggle='tooltip' class='text-warning' title='Résolution est résolue ou reportée / statut est résolu ou fermé'><i class='icon-help'></i></a>: <strong>%s</strong>,Taux de Bugs découverts par des CasTests<a data-toggle='tooltip' class='text-warning' title='Bugs découverts en jouant des CasTests / bugs'><i class='icon-help'></i></a>: <strong>%s</strong>
EOD;
-15
View File
@@ -21,11 +21,6 @@ $lang->testsuite->unlinkCase = "Verknüpfung aufheben";
$lang->testsuite->unlinkCaseAction = "Unlink Case";
$lang->testsuite->batchUnlinkCases = "Mehrere Verknüpfungen aufheben";
$lang->testsuite->deleted = 'gelöscht';
$lang->testsuite->exportTemplet = 'Exportiere Vorlage';
$lang->testsuite->batchCreateCase = 'Mehere Fälle erstellen';
$lang->testsuite->import = 'Importieren';
$lang->testsuite->importAction = 'Import Case';
$lang->testsuite->showImport = 'Imported Data';
$lang->testsuite->successSaved = 'Saved';
$lang->testsuite->id = 'ID';
@@ -46,7 +41,6 @@ $lang->testsuite->legendBasicInfo = 'Basis Info';
$lang->testsuite->unlinkedCases = 'Unverknüpfte Fälle';
$lang->testsuite->confirmDelete = 'Möchten Sie diese Suite löschen?';
$lang->testsuite->libraryDelete = 'Möchten Sie diese Bibliothek löschen?';
$lang->testsuite->confirmUnlinkCase = 'Möchten Sie diese Verknüpfung aufheben?';
$lang->testsuite->noticeNone = 'Sie haben noch keine Suite erstellt.';
$lang->testsuite->noModule = '<div>Sie haben keine Module</div><div>Jetzt verwalten</div>';
@@ -57,12 +51,3 @@ $lang->testsuite->lblUnlinkCase = 'Unverknüpfte Fälle';
$lang->testsuite->authorList['private'] = 'Privat';
$lang->testsuite->authorList['public'] = 'Öffentlich';
$lang->caselib->common = 'Fall Bibliothek';
$lang->caselib->all = 'Alle';
$lang->testsuite->createLib = 'Bibliothek erstellen';
$lang->testsuite->editLib = 'Bearbeiten';
$lang->testsuite->library = 'Fall in Bibliothek durchsuchen';
$lang->testsuite->createCase = 'Fall erstellen';
$lang->testsuite->libView = 'Übersicht';
+53
View File
@@ -0,0 +1,53 @@
<?php
/**
* The testsuite module en file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Yidong Wang <yidong@cnezsoft.com>
* @package testsuite
* @version $Id: zh-cn.php 4490 2013-02-27 03:27:05Z wyd621@gmail.com $
* @link https://www.zentao.pm
*/
$lang->testsuite->index = "Accueil Cahier Recette";
$lang->testsuite->create = "Créer un Cahier";
$lang->testsuite->delete = "Supprimer un Cahier";
$lang->testsuite->view = "Détail du Cahier";
$lang->testsuite->edit = "Editer Cahier";
$lang->testsuite->browse = "Liste des Cahiers de Recette";
$lang->testsuite->linkCase = "Incorporer CasTest";
$lang->testsuite->linkVersion = "Version";
$lang->testsuite->unlinkCase = "Retirer";
$lang->testsuite->unlinkCaseAction = "Retirer CasTest";
$lang->testsuite->batchUnlinkCases = "Retirer par Lot";
$lang->testsuite->deleted = 'Supprimé';
$lang->testsuite->successSaved = 'Sauvé';
$lang->testsuite->id = 'ID';
$lang->testsuite->common = 'Cahier de Recette';
$lang->testsuite->product = $lang->productCommon;
$lang->testsuite->name = 'Nom';
$lang->testsuite->type = 'Type';
$lang->testsuite->desc = 'Description';
$lang->testsuite->author = "Contrôle d'Accès";
$lang->testsuite->addedBy = 'Créé par';
$lang->testsuite->addedDate = 'Créé le';
$lang->testsuite->lastEditedBy = 'LastEditedBy';
$lang->testsuite->lastEditedDate = 'LastEditedDate';
$lang->testsuite->legendDesc = 'Description';
$lang->testsuite->legendBasicInfo = 'Infos de Base';
$lang->testsuite->unlinkedCases = 'CasTests non incorporés';
$lang->testsuite->confirmDelete = 'Voulez-vous supprimer ce cahier de recette ?';
$lang->testsuite->confirmUnlinkCase = 'Voulez-vous retirer ce CasTest ?';
$lang->testsuite->noticeNone = "Vous n'avez pas encore créé de Cahier de Recette pour l'instant.";
$lang->testsuite->noModule = '<div>Vous avez aucun Module.</div><div>Gérer les Modules maintenant.</div>';
$lang->testsuite->noTestsuite = 'Aucun Cahier de Recette.';
$lang->testsuite->lblCases = 'CasTests';
$lang->testsuite->lblUnlinkCase = 'Retirer CasTest';
$lang->testsuite->authorList['private'] = 'Privé';
$lang->testsuite->authorList['public'] = 'Public';
-15
View File
@@ -21,11 +21,6 @@ $lang->testsuite->unlinkCase = "移除";
$lang->testsuite->unlinkCaseAction = "移除用例";
$lang->testsuite->batchUnlinkCases = "批量移除用例";
$lang->testsuite->deleted = '已刪除';
$lang->testsuite->exportTemplet = '導出模板';
$lang->testsuite->batchCreateCase = '批量創建用例';
$lang->testsuite->import = '導入';
$lang->testsuite->importAction = '導入用例';
$lang->testsuite->showImport = '顯示導入數據';
$lang->testsuite->successSaved = '保存成功';
$lang->testsuite->id = '編號';
@@ -46,7 +41,6 @@ $lang->testsuite->legendBasicInfo = '基本信息';
$lang->testsuite->unlinkedCases = '未關聯';
$lang->testsuite->confirmDelete = '您確認要刪除該套件嗎?';
$lang->testsuite->libraryDelete = '您確認要刪除該用例庫嗎?';
$lang->testsuite->confirmUnlinkCase = '您確認要移除該用例嗎?';
$lang->testsuite->noticeNone = '您還沒有創建套件';
$lang->testsuite->noModule = '<div>您現在還沒有模組信息</div><div>請維護用例庫模組</div>';
@@ -57,12 +51,3 @@ $lang->testsuite->lblUnlinkCase = '移除用例';
$lang->testsuite->authorList['private'] = '私有';
$lang->testsuite->authorList['public'] = '公開';
$lang->caselib->common = '公共用例庫';
$lang->caselib->all = '所有用例庫';
$lang->testsuite->createLib = '創建用例庫';
$lang->testsuite->editLib = '編輯用例庫';
$lang->testsuite->library = '瀏覽庫用例';
$lang->testsuite->createCase = '創建用例';
$lang->testsuite->libView = '查看庫概況';
+165
View File
@@ -0,0 +1,165 @@
<?php
/**
* The testtask module English file of ZenTaoPMS.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package testtask
* @version $Id: en.php 4490 2013-02-27 03:27:05Z wyd621@gmail.com $
* @link https://www.zentao.pm
*/
$lang->testtask->index = "Accueil Recette";
$lang->testtask->create = "Initier Campagne";
$lang->testtask->reportChart = 'Rapport';
$lang->testtask->reportAction = 'Rapport CasTests';
$lang->testtask->delete = "Supprimer Campagne";
$lang->testtask->view = "Détail Campagne";
$lang->testtask->edit = "Editer Campagne";
$lang->testtask->browse = "Tester Campagne";
$lang->testtask->linkCase = "Inclure CasTests";
$lang->testtask->selectVersion = "Sélectioner Version";
$lang->testtask->unlinkCase = "Exclure";
$lang->testtask->batchUnlinkCases = "Exclure CasTests par Lot";
$lang->testtask->batchAssign = "Affecter par Lot";
$lang->testtask->runCase = "Jouer";
$lang->testtask->batchRun = "Jouer par Lot";
$lang->testtask->results = "Résultats";
$lang->testtask->resultsAction = "Résultats CasTest";
$lang->testtask->createBug = "Bug(+)";
$lang->testtask->assign = 'Affecter';
$lang->testtask->cases = 'Liste CasTests';
$lang->testtask->groupCase = "Revu par Groupe";
$lang->testtask->pre = 'Préc.';
$lang->testtask->next = 'Suiv';
$lang->testtask->start = "Commencer";
$lang->testtask->startAction = "Démarrer Campagne";
$lang->testtask->close = "Clôturer";
$lang->testtask->closeAction = "Clôturer Campagne";
$lang->testtask->wait = "En Attente";
$lang->testtask->block = "Bloquer";
$lang->testtask->blockAction = "Bloquer Campagne";
$lang->testtask->activate = "Activer";
$lang->testtask->activateAction = "Activer Campagne";
$lang->testtask->testing = "En Déroulement";
$lang->testtask->blocked = "Bloquée";
$lang->testtask->done = "Jouée";
$lang->testtask->totalStatus = "Toutes";
$lang->testtask->all = "Tous " . $lang->productCommon . "s";
$lang->testtask->allTasks = 'Toutes Recettes';
$lang->testtask->collapseAll = 'Replier';
$lang->testtask->expandAll = 'Déplier';
$lang->testtask->id = 'ID';
$lang->testtask->common = 'Recette';
$lang->testtask->product = $lang->productCommon;
$lang->testtask->project = $lang->projectCommon;
$lang->testtask->build = 'Build';
$lang->testtask->owner = 'Owner';
$lang->testtask->pri = 'Priorité';
$lang->testtask->name = 'Nom Campagne';
$lang->testtask->begin = 'Début';
$lang->testtask->end = 'Fin';
$lang->testtask->desc = 'Description';
$lang->testtask->mailto = 'Mailto';
$lang->testtask->status = 'Statut';
$lang->testtask->subStatus = 'Sub Status';
$lang->testtask->assignedTo = 'Affecté';
$lang->testtask->linkVersion = 'Build';
$lang->testtask->lastRunAccount = 'Jouée par';
$lang->testtask->lastRunTime = 'Dernier Run';
$lang->testtask->lastRunResult = 'Résultat';
$lang->testtask->reportField = 'Rapport';
$lang->testtask->files = 'Upload';
$lang->testtask->case = 'Liste CasTests';
$lang->testtask->version = 'Version';
$lang->testtask->caseResult = 'Résultat Test';
$lang->testtask->stepResults = 'Etape Résultat';
$lang->testtask->lastRunner = 'Joué par';
$lang->testtask->lastRunDate = 'Dernier Run';
$lang->testtask->date = 'Testé sur';;
$lang->testtask->beginAndEnd = 'Durée';
$lang->testtask->to = 'à';
$lang->testtask->legendDesc = 'Description';
$lang->testtask->legendReport = 'Rapport';
$lang->testtask->legendBasicInfo = 'Infos de Base';
$lang->testtask->statusList['wait'] = 'En Attente';
$lang->testtask->statusList['doing'] = 'En Déroulement';
$lang->testtask->statusList['done'] = 'Jouée';
$lang->testtask->statusList['blocked'] = 'Bloquée';
$lang->testtask->priList[0] = '';
$lang->testtask->priList[3] = '3';
$lang->testtask->priList[1] = '1';
$lang->testtask->priList[2] = '2';
$lang->testtask->priList[4] = '4';
$lang->testtask->unlinkedCases = 'CasTests Non rattachés';
$lang->testtask->linkByBuild = 'Copier depuis build';
$lang->testtask->linkByStory = 'Lier par Story';
$lang->testtask->linkByBug = 'Lier par Bug';
$lang->testtask->linkBySuite = 'Lier par Cahier Recette';
$lang->testtask->passAll = 'Tout Réussir';
$lang->testtask->pass = 'Réussite';
$lang->testtask->fail = 'Echec';
$lang->testtask->showResult = 'Jouée <span class="text-info">%s</span> fois';
$lang->testtask->showFail = 'Echouée <span class="text-danger">%s</span> fois';
$lang->testtask->confirmDelete = 'Voulez-vous supprimer ce build ?';
$lang->testtask->confirmUnlinkCase = 'Voulez-vous détacher ce CasTest ?';
$lang->testtask->noticeNoOther = "Il n'y a pas de Campagnes de Recette pour ce product.";
$lang->testtask->noTesttask = 'Pas de campagne. ';
$lang->testtask->checkLinked = "Vérifiez si le product auquel la campagne de recette est associée est bien lié à un projet.";
$lang->testtask->assignedToMe = 'Affecté à Moi';
$lang->testtask->allCases = 'Tous les CasTests';
$lang->testtask->lblCases = 'CasTest';
$lang->testtask->lblUnlinkCase = 'Exclure CasTest';
$lang->testtask->lblRunCase = 'Jouer le CasTest';
$lang->testtask->lblResults = 'Résultats';
$lang->testtask->placeholder = new stdclass();
$lang->testtask->placeholder->begin = 'Début';
$lang->testtask->placeholder->end = 'Fin';
$lang->testtask->mail = new stdclass();
$lang->testtask->mail->create = new stdclass();
$lang->testtask->mail->edit = new stdclass();
$lang->testtask->mail->close = new stdclass();
$lang->testtask->mail->create->title = "%s a créé campagne de recette #%s:%s";
$lang->testtask->mail->edit->title = "%s a modifié campagne de recette #%s:%s";
$lang->testtask->mail->close->title = "%s a clôturé campagne de recette #%s:%s";
$lang->testtask->action = new stdclass();
$lang->testtask->action->testtaskopened = '$date, <strong>$actor</strong> a soumis campagne de recette <strong>$extra</strong>.' . "\n";
$lang->testtask->action->testtaskstarted = '$date, <strong>$actor</strong> a démarré campagne de recette <strong>$extra</strong>.' . "\n";
$lang->testtask->action->testtaskclosed = '$date, <strong>$actor</strong> a terminé campagne de recette <strong>$extra</strong>.' . "\n";
$lang->testtask->unexecuted = 'En Attente';
/* 统计报表。*/
$lang->testtask->report = new stdclass();
$lang->testtask->report->common = 'Rapport';
$lang->testtask->report->select = 'Sélect Type de Rapport';
$lang->testtask->report->create = 'Créer Rapport';
$lang->testtask->report->charts['testTaskPerRunResult'] = 'Résultat des CasTests';
$lang->testtask->report->charts['testTaskPerType'] = 'Type de CasTests';
$lang->testtask->report->charts['testTaskPerModule'] = 'Module CasTests';
$lang->testtask->report->charts['testTaskPerRunner'] = 'CasTests joués par';
$lang->testtask->report->charts['bugSeverityGroups'] = 'Distribution Bug Sévérité';
$lang->testtask->report->charts['bugStatusGroups'] = 'Distribution Bug Statuts';
$lang->testtask->report->charts['bugOpenedByGroups'] = 'Distribution signalement de Bug';
$lang->testtask->report->charts['bugResolvedByGroups'] = 'Distribution Résolus par';
$lang->testtask->report->charts['bugResolutionGroups'] = 'Distribution Résolution';
$lang->testtask->report->charts['bugModuleGroups'] = 'Distribution Bug Module';
$lang->testtask->report->options = new stdclass();
$lang->testtask->report->options->graph = new stdclass();
$lang->testtask->report->options->type = 'pie';
$lang->testtask->report->options->width = 500;
$lang->testtask->report->options->height = 140;

Some files were not shown because too many files have changed in this diff Show More