diff --git a/COPYRIGHT b/COPYRIGHT
index e6525d5ccb2..a94d93ede38 100644
--- a/COPYRIGHT
+++ b/COPYRIGHT
@@ -68,7 +68,7 @@ jQuery jqueryFileTree 1.0.1 GPL and MIT License Yes
jQuery jquerytreeview 1.4.1 MIT License Yes JS library for filetree
jQuery TableDnD 0.6 GPL and MIT License Yes JS library plugin TableDnD (to reorder table rows)
jQuery Timepicker 1.1.0 GPL and MIT License Yes JS library Timepicker addon for Datepicker
-jsGanttImproved 2.7.3 BSD License Yes JS library (to build Gantt reports)
+jsGanttImproved 2.8.10 BSD License Yes JS library (to build Gantt reports)
SwaggerUI 2.2.10 GPL-2+ Yes JS library to offer the REST API explorer
Image libraries:
diff --git a/dev/dolibarr_changes.txt b/dev/dolibarr_changes.txt
index 58723960150..3f62333d5e8 100644
--- a/dev/dolibarr_changes.txt
+++ b/dev/dolibarr_changes.txt
@@ -31,7 +31,7 @@ Replace:
d.items&&
With
d&&d.items&&
-
+
ESCPOS:
-------
@@ -55,8 +55,8 @@ NUSOAP:
* Line 1257 of file nusoap.php. Add:
libxml_disable_entity_loader(true); // Avoid load of external entities (security problem). Required only for libxml < 2.
-
-
+
+
* Line 4346 of file nusoap.php
$rev = array();
@@ -128,13 +128,13 @@ with
if (!@TCPDF_STATIC::file_exists($file)) {
// DOL CHANGE If we keep this, the image is not visible on pages after the first one.
//var_dump($file.' '.(!@TCPDF_STATIC::file_exists($file)));
- //return false;
+ //return false;
$tfile = str_replace(' ', '%20', $file);
if (@TCPDF_STATIC::file_exists($tfile)) {
$file = $tfile;
}
}
-
+
* Replace in tcpdf.php:
if (($imgsrc[0] === '/') AND !empty($_SERVER['DOCUMENT_ROOT']) AND ($_SERVER['DOCUMENT_ROOT'] != '/')) {
with
@@ -174,7 +174,7 @@ with
imagesetpixel($imgalpha, $xpx, $ypx, $alpha);
into
imagesetpixel($imgalpha, $xpx, $ypx, (int) $alpha);
-
+
* Removed useless directories ("examples", "tools")
* Optionally, removed all fonts except
@@ -243,7 +243,7 @@ with:
with
foreach ($value[1] as $k => $v) {
-* Fix by replacing
+* Fix by replacing
if ($res[0] == PDF_TYPE_OBJECT)
with
if (isset($res[0]) && $res[0] == PDF_TYPE_OBJECT)
@@ -253,23 +253,16 @@ with
JSGANTT:
--------
* Replace in function JSGantt.taskLink
- var OpenWindow=window.open(pRef, "newwin", "height="+vHeight+",width="+vWidth);
+ window.open(pRef, 'newwin', 'height=' + vHeight + ',width=' + vWidth);
with
- // LDR To open in same window
+ // @CHANGE DOLI To open in same window
//var OpenWindow=window.open(pRef, "newwin", "height="+vHeight+",width="+vWidth);
window.location.href=pRef
-* Replace
- vTmpDiv=this.newNode(vTmpCell, 'div', null, null, vTaskList[i].getResource());
-with
- var vTmpNode=this.newNode(vTmpCell, 'div', null, '');
- vTmpNode=this.newNode(vTmpNode, 'a', null, '', vLangs[vLang]['moreinfo']);
- vTmpNode.setAttribute('href',vTaskList[i].getLink());
-
* Replace '% Comp.' to have a smaller text column header
- 'comp':'% Comp.'
+ 'comp': '%...'
with
- 'comp':'%'
+ 'comp': '%'
@@ -307,19 +300,19 @@ RESTLER:
// @CHANGE LDR
if (!is_string($haystack)) return false;
-* Replace
+* Replace
$loaders = array_unique(static::$rogueLoaders);
-
- with
-
+
+ with
+
$loaders = array_unique(static::$rogueLoaders, SORT_REGULAR);
-
+
* Replace CommentParser.php line 423
elseif (count($value) && is_numeric($value[0]))
-
+
with
-
+
elseif (count($value) && isset($value[0]) && is_numeric($value[0]))
* Add CommentParser.php line 406 & 407 to remove a warning on api request in php 8.1
@@ -417,5 +410,3 @@ Edit CSS to restore line removed between 4.0.5 and 4.0.6. It generates this bug:
.select2-hidden-accessible {
margin: -10000px !important; /* line to restore */
}
-
-
diff --git a/dev/translation/dynamic_translation_keys.lst b/dev/translation/dynamic_translation_keys.lst
index 47ab2e14a79..2dcd99eafbc 100644
--- a/dev/translation/dynamic_translation_keys.lst
+++ b/dev/translation/dynamic_translation_keys.lst
@@ -2650,9 +2650,7 @@ ProductsOrServicesTranslations
ProductsPipeServices
ProductsPricePerCustomer
ProfId10
-ProfId10FR
ProfId10Short
-ProfId10ShortFR
ProfId1ShortCM
ProfId1ShortFR
ProfId2ShortCM
@@ -2663,14 +2661,15 @@ ProfId4ShortCM
ProfId4ShortFR
ProfId5ShortCM
ProfId5ShortFR
-ProfId6ShortCM
-ProfId6ShortFR
+ProfId1Short
+ProfId2Short
+ProfId3Short
+ProfId4Short
+ProfId5Short
+ProfId6Short
ProfId7Short
-ProfId7ShortFR
ProfId8Short
-ProfId8ShortFR
ProfId9Short
-ProfId9ShortFR
ProformaBill
ProjectCreatedByEmailCollector
ProjectHasNoCategory
diff --git a/dev/translation/sanity_check_trans_missing_unused.sh b/dev/translation/sanity_check_trans_missing_unused.sh
index 459f59117a5..b003127d5be 100755
--- a/dev/translation/sanity_check_trans_missing_unused.sh
+++ b/dev/translation/sanity_check_trans_missing_unused.sh
@@ -129,7 +129,7 @@ if [ -s "${MISSING_AND_UNUSED_FILE}" ] ; then
echo "## :warning: Unused Translations may match ->trans(\$key.'SomeString')."
echo "## You can add such dynamic keys to $(basename "$DYNAMIC_KEYS_SRC_FILE")"
echo "## so that they are ignored for this report."
- echo "## :warning: Unused Translations may be commented in the code"
+ echo "## :warning: Unused Translations may also be commented in the code"
echo "## You can add such 'disabled' keys to $(basename "$EXCLUDE_KEYS_SRC_FILE")"
echo "## so that they are ignored for this report."
echo
diff --git a/htdocs/accountancy/admin/subaccount.php b/htdocs/accountancy/admin/subaccount.php
index 8c9a493a258..5e30c3d0a50 100644
--- a/htdocs/accountancy/admin/subaccount.php
+++ b/htdocs/accountancy/admin/subaccount.php
@@ -44,7 +44,7 @@ $contextpage = GETPOST('contextpage', 'aZ') ? GETPOST('contextpage', 'aZ') : 'ac
$search_subaccount = GETPOST('search_subaccount', 'alpha');
$search_label = GETPOST('search_label', 'alpha');
-$search_type = GETPOSTINT('search_type');
+$search_type = GETPOST('search_type', 'intcomma');
// Security check
if ($user->socid > 0) {
diff --git a/htdocs/admin/company.php b/htdocs/admin/company.php
index f07961486c6..1a5a68fc085 100644
--- a/htdocs/admin/company.php
+++ b/htdocs/admin/company.php
@@ -652,7 +652,7 @@ print '';
if ($langs->transcountry("ProfId1", $mysoc->country_code) != '-') {
print '
| ';
if (!empty($mysoc->country_code)) {
- print '';
+ print '';
} else {
print $countrynotdefined;
}
diff --git a/htdocs/core/class/html.formother.class.php b/htdocs/core/class/html.formother.class.php
index 86f850f7cdf..b0f25e98872 100644
--- a/htdocs/core/class/html.formother.class.php
+++ b/htdocs/core/class/html.formother.class.php
@@ -1271,7 +1271,7 @@ class FormOther
$selectboxlist .= '';
$selectboxlist .= '';
$selectboxlist .= '';
- $selectboxlist .= Form::selectarray('boxcombo', $arrayboxtoactivatelabel, -1, $langs->trans("ChooseBoxToAdd").'...', 0, 0, '', 0, 0, 0, 'ASC', 'maxwidth150onsmartphone hideonprint', 0, 'hidden selected', 0, 0);
+ $selectboxlist .= Form::selectarray('boxcombo', $arrayboxtoactivatelabel, -1, $langs->trans("ChooseBoxToAdd").'...', 0, 0, '', 0, 0, 0, 'ASC', 'maxwidth300 hideonprint', 0, 'hidden selected', 0, 0);
if (empty($conf->use_javascript_ajax)) {
$selectboxlist .= ' ';
}
diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php
index d150e866f02..3403a95d269 100644
--- a/htdocs/core/lib/functions.lib.php
+++ b/htdocs/core/lib/functions.lib.php
@@ -7648,7 +7648,11 @@ function dol_string_onlythesehtmlattributes($stringtoclean, $allowed_attributes
// Warning: loadHTML does not support HTML5 on old libxml versions.
$dom = new DOMDocument('', 'UTF-8');
+ // If $stringtoclean is wrong, it will generates warnings. So we disable warnings and restore them later.
+ $savwarning = error_reporting();
+ error_reporting(E_ALL & ~E_WARNING & ~E_NOTICE);
$dom->loadHTML($stringtoclean, LIBXML_ERR_NONE | LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD | LIBXML_NONET | LIBXML_NOWARNING | LIBXML_NOXMLDECL);
+ error_reporting($savwarning);
if ($dom instanceof DOMDocument) {
for ($els = $dom->getElementsByTagname('*'), $i = $els->length - 1; $i >= 0; $i--) {
diff --git a/htdocs/core/modules/societe/mod_codecompta_digitaria.php b/htdocs/core/modules/societe/mod_codecompta_digitaria.php
index fc0e9f7ebb4..ff7caf85e5b 100644
--- a/htdocs/core/modules/societe/mod_codecompta_digitaria.php
+++ b/htdocs/core/modules/societe/mod_codecompta_digitaria.php
@@ -123,7 +123,7 @@ class mod_codecompta_digitaria extends ModeleAccountancyCode
$texte = str_replace(array('{s1}', '{s2}', '{s3}', '{s4}'), array($s1, $s2, $s3, $s4), $texte);
$texte .= " \n";
// Remove special char if COMPANY_DIGITARIA_REMOVE_SPECIAL is set to 1 or not set (default)
- if (!isset($conf->global->COMPANY_DIGITARIA_REMOVE_SPECIAL) || !empty($conf->global->$conf->global->COMPANY_DIGITARIA_REMOVE_SPECIAL)) {
+ if (!isset($conf->global->COMPANY_DIGITARIA_REMOVE_SPECIAL) || !empty($conf->global->COMPANY_DIGITARIA_REMOVE_SPECIAL)) {
$texte .= $langs->trans('RemoveSpecialChars').' = '.yn(1)." \n";
}
// Apply a regex replacement pattern on code if COMPANY_DIGITARIA_CLEAN_REGEX is set. Value must be a regex with parenthesis. The part into parenthesis is kept, the rest removed.
diff --git a/htdocs/expensereport/list.php b/htdocs/expensereport/list.php
index 6cc403e87d5..ccabebed79f 100644
--- a/htdocs/expensereport/list.php
+++ b/htdocs/expensereport/list.php
@@ -103,7 +103,7 @@ if (!$sortfield) {
$sall = trim((GETPOST('search_all', 'alphanohtml') != '') ? GETPOST('search_all', 'alphanohtml') : GETPOST('sall', 'alphanohtml'));
$search_ref = GETPOST('search_ref', 'alpha');
-$search_user = GETPOSTINT('search_user');
+$search_user = GETPOST('search_user', 'intcomma');
$search_amount_ht = GETPOST('search_amount_ht', 'alpha');
$search_amount_vat = GETPOST('search_amount_vat', 'alpha');
$search_amount_ttc = GETPOST('search_amount_ttc', 'alpha');
diff --git a/htdocs/fourn/commande/dispatch.php b/htdocs/fourn/commande/dispatch.php
index f9ec2a67379..9de6922119f 100644
--- a/htdocs/fourn/commande/dispatch.php
+++ b/htdocs/fourn/commande/dispatch.php
@@ -451,7 +451,7 @@ if ($action == 'confirm_deleteline' && $confirm == 'yes' && $permissiontoreceive
}
// Update a dispatched line
-if ($action == 'updateline' && $permissiontoreceive) {
+if ($action == 'updateline' && $permissiontoreceive && empty($cancel)) {
$db->begin();
$error = 0;
diff --git a/htdocs/includes/jsgantt/jsgantt.css b/htdocs/includes/jsgantt/jsgantt.css
index f5c2d2971f8..3c9121a3c13 100644
--- a/htdocs/includes/jsgantt/jsgantt.css
+++ b/htdocs/includes/jsgantt/jsgantt.css
@@ -2,7 +2,7 @@
div.gantt {
font-family: tahoma, arial, verdana, Sans-serif;
- font-size: 10px;
+ font-size: 12px;
color: #656565;
}
@@ -31,10 +31,9 @@ div.gantt {
font-size: 12px;
border: #efefef 1px solid;
text-align: center;
- cursor: default
+ cursor: default;
}
-
.gtasklist {
height: 19px;
min-width: 5px;
@@ -44,7 +43,7 @@ div.gantt {
border-right: none;
}
-.gtasknolist-label{
+.gtasknolist-label {
padding: 10px 50px;
}
/* all three width values set just to make sure - helps resizing code */
@@ -56,7 +55,7 @@ div.gantt {
.gminorheading {
background-color: #ffffff;
font-weight: bold;
- font-size: 9px;
+ font-size: 11px;
white-space: nowrap;
}
@@ -154,9 +153,9 @@ td.gspanning {
.gtaskname {
min-width: 170px;
- max-width: 170px;
- width: 170px;
- font-size: 9px;
+ max-width: 220px;
+ width: 220px;
+ font-size: 12px;
border-left: none;
}
@@ -246,6 +245,11 @@ span.gfoldercollapse {
background-color: #fffde5;
}
+.gitemdifferent td {
+ background-image: none;
+ background-color: rgba(0, 0, 0, 0.05);
+}
+
/* task bar caption text styles */
.gmilecaption,
@@ -487,7 +491,7 @@ span.gfoldercollapse {
div.gtaskbarcontainer {
z-index: 1;
position: absolute;
- top: 0px
+ top: 0px;
}
.textbar {
@@ -510,7 +514,7 @@ div.gtaskbarcontainer {
font-size: 10px;
display: block;
background: #ffffff;
- color: #656565
+ color: #656565;
}
.gTaskInfo {
@@ -652,7 +656,7 @@ div.gtaskbarcontainer {
/* Old Internet Explorer version hacks */
.gantt {
- _height: 100%
+ _height: 100%;
}
/* otherwise the chart disappears! */
@@ -777,7 +781,6 @@ td.gspanning div {
}
@media print {
-
/* All your print styles go here */
html,
.gchartgrid {
@@ -787,6 +790,32 @@ td.gspanning div {
.glistgrid {
float: none !important;
}
+
+ /* Hide scrollbar for Chrome, Safari and Opera */
+ .gchartcontainer *::-webkit-scrollbar {
+ display: none;
+ }
+
+ /* Hide scrollbar for IE, Edge and Firefox */
+ .gchartcontainer * {
+ -ms-overflow-style: none; /* IE and Edge */
+ scrollbar-width: none; /* Firefox */
+ }
+
+ /* Hide tool-tip */
+ .JSGanttToolTip {
+ display: none !important;
+ }
+
+ /* This is the default css, injected by the JSGantt.printChart(width,height); function -->
+ @page {
+ size: ${width}mm ${height}mm;
+ }
+
+ .gchartcontainer {
+ width: ${width}mm;
+ }
+ <-- This will be injected by the JSGantt.printChart() function */
}
/* if using setUseSingleCell(1) the following is a suggested set of CSS3 styles to recreate the table grid - won't work on old browsers
@@ -812,16 +841,21 @@ td.gspanning div {
display: flex;
flex-direction: column;
+ /* Allow resize */
+ resize: horizontal;
}
.gmainright {
overflow: hidden;
- flex: auto;
+ flex: 1 1 auto;
}
.gmainleft {
overflow: hidden;
- flex: 0 0 50%;
+ flex: 0 0 20%;
+ min-width: 220px;
+ /* Allow side to grow and shrink */
+ flex: 1 0 auto;
}
.gtasktableh tr,
@@ -927,25 +961,25 @@ td.gspanning div {
}
table {
- page-break-after: auto
+ page-break-after: auto;
}
tr {
page-break-inside: avoid;
- page-break-after: auto
+ page-break-after: auto;
}
td {
page-break-inside: avoid;
- page-break-after: auto
+ page-break-after: auto;
}
thead {
- display: table-header-group
+ display: table-header-group;
}
tfoot {
- display: table-footer-group
+ display: table-footer-group;
}
}
@@ -966,7 +1000,7 @@ td.gspanning div {
border-radius: 8px;
border: 2px solid white;
/* should match background, can't be transparent */
- background-color: rgba(0, 0, 0, .5);
+ background-color: rgba(0, 0, 0, 0.5);
}
.frame::-webkit-scrollbar-track {
@@ -979,4 +1013,4 @@ td.gspanning div {
overflow: scroll;
-ms-overflow-style: scrollbar;
display: block;
-}
\ No newline at end of file
+}
diff --git a/htdocs/includes/jsgantt/jsgantt.js b/htdocs/includes/jsgantt/jsgantt.js
index be9a20611f2..d0ba238bb89 100644
--- a/htdocs/includes/jsgantt/jsgantt.js
+++ b/htdocs/includes/jsgantt/jsgantt.js
@@ -1,6 +1,7 @@
(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.JSGantt = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i 1)
vTmpDate.setDate(vTmpDate.getDate() + 1);
}
- else if (this.vFormat == 'hour') {
+ else if (this.vFormat == "hour") {
for (var i = vTmpDate.getHours(); i < 24; i++) {
vTmpDate.setHours(i); //works around daylight savings but may look a little odd on days where the clock goes forward
if (vTmpDate <= vMaxDate) {
- var vTmpCell = draw_utils_1.newNode(vTmpRow, 'td', null, vMinorHeaderCellClass);
- draw_utils_1.newNode(vTmpCell, 'div', null, null, date_utils_1.formatDateStr(vTmpDate, this.vHourMinorDateDisplayFormat, this.vLangs[this.vLang]), vColWidth);
+ var vTmpCell = draw_utils_1.newNode(vTmpRow, "td", null, vMinorHeaderCellClass);
+ draw_utils_1.newNode(vTmpCell, "div", null, null, date_utils_1.formatDateStr(vTmpDate, this.vHourMinorDateDisplayFormat, this.vLangs[this.vLang]), vColWidth);
vNumCols++;
}
}
@@ -442,18 +440,18 @@ exports.GanttChart = function (pDiv, pFormat) {
}
var vDateRow = vTmpRow;
// Calculate size of grids : Plus 3 because 1 border left + 2 of paddings
- var vTaskLeftPx = (vNumCols * (vColWidth + 3)) + 1;
+ var vTaskLeftPx = vNumCols * (vColWidth + 3) + 1;
// Fix a small space at the end for day
- if (this.vFormat === 'day') {
+ if (this.vFormat === "day") {
vTaskLeftPx += 2;
}
- vTmpTab.style.width = vTaskLeftPx + 'px'; // Ensure that the headings has exactly the same width as the chart grid
+ vTmpTab.style.width = vTaskLeftPx + "px"; // Ensure that the headings has exactly the same width as the chart grid
// const vTaskPlanLeftPx = (vNumCols * (vColWidth + 3)) + 1;
var vSingleCell = false;
- if (this.vUseSingleCell !== 0 && this.vUseSingleCell < (vNumCols * vNumRows))
+ if (this.vUseSingleCell !== 0 && this.vUseSingleCell < vNumCols * vNumRows)
vSingleCell = true;
- draw_utils_1.newNode(vTmpDiv, 'div', null, 'rhscrpad', null, null, vTaskLeftPx + 1);
- vTmpDiv = draw_utils_1.newNode(vRightHeader, 'div', null, 'glabelfooter');
+ draw_utils_1.newNode(vTmpDiv, "div", null, "rhscrpad", null, null, vTaskLeftPx + 1);
+ vTmpDiv = draw_utils_1.newNode(vRightHeader, "div", null, "glabelfooter");
return { gChartLbl: gChartLbl, vTaskLeftPx: vTaskLeftPx, vSingleCell: vSingleCell, vDateRow: vDateRow, vRightHeader: vRightHeader, vNumCols: vNumCols };
};
/**
@@ -463,23 +461,23 @@ exports.GanttChart = function (pDiv, pFormat) {
*/
this.drawCharBody = function (vTaskLeftPx, vTmpContentTabWrapper, gChartLbl, gListLbl, vMinDate, vMaxDate, vSingleCell, vNumCols, vColWidth, vDateRow) {
var vRightTable = document.createDocumentFragment();
- var vTmpDiv = draw_utils_1.newNode(vRightTable, 'div', this.vDivId + 'gchartbody', 'gchartgrid gcontainercol');
+ var vTmpDiv = draw_utils_1.newNode(vRightTable, "div", this.vDivId + "gchartbody", "gchartgrid gcontainercol");
this.setChartBody(vTmpDiv);
- var vTmpTab = draw_utils_1.newNode(vTmpDiv, 'table', this.vDivId + 'chartTable', 'gcharttable', null, vTaskLeftPx);
+ var vTmpTab = draw_utils_1.newNode(vTmpDiv, "table", this.vDivId + "chartTable", "gcharttable", null, vTaskLeftPx);
this.setChartTable(vTmpTab);
- draw_utils_1.newNode(vTmpDiv, 'div', null, 'rhscrpad', null, null, vTaskLeftPx + 1);
- var vTmpTBody = draw_utils_1.newNode(vTmpTab, 'tbody');
- var vTmpTFoot = draw_utils_1.newNode(vTmpTab, 'tfoot');
- events_1.syncScroll([vTmpContentTabWrapper, vTmpDiv], 'scrollTop');
- events_1.syncScroll([gChartLbl, vTmpDiv], 'scrollLeft');
- events_1.syncScroll([vTmpContentTabWrapper, gListLbl], 'scrollLeft');
+ draw_utils_1.newNode(vTmpDiv, "div", null, "rhscrpad", null, null, vTaskLeftPx + 1);
+ var vTmpTBody = draw_utils_1.newNode(vTmpTab, "tbody");
+ var vTmpTFoot = draw_utils_1.newNode(vTmpTab, "tfoot");
+ events_1.syncScroll([vTmpContentTabWrapper, vTmpDiv], "scrollTop");
+ events_1.syncScroll([gChartLbl, vTmpDiv], "scrollLeft");
+ events_1.syncScroll([vTmpContentTabWrapper, gListLbl], "scrollLeft");
// Draw each row
var i = 0;
var j = 0;
var bd;
if (this.vDebug) {
bd = new Date();
- console.info('before tasks loop', bd);
+ console.info("before tasks loop", bd);
}
for (i = 0; i < this.vTaskList.length; i++) {
var curTaskStart = this.vTaskList[i].getStart() ? this.vTaskList[i].getStart() : this.vTaskList[i].getPlanStart();
@@ -496,31 +494,31 @@ exports.GanttChart = function (pDiv, pFormat) {
vTaskPlanRightPx = general_utils_1.getOffset(curTaskPlanStart, curTaskPlanEnd, vColWidth, this.vFormat, this.vShowWeekends);
}
var vID = this.vTaskList[i].getID();
- var vComb = (this.vTaskList[i].getParItem() && this.vTaskList[i].getParItem().getGroup() == 2);
- var vCellFormat = '';
+ var vComb = this.vTaskList[i].getParItem() && this.vTaskList[i].getParItem().getGroup() == 2;
+ var vCellFormat = "";
var vTmpDiv_1 = null;
var vTmpItem = this.vTaskList[i];
var vCaptClass = null;
// set cell width only for first row because of table-layout:fixed
var taskCellWidth = i === 0 ? vColWidth : null;
if (this.vTaskList[i].getMile() && !vComb) {
- var vTmpRow = draw_utils_1.newNode(vTmpTBody, 'tr', this.vDivId + 'childrow_' + vID, 'gmileitem gmile' + this.vFormat, null, null, null, ((this.vTaskList[i].getVisible() == 0) ? 'none' : null));
+ var vTmpRow = draw_utils_1.newNode(vTmpTBody, "tr", this.vDivId + "childrow_" + vID, "gmileitem gmile" + this.vFormat, null, null, null, this.vTaskList[i].getVisible() == 0 ? "none" : null);
this.vTaskList[i].setChildRow(vTmpRow);
events_1.addThisRowListeners(this, this.vTaskList[i].getListChildRow(), vTmpRow);
- var vTmpCell = draw_utils_1.newNode(vTmpRow, 'td', null, 'gtaskcell gtaskcellmile', null, vColWidth, null, null, null);
- vTmpDiv_1 = draw_utils_1.newNode(vTmpCell, 'div', null, 'gtaskcelldiv', '\u00A0\u00A0');
- vTmpDiv_1 = draw_utils_1.newNode(vTmpDiv_1, 'div', this.vDivId + 'bardiv_' + vID, 'gtaskbarcontainer', null, 12, vTaskLeftPx_1 + vTaskRightPx - 6);
+ var vTmpCell = draw_utils_1.newNode(vTmpRow, "td", null, "gtaskcell gtaskcellmile", null, vColWidth, null, null, null);
+ vTmpDiv_1 = draw_utils_1.newNode(vTmpCell, "div", null, "gtaskcelldiv", "\u00A0\u00A0");
+ vTmpDiv_1 = draw_utils_1.newNode(vTmpDiv_1, "div", this.vDivId + "bardiv_" + vID, "gtaskbarcontainer", null, 12, vTaskLeftPx_1 + vTaskRightPx - 6);
this.vTaskList[i].setBarDiv(vTmpDiv_1);
- var vTmpDiv2 = draw_utils_1.newNode(vTmpDiv_1, 'div', this.vDivId + 'taskbar_' + vID, this.vTaskList[i].getClass(), null, 12);
+ var vTmpDiv2 = draw_utils_1.newNode(vTmpDiv_1, "div", this.vDivId + "taskbar_" + vID, this.vTaskList[i].getClass(), null, 12);
this.vTaskList[i].setTaskDiv(vTmpDiv2);
if (this.vTaskList[i].getCompVal() < 100)
- vTmpDiv2.appendChild(document.createTextNode('\u25CA'));
+ vTmpDiv2.appendChild(document.createTextNode("\u25CA"));
else {
- vTmpDiv2 = draw_utils_1.newNode(vTmpDiv2, 'div', null, 'gmilediamond');
- draw_utils_1.newNode(vTmpDiv2, 'div', null, 'gmdtop');
- draw_utils_1.newNode(vTmpDiv2, 'div', null, 'gmdbottom');
+ vTmpDiv2 = draw_utils_1.newNode(vTmpDiv2, "div", null, "gmilediamond");
+ draw_utils_1.newNode(vTmpDiv2, "div", null, "gmdtop");
+ draw_utils_1.newNode(vTmpDiv2, "div", null, "gmdbottom");
}
- vCaptClass = 'gmilecaption';
+ vCaptClass = "gmilecaption";
if (!vSingleCell && !vComb) {
this.drawColsChart(vNumCols, vTmpRow, taskCellWidth, vMinDate, vMaxDate);
}
@@ -530,31 +528,31 @@ exports.GanttChart = function (pDiv, pFormat) {
// Draw Group Bar which has outer div with inner group div
// and several small divs to left and right to create angled-end indicators
if (this.vTaskList[i].getGroup()) {
- vTaskWidth = (vTaskWidth > this.vMinGpLen && vTaskWidth < this.vMinGpLen * 2) ? this.vMinGpLen * 2 : vTaskWidth; // Expand to show two end points
- vTaskWidth = (vTaskWidth < this.vMinGpLen) ? this.vMinGpLen : vTaskWidth; // expand to show one end point
- var vTmpRow = draw_utils_1.newNode(vTmpTBody, 'tr', this.vDivId + 'childrow_' + vID, ((this.vTaskList[i].getGroup() == 2) ? 'glineitem gitem' : 'ggroupitem ggroup') + this.vFormat, null, null, null, ((this.vTaskList[i].getVisible() == 0) ? 'none' : null));
+ vTaskWidth = vTaskWidth > this.vMinGpLen && vTaskWidth < this.vMinGpLen * 2 ? this.vMinGpLen * 2 : vTaskWidth; // Expand to show two end points
+ vTaskWidth = vTaskWidth < this.vMinGpLen ? this.vMinGpLen : vTaskWidth; // expand to show one end point
+ var vTmpRow = draw_utils_1.newNode(vTmpTBody, "tr", this.vDivId + "childrow_" + vID, (this.vTaskList[i].getGroup() == 2 ? "glineitem gitem" : "ggroupitem ggroup") + this.vFormat, null, null, null, this.vTaskList[i].getVisible() == 0 ? "none" : null);
this.vTaskList[i].setChildRow(vTmpRow);
events_1.addThisRowListeners(this, this.vTaskList[i].getListChildRow(), vTmpRow);
- var vTmpCell = draw_utils_1.newNode(vTmpRow, 'td', null, 'gtaskcell gtaskcellbar', null, vColWidth, null, null);
- vTmpDiv_1 = draw_utils_1.newNode(vTmpCell, 'div', null, 'gtaskcelldiv', '\u00A0\u00A0');
+ var vTmpCell = draw_utils_1.newNode(vTmpRow, "td", null, "gtaskcell gtaskcellbar", null, vColWidth, null, null);
+ vTmpDiv_1 = draw_utils_1.newNode(vTmpCell, "div", null, "gtaskcelldiv", "\u00A0\u00A0");
this.vTaskList[i].setCellDiv(vTmpDiv_1);
if (this.vTaskList[i].getGroup() == 1) {
- vTmpDiv_1 = draw_utils_1.newNode(vTmpDiv_1, 'div', this.vDivId + 'bardiv_' + vID, 'gtaskbarcontainer', null, vTaskWidth, vTaskLeftPx_1);
+ vTmpDiv_1 = draw_utils_1.newNode(vTmpDiv_1, "div", this.vDivId + "bardiv_" + vID, "gtaskbarcontainer", null, vTaskWidth, vTaskLeftPx_1);
this.vTaskList[i].setBarDiv(vTmpDiv_1);
- var vTmpDiv2 = draw_utils_1.newNode(vTmpDiv_1, 'div', this.vDivId + 'taskbar_' + vID, this.vTaskList[i].getClass(), null, vTaskWidth);
+ var vTmpDiv2 = draw_utils_1.newNode(vTmpDiv_1, "div", this.vDivId + "taskbar_" + vID, this.vTaskList[i].getClass(), null, vTaskWidth);
this.vTaskList[i].setTaskDiv(vTmpDiv2);
- draw_utils_1.newNode(vTmpDiv2, 'div', this.vDivId + 'complete_' + vID, this.vTaskList[i].getClass() + 'complete', null, this.vTaskList[i].getCompStr());
- draw_utils_1.newNode(vTmpDiv_1, 'div', null, this.vTaskList[i].getClass() + 'endpointleft');
+ draw_utils_1.newNode(vTmpDiv2, "div", this.vDivId + "complete_" + vID, this.vTaskList[i].getClass() + "complete", null, this.vTaskList[i].getCompStr());
+ draw_utils_1.newNode(vTmpDiv_1, "div", null, this.vTaskList[i].getClass() + "endpointleft");
if (vTaskWidth >= this.vMinGpLen * 2)
- draw_utils_1.newNode(vTmpDiv_1, 'div', null, this.vTaskList[i].getClass() + 'endpointright');
- vCaptClass = 'ggroupcaption';
+ draw_utils_1.newNode(vTmpDiv_1, "div", null, this.vTaskList[i].getClass() + "endpointright");
+ vCaptClass = "ggroupcaption";
}
if (!vSingleCell && !vComb) {
this.drawColsChart(vNumCols, vTmpRow, taskCellWidth, vMinDate, vMaxDate);
}
}
else {
- vTaskWidth = (vTaskWidth <= 0) ? 1 : vTaskWidth;
+ vTaskWidth = vTaskWidth <= 0 ? 1 : vTaskWidth;
/**
* DRAW THE BOXES FOR GANTT
*/
@@ -564,40 +562,44 @@ exports.GanttChart = function (pDiv, pFormat) {
}
else {
// Draw Task Bar which has colored bar div
- vTmpRow = draw_utils_1.newNode(vTmpTBody, 'tr', this.vDivId + 'childrow_' + vID, 'glineitem gitem' + this.vFormat, null, null, null, ((this.vTaskList[i].getVisible() == 0) ? 'none' : null));
+ var differentDatesHighlight = "";
+ if (this.vTaskList[i].getEnd() && this.vTaskList[i].getPlanEnd() && this.vTaskList[i].getStart() && this.vTaskList[i].getPlanStart())
+ if (Date.parse(this.vTaskList[i].getEnd()) !== Date.parse(this.vTaskList[i].getPlanEnd()) || Date.parse(this.vTaskList[i].getStart()) !== Date.parse(this.vTaskList[i].getPlanStart()))
+ differentDatesHighlight = "gitemdifferent ";
+ vTmpRow = draw_utils_1.newNode(vTmpTBody, "tr", this.vDivId + "childrow_" + vID, "glineitem " + differentDatesHighlight + "gitem" + this.vFormat, null, null, null, this.vTaskList[i].getVisible() == 0 ? "none" : null);
this.vTaskList[i].setChildRow(vTmpRow);
events_1.addThisRowListeners(this, this.vTaskList[i].getListChildRow(), vTmpRow);
- var vTmpCell = draw_utils_1.newNode(vTmpRow, 'td', null, 'gtaskcell gtaskcellcolorbar', null, taskCellWidth, null, null);
- vTmpDivCell = vTmpDiv_1 = draw_utils_1.newNode(vTmpCell, 'div', null, 'gtaskcelldiv', '\u00A0\u00A0');
+ var vTmpCell = draw_utils_1.newNode(vTmpRow, "td", null, "gtaskcell gtaskcellcolorbar", null, taskCellWidth, null, null);
+ vTmpDivCell = vTmpDiv_1 = draw_utils_1.newNode(vTmpCell, "div", null, "gtaskcelldiv", "\u00A0\u00A0");
}
// DRAW TASK BAR
- vTmpDiv_1 = draw_utils_1.newNode(vTmpDiv_1, 'div', this.vDivId + 'bardiv_' + vID, 'gtaskbarcontainer', null, vTaskWidth, vTaskLeftPx_1);
+ vTmpDiv_1 = draw_utils_1.newNode(vTmpDiv_1, "div", this.vDivId + "bardiv_" + vID, "gtaskbarcontainer", null, vTaskWidth, vTaskLeftPx_1);
this.vTaskList[i].setBarDiv(vTmpDiv_1);
var vTmpDiv2 = void 0;
if (this.vTaskList[i].getStartVar()) {
// textbar
- vTmpDiv2 = draw_utils_1.newNode(vTmpDiv_1, 'div', this.vDivId + 'taskbar_' + vID, this.vTaskList[i].getClass(), null, vTaskWidth);
+ vTmpDiv2 = draw_utils_1.newNode(vTmpDiv_1, "div", this.vDivId + "taskbar_" + vID, this.vTaskList[i].getClass(), null, vTaskWidth);
if (this.vTaskList[i].getBarText()) {
- draw_utils_1.newNode(vTmpDiv2, 'span', this.vDivId + 'tasktextbar_' + vID, 'textbar', this.vTaskList[i].getBarText(), this.vTaskList[i].getCompRestStr());
+ draw_utils_1.newNode(vTmpDiv2, "span", this.vDivId + "tasktextbar_" + vID, "textbar", this.vTaskList[i].getBarText(), this.vTaskList[i].getCompRestStr());
}
this.vTaskList[i].setTaskDiv(vTmpDiv2);
}
// PLANNED
// If exist and one of them are different, show plan bar... show if there is no real vStart as well (just plan dates)
- if (vTaskPlanLeftPx && ((vTaskPlanLeftPx != vTaskLeftPx_1 || vTaskPlanRightPx != vTaskRightPx) || !this.vTaskList[i].getStartVar())) {
- var vTmpPlanDiv = draw_utils_1.newNode(vTmpDivCell, 'div', this.vDivId + 'bardiv_' + vID, 'gtaskbarcontainer gplan', null, vTaskPlanRightPx, vTaskPlanLeftPx);
- var vTmpPlanDiv2 = draw_utils_1.newNode(vTmpPlanDiv, 'div', this.vDivId + 'taskbar_' + vID, this.vTaskList[i].getClass() + ' gplan', null, vTaskPlanRightPx);
+ if (vTaskPlanLeftPx && (vTaskPlanLeftPx != vTaskLeftPx_1 || vTaskPlanRightPx != vTaskRightPx || !this.vTaskList[i].getStartVar())) {
+ var vTmpPlanDiv = draw_utils_1.newNode(vTmpDivCell, "div", this.vDivId + "bardiv_" + vID, "gtaskbarcontainer gplan", null, vTaskPlanRightPx, vTaskPlanLeftPx);
+ var vTmpPlanDiv2 = draw_utils_1.newNode(vTmpPlanDiv, "div", this.vDivId + "taskbar_" + vID, this.vTaskList[i].getPlanClass() + " gplan", null, vTaskPlanRightPx);
this.vTaskList[i].setPlanTaskDiv(vTmpPlanDiv2);
}
// and opaque completion div
if (vTmpDiv2) {
- draw_utils_1.newNode(vTmpDiv2, 'div', this.vDivId + 'complete_' + vID, this.vTaskList[i].getClass() + 'complete', null, this.vTaskList[i].getCompStr());
+ draw_utils_1.newNode(vTmpDiv2, "div", this.vDivId + "complete_" + vID, this.vTaskList[i].getClass() + "complete", null, this.vTaskList[i].getCompStr());
}
// caption
if (vComb)
vTmpItem = this.vTaskList[i].getParItem();
if (!vComb || (vComb && this.vTaskList[i].getParItem().getEnd() == this.vTaskList[i].getEnd()))
- vCaptClass = 'gcaption';
+ vCaptClass = "gcaption";
// Background cells
if (!vSingleCell && !vComb && vTmpRow) {
this.drawColsChart(vNumCols, vTmpRow, taskCellWidth, vMinDate, vMaxDate);
@@ -607,31 +609,31 @@ exports.GanttChart = function (pDiv, pFormat) {
if (this.getCaptionType() && vCaptClass !== null) {
var vCaptionStr = void 0;
switch (this.getCaptionType()) {
- case 'Caption':
+ case "Caption":
vCaptionStr = vTmpItem.getCaption();
break;
- case 'Resource':
+ case "Resource":
vCaptionStr = vTmpItem.getResource();
break;
- case 'Duration':
+ case "Duration":
vCaptionStr = vTmpItem.getDuration(this.vFormat, this.vLangs[this.vLang]);
break;
- case 'Complete':
+ case "Complete":
vCaptionStr = vTmpItem.getCompStr();
break;
}
- draw_utils_1.newNode(vTmpDiv_1, 'div', null, vCaptClass, vCaptionStr, 120, (vCaptClass == 'gmilecaption') ? 12 : 0);
+ draw_utils_1.newNode(vTmpDiv_1, "div", null, vCaptClass, vCaptionStr, 120, vCaptClass == "gmilecaption" ? 12 : 0);
}
// Add Task Info div for tooltip
if (this.vTaskList[i].getTaskDiv() && vTmpDiv_1) {
- var vTmpDiv2 = draw_utils_1.newNode(vTmpDiv_1, 'div', this.vDivId + 'tt' + vID, null, null, null, null, 'none');
+ var vTmpDiv2 = draw_utils_1.newNode(vTmpDiv_1, "div", this.vDivId + "tt" + vID, null, null, null, null, "none");
var _a = this.createTaskInfo(this.vTaskList[i], this.vTooltipTemplate), component = _a.component, callback = _a.callback;
vTmpDiv2.appendChild(component);
events_1.addTooltipListeners(this, this.vTaskList[i].getTaskDiv(), vTmpDiv2, callback);
}
// Add Plan Task Info div for tooltip
if (this.vTaskList[i].getPlanTaskDiv() && vTmpDiv_1) {
- var vTmpDiv2 = draw_utils_1.newNode(vTmpDiv_1, 'div', this.vDivId + 'tt' + vID, null, null, null, null, 'none');
+ var vTmpDiv2 = draw_utils_1.newNode(vTmpDiv_1, "div", this.vDivId + "tt" + vID, null, null, null, null, "none");
var _b = this.createTaskInfo(this.vTaskList[i], this.vTooltipTemplate), component = _b.component, callback = _b.callback;
vTmpDiv2.appendChild(component);
events_1.addTooltipListeners(this, this.vTaskList[i].getPlanTaskDiv(), vTmpDiv2, callback);
@@ -639,10 +641,10 @@ exports.GanttChart = function (pDiv, pFormat) {
}
// Include the footer with the days/week/month...
if (vSingleCell) {
- var vTmpTFootTRow = draw_utils_1.newNode(vTmpTFoot, 'tr');
- var vTmpTFootTCell = draw_utils_1.newNode(vTmpTFootTRow, 'td', null, null, null, '100%');
- var vTmpTFootTCellTable = draw_utils_1.newNode(vTmpTFootTCell, 'table', null, 'gcharttableh', null, '100%');
- var vTmpTFootTCellTableTBody = draw_utils_1.newNode(vTmpTFootTCellTable, 'tbody');
+ var vTmpTFootTRow = draw_utils_1.newNode(vTmpTFoot, "tr");
+ var vTmpTFootTCell = draw_utils_1.newNode(vTmpTFootTRow, "td", null, null, null, "100%");
+ var vTmpTFootTCellTable = draw_utils_1.newNode(vTmpTFootTCell, "table", null, "gcharttableh", null, "100%");
+ var vTmpTFootTCellTableTBody = draw_utils_1.newNode(vTmpTFootTCellTable, "tbody");
vTmpTFootTCellTableTBody.appendChild(vDateRow.cloneNode(true));
}
else {
@@ -655,28 +657,28 @@ exports.GanttChart = function (pDiv, pFormat) {
if (pEndDate === void 0) { pEndDate = null; }
var columnCurrentDay = null;
// Find the Current day cell to put a different class
- if (this.vShowWeekends !== false && pStartDate && pEndDate && (this.vFormat == 'day' || this.vFormat == 'week')) {
+ if (this.vShowWeekends !== false && pStartDate && pEndDate && (this.vFormat == "day" || this.vFormat == "week")) {
var curTaskStart = new Date(pStartDate.getTime());
var curTaskEnd = new Date();
var onePeriod = 3600000;
- if (this.vFormat == 'day') {
+ if (this.vFormat == "day") {
onePeriod *= 24;
}
- else if (this.vFormat == 'week') {
+ else if (this.vFormat == "week") {
onePeriod *= 24 * 7;
}
columnCurrentDay = Math.floor(general_utils_1.calculateCurrentDateOffset(curTaskStart, curTaskEnd) / onePeriod) - 1;
}
for (var j = 0; j < vNumCols - 1; j++) {
- var vCellFormat = 'gtaskcell gtaskcellcols';
- if (this.vShowWeekends !== false && this.vFormat == 'day' && ((j % 7 == 4) || (j % 7 == 5))) {
- vCellFormat = 'gtaskcellwkend';
+ var vCellFormat = "gtaskcell gtaskcellcols";
+ if (this.vShowWeekends !== false && this.vFormat == "day" && (j % 7 == 4 || j % 7 == 5)) {
+ vCellFormat = "gtaskcellwkend";
}
//When is the column is the current day/week,give a different class
- else if ((this.vFormat == 'week' || this.vFormat == 'day') && j === columnCurrentDay) {
- vCellFormat = 'gtaskcellcurrent';
+ else if ((this.vFormat == "week" || this.vFormat == "day") && j === columnCurrentDay) {
+ vCellFormat = "gtaskcellcurrent";
}
- draw_utils_1.newNode(vTmpRow, 'td', null, vCellFormat, '\u00A0\u00A0', taskCellWidth);
+ draw_utils_1.newNode(vTmpRow, "td", null, vCellFormat, "\u00A0\u00A0", taskCellWidth);
}
};
/**
@@ -696,7 +698,7 @@ exports.GanttChart = function (pDiv, pFormat) {
}
if (this.vDebug) {
bd = new Date();
- console.info('before draw', bd);
+ console.info("before draw", bd);
}
// Process all tasks, reset parent date and completion % if task list has altered
if (this.vProcessNeeded)
@@ -706,25 +708,25 @@ exports.GanttChart = function (pDiv, pFormat) {
vMinDate = date_utils_1.getMinDate(this.vTaskList, this.vFormat, this.getMinDate() && date_utils_1.coerceDate(this.getMinDate()));
vMaxDate = date_utils_1.getMaxDate(this.vTaskList, this.vFormat, this.getMaxDate() && date_utils_1.coerceDate(this.getMaxDate()));
// Calculate chart width variables.
- if (this.vFormat == 'day')
+ if (this.vFormat == "day")
vColWidth = this.vDayColWidth;
- else if (this.vFormat == 'week')
+ else if (this.vFormat == "week")
vColWidth = this.vWeekColWidth;
- else if (this.vFormat == 'month')
+ else if (this.vFormat == "month")
vColWidth = this.vMonthColWidth;
- else if (this.vFormat == 'quarter')
+ else if (this.vFormat == "quarter")
vColWidth = this.vQuarterColWidth;
- else if (this.vFormat == 'hour')
+ else if (this.vFormat == "hour")
vColWidth = this.vHourColWidth;
// DRAW the Left-side of the chart (names, resources, comp%)
var vLeftHeader = document.createDocumentFragment();
/**
* LIST HEAD
- */
+ */
var gListLbl = this.drawListHead(vLeftHeader);
/**
* LIST BODY
- */
+ */
var _a = this.drawListBody(vLeftHeader), vNumRows = _a.vNumRows, vTmpContentTabWrapper = _a.vTmpContentTabWrapper;
/**
* CHART HEAD
@@ -736,28 +738,28 @@ exports.GanttChart = function (pDiv, pFormat) {
var vRightTable = this.drawCharBody(vTaskLeftPx, vTmpContentTabWrapper, gChartLbl, gListLbl, vMinDate, vMaxDate, vSingleCell, vNumCols, vColWidth, vDateRow).vRightTable;
if (this.vDebug) {
var ad = new Date();
- console.info('after tasks loop', ad, (ad.getTime() - bd.getTime()));
+ console.info("after tasks loop", ad, ad.getTime() - bd.getTime());
}
// MAIN VIEW: Appending all generated components to main view
while (this.vDiv.hasChildNodes())
this.vDiv.removeChild(this.vDiv.firstChild);
- var vTmpDiv = draw_utils_1.newNode(this.vDiv, 'div', null, 'gchartcontainer');
+ var vTmpDiv = draw_utils_1.newNode(this.vDiv, "div", null, "gchartcontainer");
vTmpDiv.style.height = this.vTotalHeight;
- var leftvTmpDiv = draw_utils_1.newNode(vTmpDiv, 'div', null, 'gmain gmainleft');
+ var leftvTmpDiv = draw_utils_1.newNode(vTmpDiv, "div", null, "gmain gmainleft");
leftvTmpDiv.appendChild(vLeftHeader);
// leftvTmpDiv.appendChild(vLeftTable);
- var rightvTmpDiv = draw_utils_1.newNode(vTmpDiv, 'div', null, 'gmain gmainright');
+ var rightvTmpDiv = draw_utils_1.newNode(vTmpDiv, "div", null, "gmain gmainright");
rightvTmpDiv.appendChild(vRightHeader);
rightvTmpDiv.appendChild(vRightTable);
vTmpDiv.appendChild(leftvTmpDiv);
vTmpDiv.appendChild(rightvTmpDiv);
- draw_utils_1.newNode(vTmpDiv, 'div', null, 'ggridfooter');
- var vTmpDiv2 = draw_utils_1.newNode(this.getChartBody(), 'div', this.vDivId + 'Lines', 'glinediv');
- if (this.vEvents.onLineContainerHover && typeof this.vEvents.onLineContainerHover === 'function') {
- events_1.addListener('mouseover', this.vEvents.onLineContainerHover, vTmpDiv2);
- events_1.addListener('mouseout', this.vEvents.onLineContainerHover, vTmpDiv2);
+ draw_utils_1.newNode(vTmpDiv, "div", null, "ggridfooter");
+ var vTmpDiv2 = draw_utils_1.newNode(this.getChartBody(), "div", this.vDivId + "Lines", "glinediv");
+ if (this.vEvents.onLineContainerHover && typeof this.vEvents.onLineContainerHover === "function") {
+ events_1.addListener("mouseover", this.vEvents.onLineContainerHover, vTmpDiv2);
+ events_1.addListener("mouseout", this.vEvents.onLineContainerHover, vTmpDiv2);
}
- vTmpDiv2.style.visibility = 'hidden';
+ vTmpDiv2.style.visibility = "hidden";
this.setLines(vTmpDiv2);
/* Quick hack to show the generated HTML on older browsers
let tmpGenSrc=document.createElement('textarea');
@@ -767,14 +769,14 @@ exports.GanttChart = function (pDiv, pFormat) {
// LISTENERS: Now all the content exists, register scroll listeners
events_1.addScrollListeners(this);
// SCROLL: now check if we are actually scrolling the pane
- if (this.vScrollTo != '') {
+ if (this.vScrollTo != "") {
var vScrollDate = new Date(vMinDate.getTime());
var vScrollPx = 0;
- if (this.vScrollTo.substr && this.vScrollTo.substr(0, 2) == 'px') {
+ if (this.vScrollTo.substr && this.vScrollTo.substr(0, 2) == "px") {
vScrollPx = parseInt(this.vScrollTo.substr(2));
}
else {
- if (this.vScrollTo === 'today') {
+ if (this.vScrollTo === "today") {
vScrollDate = new Date();
}
else if (this.vScrollTo instanceof Date) {
@@ -783,7 +785,7 @@ exports.GanttChart = function (pDiv, pFormat) {
else {
vScrollDate = date_utils_1.parseDateStr(this.vScrollTo, this.getDateInputFormat());
}
- if (this.vFormat == 'hour')
+ if (this.vFormat == "hour")
vScrollDate.setMinutes(0, 0, 0);
else
vScrollDate.setHours(0, 0, 0, 0);
@@ -791,7 +793,7 @@ exports.GanttChart = function (pDiv, pFormat) {
}
this.getChartBody().scrollLeft = vScrollPx;
}
- if (vMinDate.getTime() <= (new Date()).getTime() && vMaxDate.getTime() >= (new Date()).getTime()) {
+ if (vMinDate.getTime() <= new Date().getTime() && vMaxDate.getTime() >= new Date().getTime()) {
this.vTodayPx = general_utils_1.getOffset(vMinDate, new Date(), vColWidth, this.vFormat, this.vShowWeekends);
}
else
@@ -800,20 +802,20 @@ exports.GanttChart = function (pDiv, pFormat) {
var bdd;
if (this.vDebug) {
bdd = new Date();
- console.info('before DrawDependencies', bdd);
+ console.info("before DrawDependencies", bdd);
}
- if (this.vEvents && typeof this.vEvents.beforeLineDraw === 'function') {
+ if (this.vEvents && typeof this.vEvents.beforeLineDraw === "function") {
this.vEvents.beforeLineDraw();
}
this.DrawDependencies(this.vDebug);
events_1.addListenerDependencies(this.vLineOptions);
// EVENTS
- if (this.vEvents && typeof this.vEvents.afterLineDraw === 'function') {
+ if (this.vEvents && typeof this.vEvents.afterLineDraw === "function") {
this.vEvents.afterLineDraw();
}
if (this.vDebug) {
var ad = new Date();
- console.info('after DrawDependencies', ad, (ad.getTime() - bdd.getTime()));
+ console.info("after DrawDependencies", ad, ad.getTime() - bdd.getTime());
}
this.drawComplete(vMinDate, vColWidth, bd);
};
@@ -823,7 +825,7 @@ exports.GanttChart = function (pDiv, pFormat) {
this.drawComplete = function (vMinDate, vColWidth, bd) {
if (this.vDebug) {
var ad = new Date();
- console.info('after draw', ad, (ad.getTime() - bd.getTime()));
+ console.info("after draw", ad, ad.getTime() - bd.getTime());
}
events_1.updateGridHeaderWidth(this);
this.chartRowDateToX = function (date) {
@@ -833,13 +835,14 @@ exports.GanttChart = function (pDiv, pFormat) {
this.vEvents.afterDraw();
}
};
- if (this.vDiv && this.vDiv.nodeName && this.vDiv.nodeName.toLowerCase() == 'div')
+ if (this.vDiv && this.vDiv.nodeName && this.vDiv.nodeName.toLowerCase() == "div")
this.vDivId = this.vDiv.id;
}; //GanttChart
},{"./draw_columns":3,"./draw_dependencies":4,"./events":5,"./lang":8,"./options":9,"./task":10,"./utils/date_utils":11,"./utils/draw_utils":12,"./utils/general_utils":13,"./xml":14}],3:[function(require,module,exports){
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
+exports.draw_task_headings = exports.draw_bottom = exports.draw_header = exports.COLUMN_ORDER = void 0;
var date_utils_1 = require("./utils/date_utils");
var task_1 = require("./task");
var events_1 = require("./events");
@@ -1009,6 +1012,7 @@ exports.draw_task_headings = function (column, vTmpRow, vLangs, vLang, vAddition
},{"./events":5,"./task":10,"./utils/date_utils":11,"./utils/draw_utils":12}],4:[function(require,module,exports){
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
+exports.DrawDependencies = exports.drawDependency = void 0;
exports.drawDependency = function (x1, y1, x2, y2, pType, pClass) {
var vDir = 1;
var vBend = false;
@@ -1105,6 +1109,7 @@ exports.DrawDependencies = function (vDebug) {
},{}],5:[function(require,module,exports){
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
+exports.addListenerDependencies = exports.addListenerInputCell = exports.addListenerClickCell = exports.addScrollListeners = exports.addFormatListeners = exports.addFolderListeners = exports.updateGridHeaderWidth = exports.addThisRowListeners = exports.addTooltipListeners = exports.syncScroll = exports.removeListener = exports.addListener = exports.showToolTip = exports.mouseOut = exports.mouseOver = exports.show = exports.hide = exports.folder = void 0;
var general_utils_1 = require("./utils/general_utils");
// Function to open/close and hide/show children of specified task
exports.folder = function (pID, ganttObj) {
@@ -1505,6 +1510,7 @@ var vColumnsNames = {
Copyright (c) 2009, Shlomy Gantz BlueBrick Inc.
*/
Object.defineProperty(exports, "__esModule", { value: true });
+exports.JSGantt = void 0;
var events_1 = require("./events");
var general_utils_1 = require("./utils/general_utils");
var xml_1 = require("./xml");
@@ -1545,7 +1551,7 @@ exports.JSGantt.taskLink = task_1.taskLink;
exports.JSGantt.parseDateStr = date_utils_1.parseDateStr;
exports.JSGantt.formatDateStr = date_utils_1.formatDateStr;
exports.JSGantt.parseDateFormatStr = date_utils_1.parseDateFormatStr;
-// XML
+// XML
exports.JSGantt.parseXML = xml_1.parseXML;
exports.JSGantt.parseXMLString = xml_1.parseXMLString;
exports.JSGantt.findXMLNode = xml_1.findXMLNode;
@@ -1568,10 +1574,11 @@ exports.JSGantt.criticalPath = general_utils_1.criticalPath;
},{"./draw":2,"./events":5,"./json":7,"./task":10,"./utils/date_utils":11,"./utils/general_utils":13,"./xml":14}],7:[function(require,module,exports){
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
- function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
@@ -1603,6 +1610,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
}
};
Object.defineProperty(exports, "__esModule", { value: true });
+exports.addJSONTask = exports.parseJSONString = exports.parseJSON = void 0;
var task_1 = require("./task");
var general_utils_1 = require("./utils/general_utils");
/**
@@ -1649,6 +1657,7 @@ exports.addJSONTask = function (pGanttVar, pJsonObj) {
var planstart = void 0;
var planend = void 0;
var itemClass = void 0;
+ var planClass = void 0;
var link = '';
var milestone = 0;
var resourceName = '';
@@ -1695,6 +1704,10 @@ exports.addJSONTask = function (pGanttVar, pJsonObj) {
case 'class':
itemClass = value;
break;
+ case 'pplanclass':
+ case 'planclass':
+ planClass = value;
+ break;
case 'plink':
case 'link':
link = value;
@@ -1752,7 +1765,7 @@ exports.addJSONTask = function (pGanttVar, pJsonObj) {
}
}
//if (id != undefined && !isNaN(parseInt(id)) && isFinite(id) && name && start && end && itemClass && completion != undefined && !isNaN(parseFloat(completion)) && isFinite(completion) && !isNaN(parseInt(parent)) && isFinite(parent)) {
- pGanttVar.AddTaskItem(new task_1.TaskItem(id, name_1, start, end, itemClass, link, milestone, resourceName, completion, group, parent_1, open_1, dependsOn, caption, notes, pGanttVar, cost, planstart, planend, duration, bartext, additionalObject));
+ pGanttVar.AddTaskItem(new task_1.TaskItem(id, name_1, start, end, itemClass, link, milestone, resourceName, completion, group, parent_1, open_1, dependsOn, caption, notes, pGanttVar, cost, planstart, planend, duration, bartext, additionalObject, planClass));
//}
}
};
@@ -1760,6 +1773,374 @@ exports.addJSONTask = function (pGanttVar, pJsonObj) {
},{"./task":10,"./utils/general_utils":13}],8:[function(require,module,exports){
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
+exports.ua = exports.tr = exports.sv = exports.ru = exports.pt = exports.pl = exports.nl = exports.ko = exports.ja = exports.id = exports.it = exports.hu = exports.he = exports.fr = exports.fi = exports.de = exports.es = exports.en = exports.cs = exports.cn = exports.scn = exports.ar = void 0;
+var ar = {
+ 'format': 'التنسيق',
+ 'hour': 'ساعة',
+ 'day': 'يوم',
+ 'week': 'أسبوع',
+ 'month': 'شهر',
+ 'quarter': 'ربع',
+ 'hours': 'ساعات',
+ 'days': 'أيام',
+ 'weeks': 'أسابيع',
+ 'months': 'أشهر',
+ 'quarters': 'أرباع',
+ 'hr': 'س',
+ 'dy': 'يو',
+ 'wk': 'أ',
+ 'mth': 'ش',
+ 'qtr': 'ر',
+ 'hrs': 'س',
+ 'dys': 'ي',
+ 'wks': 'أ',
+ 'mths': 'ش',
+ 'qtrs': 'ر',
+ 'res': 'الموارد',
+ 'dur': 'المدة',
+ 'comp': '%',
+ 'completion': 'الإنجاز',
+ 'startdate': 'تاريخ البدء',
+ 'planstartdate': 'تاريخ بدء الخطة',
+ 'enddate': 'تاريخ الانتهاء',
+ 'planenddate': 'تاريخ نهاية الخطة',
+ 'cost': 'التكلفة',
+ 'moreinfo': 'مزيد من المعلومات',
+ 'nodata': 'لم يتم العثور على مهام',
+ 'notes': 'ملاحظات',
+ 'january': 'يناير',
+ 'february': 'فبراير',
+ 'march': 'مارس',
+ 'april': 'أبريل',
+ 'maylong': 'مايو',
+ 'june': 'يونيو',
+ 'july': 'يوليو',
+ 'august': 'أغسطس',
+ 'september': 'سبتمبر',
+ 'october': 'أكتوبر',
+ 'november': 'نوفمبر',
+ 'december': 'ديسمبر',
+ 'jan': 'يناير',
+ 'feb': 'فبراير',
+ 'mar': 'مارس',
+ 'apr': 'أبريل',
+ 'may': 'مايو',
+ 'jun': 'يونيو',
+ 'jul': 'يوليو',
+ 'aug': 'أغسطس',
+ 'sep': 'سبتمبر',
+ 'oct': 'أكتوبر',
+ 'nov': 'نوفمبر',
+ 'dec': 'ديسمبر',
+ 'sunday': 'الأحد',
+ 'monday': 'الإثنين',
+ 'tuesday': 'الثلاثاء',
+ 'wednesday': 'الأربعاء',
+ 'thursday': 'الخميس',
+ 'friday': 'الجمعة',
+ 'saturday': 'السبت',
+ 'sun': 'الأحد',
+ 'mon': 'الإثنين',
+ 'tue': 'الثلاثاء',
+ 'wed': 'الأربعاء',
+ 'thu': 'الخميس',
+ 'fri': 'الجمعة',
+ 'sat': 'السبت',
+ 'tooltipLoading': 'جاري التحميل...'
+};
+exports.ar = ar;
+var scn = {
+ 'january': '一月',
+ 'february': '二月',
+ 'march': '三月',
+ 'april': '四月',
+ 'maylong': '五月',
+ 'june': '六月',
+ 'july': '七月',
+ 'august': '八月',
+ 'september': '九月',
+ 'october': '十月',
+ 'november': '十一月',
+ 'december': '十二月',
+ 'jan': '一月',
+ 'feb': '二月',
+ 'mar': '三月',
+ 'apr': '四月',
+ 'may': '五月',
+ 'jun': '六月',
+ 'jul': '七月',
+ 'aug': '八月',
+ 'sep': '九月',
+ 'oct': '十月',
+ 'nov': '十一月',
+ 'dec': '十二月',
+ 'sunday': '星期日',
+ 'monday': '星期一',
+ 'tuesday': '星期二',
+ 'wednesday': '星期三',
+ 'thursday': '星期四',
+ 'friday': '星期五',
+ 'saturday': '星期六',
+ 'sun': '星期日',
+ 'mon': '星期一',
+ 'tue': '星期二',
+ 'wed': '星期三',
+ 'thu': '星期四',
+ 'fri': '星期五',
+ 'sat': '星期六',
+ 'res': '资源',
+ 'dur': '时长',
+ 'comp': '完成度',
+ 'completion': '完成',
+ 'startdate': '起始日期',
+ 'planstartdate': '计划起始日期',
+ 'enddate': '截止日期',
+ 'planenddate': '计划截止日期',
+ 'cost': '成本',
+ 'moreinfo': "更多信息",
+ 'nodata': 'No tasks found',
+ 'notes': '备注',
+ 'format': '格式',
+ 'hour': '时',
+ 'day': '日',
+ 'week': '星期',
+ 'month': '月',
+ 'quarter': '季',
+ 'hours': '小时',
+ 'days': '天',
+ 'weeks': '周',
+ 'months': '月',
+ 'quarters': '季',
+ 'hr': '小时',
+ 'dy': '天',
+ 'wk': '周',
+ 'mth': '月',
+ 'qtr': '季',
+ 'hrs': '小时',
+ 'dys': '天',
+ 'wks': '周',
+ 'mths': '月',
+ 'qtrs': '季'
+};
+exports.scn = scn;
+var cn = {
+ 'january': '一月',
+ 'february': '二月',
+ 'march': '三月',
+ 'april': '四月',
+ 'maylong': '五月',
+ 'june': '六月',
+ 'july': '七月',
+ 'august': '八月',
+ 'september': '九月',
+ 'october': '十月',
+ 'november': '十一月',
+ 'december': '十二月',
+ 'jan': '一月',
+ 'feb': '二月',
+ 'mar': '三月',
+ 'apr': '四月',
+ 'may': '五月',
+ 'jun': '六月',
+ 'jul': '七月',
+ 'aug': '八月',
+ 'sep': '九月',
+ 'oct': '十月',
+ 'nov': '十一月',
+ 'dec': '十二月',
+ 'sunday': '星期日',
+ 'monday': '星期一',
+ 'tuesday': '星期二',
+ 'wednesday': '星期三',
+ 'thursday': '星期四',
+ 'friday': '星期五',
+ 'saturday': '星期六',
+ 'sun': '星期日',
+ 'mon': '星期一',
+ 'tue': '星期二',
+ 'wed': '星期三',
+ 'thu': '星期四',
+ 'fri': '星期五',
+ 'sat': '星期六',
+ 'res': '資源',
+ 'dur': '時程',
+ 'comp': '達成率',
+ 'completion': '達成',
+ 'startdate': '起始日期',
+ 'planstartdate': '計劃起始日期',
+ 'enddate': '截止日期',
+ 'planenddate': '計劃截止日期',
+ 'cost': '成本',
+ 'moreinfo': "更多資訊",
+ 'nodata': 'No tasks found',
+ 'notes': '備註',
+ 'format': '格式',
+ 'hour': '時',
+ 'day': '日',
+ 'week': '星期',
+ 'month': '月',
+ 'quarter': '季',
+ 'hours': '小時',
+ 'days': '天',
+ 'weeks': '週',
+ 'months': '月',
+ 'quarters': '季',
+ 'hr': '小時',
+ 'dy': '天',
+ 'wk': '週',
+ 'mth': '月',
+ 'qtr': '季',
+ 'hrs': '小時',
+ 'dys': '天',
+ 'wks': '週',
+ 'mths': '月',
+ 'qtrs': '季'
+};
+exports.cn = cn;
+var cs = {
+ 'format': 'Zobrazení',
+ 'hour': 'Hodina',
+ 'day': 'Den',
+ 'week': 'Týden',
+ 'month': 'Měsíc',
+ 'quarter': 'Kvartál',
+ 'hours': 'Hodiny',
+ 'days': 'Dni',
+ 'weeks': 'Týdny',
+ 'months': 'Měsíce',
+ 'quarters': 'Kvartály',
+ 'hr': 'Ho',
+ 'dy': 'Den',
+ 'wk': 'Tyd',
+ 'mth': 'Měs',
+ 'qtr': 'Kvar',
+ 'hrs': 'Ho',
+ 'dys': 'Dni',
+ 'wks': 'Tyd',
+ 'mths': 'Měs',
+ 'qtrs': 'Kvar',
+ 'res': 'Přiřazeno',
+ 'dur': 'Trvání',
+ 'comp': '%',
+ 'completion': 'Hotovo',
+ 'startdate': 'Start',
+ 'planstartdate': 'Plánovaný start',
+ 'enddate': 'Konec',
+ 'planenddate': 'Plánovaný konec',
+ 'cost': 'Náklady',
+ 'moreinfo': 'Více informací',
+ 'nodata': 'No tasks found',
+ 'notes': 'Poznámky',
+ 'january': 'Leden',
+ 'february': 'Únor',
+ 'march': 'Březen',
+ 'april': 'Duben',
+ 'maylong': 'Květen',
+ 'june': 'Červen',
+ 'july': 'Červenec',
+ 'august': 'Srpen',
+ 'september': 'Září',
+ 'october': 'Říjen',
+ 'november': 'Listopad',
+ 'december': 'Prosinec',
+ 'jan': 'Led',
+ 'feb': 'Úno',
+ 'mar': 'Bře',
+ 'apr': 'Dub',
+ 'may': 'Kvě',
+ 'jun': 'Čer',
+ 'jul': 'Čvc',
+ 'aug': 'Srp',
+ 'sep': 'Zář',
+ 'oct': 'Říj',
+ 'nov': 'Lis',
+ 'dec': 'Pro',
+ 'sunday': 'Neděle',
+ 'monday': 'Pondělí',
+ 'tuesday': 'Úterý',
+ 'wednesday': 'Středa',
+ 'thursday': 'Čtvrtek',
+ 'friday': 'Pátek',
+ 'saturday': 'Sobota',
+ 'sun': 'Ne',
+ 'mon': 'Po',
+ 'tue': 'Út',
+ 'wed': 'St',
+ 'thu': 'Čt',
+ 'fri': 'Pa',
+ 'sat': 'So',
+ 'tooltipLoading': 'Nahrávám...'
+};
+exports.cs = cs;
+var de = {
+ 'format': 'Ansicht',
+ 'hour': 'Stunde',
+ 'day': 'Tag',
+ 'week': 'Woche',
+ 'month': 'Monat',
+ 'quarter': 'Quartal',
+ 'hours': 'Stunden',
+ 'days': 'Tage',
+ 'weeks': 'Wochen',
+ 'months': 'Monate',
+ 'quarters': 'Quartale',
+ 'hr': 'h',
+ 'dy': 'T',
+ 'wk': 'W',
+ 'mth': 'M',
+ 'qtr': 'Q',
+ 'hrs': 'Std',
+ 'dys': 'Tage',
+ 'wks': 'Wochen',
+ 'mths': 'Monate',
+ 'qtrs': 'Quartal',
+ 'res': 'Resource',
+ 'dur': 'Dauer',
+ 'comp': '%',
+ 'completion': 'Fertigstellung',
+ 'startdate': 'Erste Buchu',
+ 'planstartdate': 'Erste Buchu Plan',
+ 'enddate': 'Letzte Buchung',
+ 'planenddate': 'Plan Letzte Buchung',
+ 'cost': 'Cost',
+ 'moreinfo': 'Weitere Infos',
+ 'nodata': 'No tasks found',
+ 'notes': 'Anmerkung',
+ 'january': 'Jänner',
+ 'february': 'Februar',
+ 'march': 'März',
+ 'april': 'April',
+ 'maylong': 'Mai',
+ 'june': 'Juni',
+ 'july': 'Juli',
+ 'august': 'August',
+ 'september': 'September',
+ 'october': 'Oktober',
+ 'november': 'November',
+ 'december': 'Dezember',
+ 'jan': 'Jan',
+ 'feb': 'Feb',
+ 'mar': 'Mar',
+ 'apr': 'Apr',
+ 'may': 'Mai',
+ 'jun': 'Jun',
+ 'jul': 'Jul',
+ 'aug': 'Aug',
+ 'sep': 'Sep',
+ 'oct': 'Okt',
+ 'nov': 'Nov',
+ 'dec': 'Dez',
+ 'sunday': 'Sonntag',
+ 'monday': 'Montag',
+ 'tuesday': 'Dienstag',
+ 'wednesday': 'Mittwoch',
+ 'thursday': 'Donnerstag',
+ 'friday': 'Freitag',
+ 'saturday': 'Samstag',
+ 'sun': 'So',
+ 'mon': 'Mo', 'tue': 'Di', 'wed': 'Mi', 'thu': 'Do', 'fri': 'Fr', 'sat': 'Sa'
+};
+exports.de = de;
var es = {
'january': 'Enero',
'february': 'Febrero',
@@ -1801,7 +2182,7 @@ var es = {
'sat': ' Sab',
'res': 'Recurso',
'dur': 'Duración',
- 'comp': '% Compl.',
+ 'comp': '%',
'completion': 'Completado',
'startdate': 'Inicio',
'planstartdate': 'Inicio Planificado',
@@ -1859,7 +2240,7 @@ var en = {
'qtrs': 'Qtrs',
'res': 'Resource',
'dur': 'Duration',
- 'comp': '% Comp.',
+ 'comp': '%',
'completion': 'Completion',
'startdate': 'Start Date',
'planstartdate': 'Plan Start Date',
@@ -1910,75 +2291,757 @@ var en = {
'tooltipLoading': 'Loading...'
};
exports.en = en;
-var de = {
- 'format': 'Ansicht',
- 'hour': 'Stunde',
- 'day': 'Tag',
- 'week': 'Woche',
- 'month': 'Monat',
- 'quarter': 'Quartal',
- 'hours': 'Stunden',
- 'days': 'Tage',
- 'weeks': 'Wochen',
- 'months': 'Monate',
- 'quarters': 'Quartale',
- 'hr': 'h',
- 'dy': 'T',
- 'wk': 'W',
- 'mth': 'M',
+var fi = {
+ 'format': 'Näkymä',
+ 'hour': 'Tunti',
+ 'day': 'Päivä',
+ 'week': 'Viikko',
+ 'month': 'Kuukausi',
+ 'quarter': 'Kvartaali',
+ 'hours': 'Tunnit',
+ 'days': 'Päivät',
+ 'weeks': 'Viikot',
+ 'months': 'Kuukaudet',
+ 'quarters': 'Kvartaalit',
+ 'hr': 't',
+ 'dy': 'pv',
+ 'wk': 'vk',
+ 'mth': 'kk',
'qtr': 'Q',
- 'hrs': 'Std',
- 'dys': 'Tage',
- 'wks': 'Wochen',
- 'mths': 'Monate',
- 'qtrs': 'Quartal',
- 'res': 'Resource',
- 'dur': 'Dauer',
- 'comp': '%Fertig',
- 'completion': 'Fertigstellung',
- 'startdate': 'Erste Buchu',
- 'planstartdate': 'Erste Buchu Plan',
- 'enddate': 'Letzte Buchung',
- 'planenddate': 'Plan Letzte Buchung',
- 'cost': 'Cost',
- 'moreinfo': 'Weitere Infos',
- 'nodata': 'No tasks found',
- 'notes': 'Anmerkung',
- 'january': 'Jänner',
- 'february': 'Februar',
- 'march': 'März',
- 'april': 'April',
+ 'hrs': 't:t',
+ 'dys': 'pv:t',
+ 'wks': 'vk:t',
+ 'mths': 'kk:t',
+ 'qtrs': 'Kvartaalit',
+ 'res': 'Henkilö',
+ 'dur': 'Kesto',
+ 'comp': '%',
+ 'completion': 'Valmius',
+ 'startdate': 'Alkupäivä',
+ 'planstartdate': 'Suunniteltu alkupäivä',
+ 'enddate': 'Päättymispäivä',
+ 'planenddate': 'Suunniteltu päättymispäivä',
+ 'cost': 'Kustannus',
+ 'moreinfo': 'Lisätieto',
+ 'nodata': 'Tehtäviä ei löydy',
+ 'notes': 'Muistiinpanot',
+ 'january': 'Tammikuu',
+ 'february': 'Helmikuu',
+ 'march': 'Maaliskuu',
+ 'april': 'Huhtikuu',
+ 'maylong': 'Toukokuu',
+ 'june': 'Kesäkuu',
+ 'july': 'Heinäkuu',
+ 'august': 'Elokuu',
+ 'september': 'Syyskuu',
+ 'october': 'Lokakuu',
+ 'november': 'Marraskuu',
+ 'december': 'Joulukuu',
+ 'jan': 'Tammi',
+ 'feb': 'Helmi',
+ 'mar': 'Maalis',
+ 'apr': 'Huhti',
+ 'may': 'Touko',
+ 'jun': 'Kesä',
+ 'jul': 'Heinä',
+ 'aug': 'Elo',
+ 'sep': 'Syys',
+ 'oct': 'Loka',
+ 'nov': 'Marras',
+ 'dec': 'Joulu',
+ 'sunday': 'Sunnuntai',
+ 'monday': 'Maanantai',
+ 'tuesday': 'Tiista',
+ 'wednesday': 'Keskiviikko',
+ 'thursday': 'Torstai',
+ 'friday': 'Perjantai',
+ 'saturday': 'Lauantai',
+ 'sun': 'Su',
+ 'mon': 'Ma',
+ 'tue': 'Ti',
+ 'wed': 'Ke',
+ 'thu': 'To',
+ 'fri': 'Pe',
+ 'sat': 'La',
+ 'tooltipLoading': 'Ladataan...'
+};
+exports.fi = fi;
+/**
+ * Mois : http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=3619
+ Jours : http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=3617
+ */
+var fr = {
+ 'january': 'Janvier',
+ 'february': 'Février',
+ 'march': 'Mars',
+ 'april': 'Avril',
'maylong': 'Mai',
+ 'june': 'Juin',
+ 'july': 'Juillet',
+ 'august': 'Août',
+ 'september': 'Septembre',
+ 'october': 'Octobre',
+ 'november': 'Novembre',
+ 'december': 'Décembre',
+ 'jan': 'Janv',
+ 'feb': 'Févr',
+ 'mar': 'Mars',
+ 'apr': 'Avr',
+ 'may': 'Mai',
+ 'jun': 'Juin',
+ 'jul': 'Juil',
+ 'aug': 'Août',
+ 'sep': 'Sept',
+ 'oct': 'Oct',
+ 'nov': 'Nov',
+ 'dec': 'Déc',
+ 'sunday': 'Dimanche',
+ 'monday': 'Lundi',
+ 'tuesday': 'Mardi',
+ 'wednesday': 'Mercredi',
+ 'thursday': 'Jeudi',
+ 'friday': 'Vendredi',
+ 'saturday': 'Samedi',
+ 'sun': 'Dim',
+ 'mon': 'Lun',
+ 'tue': 'Mar',
+ 'wed': 'Mer',
+ 'thu': 'Jeu',
+ 'fri': 'Ven',
+ 'sat': 'Sam',
+ 'res': 'Ressource',
+ 'dur': 'Durée',
+ 'comp': '%',
+ 'completion': 'Terminé',
+ 'startdate': 'Début',
+ 'planstartdate': 'Plan Début',
+ 'enddate': 'Fin',
+ 'planenddate': 'Plan Fin',
+ 'cost': 'Cost',
+ 'moreinfo': "Plus d'informations",
+ 'nodata': 'No tasks found',
+ 'notes': 'Notes',
+ 'format': 'Format',
+ 'hour': 'Heure',
+ 'day': 'Jour',
+ 'week': 'Semaine',
+ 'month': 'Mois',
+ 'quarter': 'Trimestre',
+ 'hours': 'Heures',
+ 'days': 'Jours',
+ 'weeks': 'Semaines',
+ 'months': 'Mois',
+ 'quarters': 'Trimestres',
+ 'hr': 'h',
+ 'dy': 'j',
+ 'wk': 'sem',
+ 'mth': 'mois',
+ 'qtr': 'tri',
+ 'hrs': 'h',
+ 'dys': 'j',
+ 'wks': 'sem',
+ 'mths': 'mois',
+ 'qtrs': 'tri'
+};
+exports.fr = fr;
+var he = {
+ 'format': 'תבנית',
+ 'hour': 'שעה',
+ 'day': 'יום',
+ 'week': 'שבוע',
+ 'month': 'חודש',
+ 'quarter': 'רבעון',
+ 'hours': 'שעות',
+ 'days': 'ימים',
+ 'weeks': 'שבועות',
+ 'months': 'חודשים',
+ 'quarters': 'רבעונים',
+ 'hr': 'שעה',
+ 'dy': 'יום',
+ 'wk': 'שבוע',
+ 'mth': 'חודש',
+ 'qtr': 'רבעון',
+ 'hrs': 'שעות',
+ 'dys': 'ימים',
+ 'wks': 'שבועות',
+ 'mths': 'חודשים',
+ 'qtrs': 'רבעונים',
+ 'res': 'משאב',
+ 'dur': 'משך',
+ 'comp': '%',
+ 'completion': 'השלמה',
+ 'startdate': 'תאריך התחלה',
+ 'planstartdate': 'תאריך התחלה מתוכנן',
+ 'enddate': 'תאריך סיום',
+ 'planenddate': 'תאריך סיום מתוכנן',
+ 'cost': 'עלות',
+ 'moreinfo': 'מידע נוסף',
+ 'nodata': 'לא נמצאו משימות',
+ 'notes': 'הערות',
+ 'january': 'ינואר',
+ 'february': 'פברואר',
+ 'march': 'מרץ',
+ 'april': 'אפריל',
+ 'maylong': 'מאי',
+ 'june': 'יוני',
+ 'july': 'יולי',
+ 'august': 'אוגוסט',
+ 'september': 'ספטמבר',
+ 'october': 'אוקטובר',
+ 'november': 'נובמבר',
+ 'december': 'דצמבר',
+ 'jan': 'ינו',
+ 'feb': 'פבר',
+ 'mar': 'מרץ',
+ 'apr': 'אפר',
+ 'may': 'מאי',
+ 'jun': 'יוני',
+ 'jul': 'יולי',
+ 'aug': 'אוג',
+ 'sep': 'ספט',
+ 'oct': 'אוק',
+ 'nov': 'נוב',
+ 'dec': 'דצמ',
+ 'sunday': 'יום ראשון',
+ 'monday': 'יום שני',
+ 'tuesday': 'יום שלישי',
+ 'wednesday': 'יום רביעי',
+ 'thursday': 'الخميس',
+ 'friday': 'الجمعة',
+ 'saturday': 'السبت',
+ 'sun': 'الأحد',
+ 'mon': 'الإثنين',
+ 'tue': 'الثلاثاء',
+ 'wed': 'الأربعاء',
+ 'thu': 'الخميس',
+ 'fri': 'الجمعة',
+ 'sat': 'السبت',
+ 'tooltipLoading': 'جارٍ التحميل...'
+};
+exports.he = he;
+var it = {
+ 'format': 'Formato',
+ 'hour': 'Ora',
+ 'day': 'Giorno',
+ 'week': 'Settimana',
+ 'month': 'Mese',
+ 'quarter': 'Trimestre',
+ 'hours': 'Ore',
+ 'days': 'Giorni',
+ 'weeks': 'Mesi',
+ 'months': 'Settimane',
+ 'quarters': 'Trimestri',
+ 'hr': 'Ora',
+ 'dy': 'G',
+ 'wk': 'Sett.',
+ 'mth': 'Mese',
+ 'qtr': 'Trim.',
+ 'hrs': 'Ora',
+ 'dys': 'GG',
+ 'wks': 'Sett.',
+ 'mths': 'Mesi',
+ 'qtrs': 'Trim.',
+ 'res': 'Risorsa',
+ 'dur': 'Durata',
+ 'comp': '%',
+ 'completion': 'Completamento',
+ 'startdate': 'Data inizio',
+ 'planstartdate': 'Piano data inizio',
+ 'enddate': 'Data fine',
+ 'planenddate': 'Piano data fine',
+ 'cost': 'Costo',
+ 'moreinfo': 'Più informazioni',
+ 'nodata': 'Nessun task trovato',
+ 'notes': 'Note',
+ 'january': 'Gennaio',
+ 'february': 'Febbraio',
+ 'march': 'Marzo',
+ 'april': 'Aprile',
+ 'maylong': 'Maggio',
+ 'june': 'Giugno',
+ 'july': 'Luglio',
+ 'august': 'Agosto',
+ 'september': 'Settembre',
+ 'october': 'Ottobre',
+ 'november': 'Novembre',
+ 'december': 'Dicembre',
+ 'jan': 'Gen',
+ 'feb': 'Feb',
+ 'mar': 'Mar',
+ 'apr': 'Apr',
+ 'may': 'Mag',
+ 'jun': 'Giu',
+ 'jul': 'Lug',
+ 'aug': 'Ago',
+ 'sep': 'Set',
+ 'oct': 'Ott',
+ 'nov': 'Nov',
+ 'dec': 'Dic',
+ 'sunday': 'Domenica',
+ 'monday': 'Lunedì',
+ 'tuesday': 'Martedì',
+ 'wednesday': 'Mercoledì',
+ 'thursday': 'Giovedì',
+ 'friday': 'Venerdì',
+ 'saturday': 'Sabato',
+ 'sun': 'Dom',
+ 'mon': 'Lun',
+ 'tue': 'Mar',
+ 'wed': 'Mer',
+ 'thu': 'Gio',
+ 'fri': 'Ven',
+ 'sat': 'Sab',
+ 'tooltipLoading': 'Caricamento...'
+};
+exports.it = it;
+var hu = {
+ 'format': 'Formátum',
+ 'hour': 'Óra',
+ 'day': 'Nap',
+ 'week': 'Hét',
+ 'month': 'Hónap',
+ 'quarter': 'Negyedév ',
+ 'hours': 'Órák',
+ 'days': 'Nap',
+ 'weeks': 'Hét',
+ 'months': 'Hónap',
+ 'quarters': 'Negyedév',
+ 'hr': 'Ó',
+ 'dy': 'Nap',
+ 'wk': 'Hét',
+ 'mth': 'Hó',
+ 'qtr': 'NÉ',
+ 'hrs': 'Óra',
+ 'dys': 'Nap',
+ 'wks': 'Hét',
+ 'mths': 'Hó',
+ 'qtrs': 'NÉ',
+ 'res': 'Erőforrás',
+ 'dur': 'Időtartam',
+ 'comp': '%',
+ 'completion': 'Elkészült',
+ 'startdate': 'Kezdés',
+ 'planstartdate': 'Tervezett kezdés',
+ 'enddate': 'Befejezés',
+ 'planenddate': 'Tervezett befejezés',
+ 'cost': 'Költség',
+ 'moreinfo': 'További információ',
+ 'nodata': 'No tasks found',
+ 'notes': 'Jegyzetek',
+ 'january': 'Január',
+ 'february': 'Február',
+ 'march': 'Március',
+ 'april': 'Április',
+ 'maylong': 'Május',
+ 'june': 'Június',
+ 'july': 'Július',
+ 'august': 'Augusztus',
+ 'september': 'Szeptember',
+ 'october': 'Október',
+ 'november': 'November',
+ 'december': 'December',
+ 'jan': 'Jan',
+ 'feb': 'Feb',
+ 'mar': 'Már',
+ 'apr': 'Ápr',
+ 'may': 'Máj',
+ 'jun': 'Jún',
+ 'jul': 'Júl',
+ 'aug': 'Aug',
+ 'sep': 'Szep',
+ 'oct': 'Okt',
+ 'nov': 'Nov',
+ 'dec': 'Dec',
+ 'sunday': 'Vasárnap',
+ 'monday': 'Hétfő',
+ 'tuesday': 'Kedd',
+ 'wednesday': 'Szerda',
+ 'thursday': 'Csütörtök',
+ 'friday': 'Péntek',
+ 'saturday': 'Szombat',
+ 'sun': 'Vas',
+ 'mon': 'Hé',
+ 'tue': 'Ke',
+ 'wed': 'Sze',
+ 'thu': 'Csü',
+ 'fri': 'Pén',
+ 'sat': 'Szo',
+ 'tooltipLoading': 'Belöltés...'
+};
+exports.hu = hu;
+var id = {
+ 'format': 'Format',
+ 'hour': 'Jam',
+ 'day': 'Hari',
+ 'week': 'Minggu',
+ 'month': 'Bulan',
+ 'quarter': 'Kuartal',
+ 'hours': 'Jam',
+ 'days': 'Hari',
+ 'weeks': 'Minggu',
+ 'months': 'Bulan',
+ 'quarters': 'Kuartal',
+ 'hr': 'Jam',
+ 'dy': 'Hari',
+ 'wk': 'Min',
+ 'mth': 'Bln',
+ 'qtr': 'Krtl',
+ 'hrs': 'Jam',
+ 'dys': 'Hari',
+ 'wks': 'Min',
+ 'mths': 'Bln',
+ 'qtrs': 'Krtl',
+ 'res': 'Sumber Daya',
+ 'dur': 'Durasi',
+ 'comp': '%',
+ 'completion': 'Penyelesaian',
+ 'startdate': 'Tanggal Mulai',
+ 'planstartdate': 'Perencanaan Tanggal Mulai',
+ 'enddate': 'Tanggal Akhir',
+ 'planenddate': 'Perencanaan Tanggal Akhir',
+ 'cost': 'Biaya',
+ 'moreinfo': 'Informasi Lebih Lanjut',
+ 'nodata': 'No tasks found',
+ 'notes': 'Catatan',
+ 'january': 'Januari',
+ 'february': 'Februari',
+ 'march': 'Maret',
+ 'april': 'April',
+ 'maylong': 'Mei',
'june': 'Juni',
'july': 'Juli',
- 'august': 'August',
+ 'august': 'Agustus',
'september': 'September',
'october': 'Oktober',
'november': 'November',
- 'december': 'Dezember',
+ 'december': 'Desember',
'jan': 'Jan',
'feb': 'Feb',
'mar': 'Mar',
'apr': 'Apr',
- 'may': 'Mai',
+ 'may': 'Mei',
'jun': 'Jun',
'jul': 'Jul',
- 'aug': 'Aug',
+ 'aug': 'Agu',
'sep': 'Sep',
'oct': 'Okt',
'nov': 'Nov',
- 'dec': 'Dez',
- 'sunday': 'Sonntag',
- 'monday': 'Montag',
- 'tuesday': 'Dienstag',
- 'wednesday': 'Mittwoch',
- 'thursday': 'Donnerstag',
- 'friday': 'Freitag',
- 'saturday': 'Samstag',
- 'sun': 'So',
- 'mon': 'Mo', 'tue': 'Di', 'wed': 'Mi', 'thu': 'Do', 'fri': 'Fr', 'sat': 'Sa'
+ 'dec': 'Des',
+ 'sunday': 'Minggu',
+ 'monday': 'Senin',
+ 'tuesday': 'Selasa',
+ 'wednesday': 'Rabu',
+ 'thursday': 'Kamis',
+ 'friday': 'Jumat',
+ 'saturday': 'Sabtu',
+ 'sun': 'Min',
+ 'mon': 'Sen',
+ 'tue': 'Sel',
+ 'wed': 'Rab',
+ 'thu': 'Kam',
+ 'fri': 'Jum',
+ 'sat': 'Sab'
};
-exports.de = de;
+exports.id = id;
+var ja = {
+ 'format': 'タイムライン表示',
+ 'hour': '時',
+ 'day': '日',
+ 'week': '週',
+ 'month': '月',
+ 'quarter': '四半期',
+ 'hours': '時間',
+ 'days': '日間',
+ 'weeks': '週間',
+ 'months': '月間',
+ 'quarters': '四半期',
+ 'hr': '時',
+ 'dy': '日',
+ 'wk': '週',
+ 'mth': '月',
+ 'qtr': '四',
+ 'hrs': '時間',
+ 'dys': '日間',
+ 'wks': '週間',
+ 'mths': '月間',
+ 'qtrs': '四半期',
+ 'res': 'リソース',
+ 'dur': '期間',
+ 'comp': '進捗率',
+ 'completion': '進捗率',
+ 'startdate': '開始日',
+ 'planstartdate': '予定開始日',
+ 'enddate': '期日',
+ 'planenddate': '予定期日',
+ 'cost': 'コスト',
+ 'moreinfo': '詳細',
+ 'nodata': 'No tasks found',
+ 'notes': 'ノート',
+ 'january': '1月',
+ 'february': '2月',
+ 'march': '3月',
+ 'april': '4月',
+ 'maylong': '5月',
+ 'june': '6月',
+ 'july': '7月',
+ 'august': '8月',
+ 'september': '9月',
+ 'october': '10月',
+ 'november': '11月',
+ 'december': '12月',
+ 'jan': '1月',
+ 'feb': '2月',
+ 'mar': '3月',
+ 'apr': '4月',
+ 'may': '5月',
+ 'jun': '6月',
+ 'jul': '7月',
+ 'aug': '8月',
+ 'sep': '9月',
+ 'oct': '10月',
+ 'nov': '11月',
+ 'dec': '12月',
+ 'sunday': '日曜日',
+ 'monday': '月曜日',
+ 'tuesday': '火曜日',
+ 'wednesday': '水曜日',
+ 'thursday': '木曜日',
+ 'friday': '金曜日',
+ 'saturday': '土曜日',
+ 'sun': '日',
+ 'mon': '月',
+ 'tue': '火',
+ 'wed': '水',
+ 'thu': '木',
+ 'fri': '金',
+ 'sat': '土',
+ 'tooltipLoading': 'ローディング中...'
+};
+exports.ja = ja;
+var ko = {
+ 'format': '구분',
+ 'hour': '시',
+ 'day': '일',
+ 'week': '주',
+ 'month': '월',
+ 'quarter': '분기',
+ 'hours': '시',
+ 'days': '일',
+ 'weeks': '주',
+ 'months': '월',
+ 'quarters': '분기',
+ 'hr': '시',
+ 'dy': '일',
+ 'wk': '주',
+ 'mth': '월',
+ 'qtr': '분기',
+ 'hrs': '시',
+ 'dys': '일',
+ 'wks': '주',
+ 'mths': '월',
+ 'qtrs': '분기',
+ 'res': '이름',
+ 'dur': '기간',
+ 'comp': '%',
+ 'completion': '완료',
+ 'startdate': '시작일자',
+ 'planstartdate': '계획 시작일자',
+ 'enddate': '종료일자',
+ 'planenddate': '계획 종료일자',
+ 'cost': '비용',
+ 'moreinfo': '더 많은 정보',
+ 'nodata': 'No tasks found',
+ 'notes': '비고',
+ 'january': '1월',
+ 'february': '2월',
+ 'march': '3월',
+ 'april': '4월',
+ 'maylong': '5월',
+ 'june': '6월',
+ 'july': '7월',
+ 'august': '8월',
+ 'september': '9월',
+ 'october': '10월',
+ 'november': '11월',
+ 'december': '12월',
+ 'jan': '1',
+ 'feb': '2',
+ 'mar': '3',
+ 'apr': '4',
+ 'may': '5',
+ 'jun': '6',
+ 'jul': '7',
+ 'aug': '8',
+ 'sep': '9',
+ 'oct': '10',
+ 'nov': '11',
+ 'dec': '12',
+ 'sunday': '일요일',
+ 'monday': '월요일',
+ 'tuesday': '화요일',
+ 'wednesday': '수요일',
+ 'thursday': '목요일',
+ 'friday': '금요일',
+ 'saturday': '토요일',
+ 'sun': '일',
+ 'mon': '월',
+ 'tue': '화',
+ 'wed': '수',
+ 'thu': '목',
+ 'fri': '금',
+ 'sat': '토',
+ 'tooltipLoading': '로딩중...'
+};
+exports.ko = ko;
+var nl = {
+ 'format': 'Format',
+ 'hour': 'Uur',
+ 'day': 'Dag',
+ 'week': 'Week',
+ 'month': 'Maand',
+ 'quarter': 'Kwartaal',
+ 'hours': 'Uren',
+ 'days': 'Dagen',
+ 'weeks': 'Weken',
+ 'months': 'Maanden',
+ 'quarters': 'Kwartalen',
+ 'hr': 'uur',
+ 'dy': 'dag',
+ 'wk': 'wk',
+ 'mth': 'mnd',
+ 'qtr': 'kw',
+ 'hrs': 'uren',
+ 'dys': 'dagen',
+ 'wks': 'weken',
+ 'mths': 'maanden',
+ 'qtrs': 'kwartalen',
+ 'res': 'Resource',
+ 'dur': 'Doorlooptijd',
+ 'comp': '%',
+ 'completion': 'Gereed',
+ 'startdate': 'Startdatum',
+ 'planstartdate': 'Geplande startdatum',
+ 'enddate': 'Einddatum',
+ 'planenddate': 'Geplande einddatum',
+ 'cost': 'Kosten',
+ 'moreinfo': 'Meer informatie',
+ 'nodata': 'Geen taken gevonden',
+ 'notes': 'Notities',
+ 'january': 'januari',
+ 'february': 'februari',
+ 'march': 'maart',
+ 'april': 'april',
+ 'maylong': 'mei',
+ 'june': 'juni',
+ 'july': 'juli',
+ 'august': 'augustus',
+ 'september': 'september',
+ 'october': 'oktober',
+ 'november': 'november',
+ 'december': 'december',
+ 'jan': 'jan',
+ 'feb': 'feb',
+ 'mar': 'mrt',
+ 'apr': 'apr',
+ 'may': 'mei',
+ 'jun': 'jun',
+ 'jul': 'jul',
+ 'aug': 'aug',
+ 'sep': 'sep',
+ 'oct': 'okt',
+ 'nov': 'nov',
+ 'dec': 'dec',
+ 'sunday': 'zondag',
+ 'monday': 'maandag',
+ 'tuesday': 'dinsdag',
+ 'wednesday': 'woensdag',
+ 'thursday': 'donderdag',
+ 'friday': 'vrijdag',
+ 'saturday': 'zaterdag',
+ 'sun': 'zo',
+ 'mon': 'ma',
+ 'tue': 'di',
+ 'wed': 'wo',
+ 'thu': 'do',
+ 'fri': 'vr',
+ 'sat': 'za'
+};
+exports.nl = nl;
+var pl = {
+ 'format': 'Format',
+ 'hour': 'Godzina',
+ 'day': 'Dzień',
+ 'week': 'Tydzień',
+ 'month': 'Miesiąc',
+ 'quarter': 'Kwartał',
+ 'hours': 'Godziny',
+ 'days': 'Dni',
+ 'weeks': 'Tygodni',
+ 'months': 'Miesięcy',
+ 'quarters': 'Kwartały',
+ 'hr': 'godz.',
+ 'dy': 'd.',
+ 'wk': 'tydz.',
+ 'mth': 'mies.',
+ 'qtr': 'kw.',
+ 'hrs': 'godz.',
+ 'dys': 'd.',
+ 'wks': 'tyg.',
+ 'mths': 'mies.',
+ 'qtrs': 'kw.',
+ 'res': 'Zasób',
+ 'dur': 'Czas trwania',
+ 'comp': '%',
+ 'completion': 'Ukończenie',
+ 'startdate': 'Data Startu',
+ 'planstartdate': 'Planowana Data Startu',
+ 'enddate': 'Data Zakończenia',
+ 'planenddate': 'Planowana Data Zakończenia',
+ 'cost': 'Koszt',
+ 'moreinfo': 'Więcej Inormacji',
+ 'nodata': 'Nie znaleziono zadań',
+ 'notes': 'Dodatkowe Informacje',
+ 'january': 'Styczeń',
+ 'february': 'Luty',
+ 'march': 'Marzec',
+ 'april': 'Kwiecień',
+ 'maylong': 'Maj',
+ 'june': 'Czerwiec',
+ 'july': 'Lipiec',
+ 'august': 'Sierpień',
+ 'september': 'Wrzesień',
+ 'october': 'Październik',
+ 'november': 'Listopad',
+ 'december': 'Grudzień',
+ 'jan': 'St',
+ 'feb': 'Lut',
+ 'mar': 'Mar',
+ 'apr': 'Kw',
+ 'may': 'Maj',
+ 'jun': 'Cz',
+ 'jul': 'Lip',
+ 'aug': 'Sier',
+ 'sep': 'Wrz',
+ 'oct': 'Paź',
+ 'nov': 'Lis',
+ 'dec': 'Gr',
+ 'sunday': 'Niedziela',
+ 'monday': 'Poniedziałek',
+ 'tuesday': 'Wtorek',
+ 'wednesday': 'Środa',
+ 'thursday': 'Czwartek',
+ 'friday': 'Piątek',
+ 'saturday': 'Sobota',
+ 'sun': 'Nd',
+ 'mon': 'Pon',
+ 'tue': 'Wt',
+ 'wed': 'Śr',
+ 'thu': 'Czw',
+ 'fri': 'Pt',
+ 'sat': 'So',
+ 'tooltipLoading': 'Ładowanie...'
+};
+exports.pl = pl;
var pt = {
'hours': 'Horas',
'days': 'Dias',
@@ -2002,7 +3065,7 @@ var pt = {
'mths': 'meses',
'qtrs': 'qtrs',
'completion': 'Terminado',
- 'comp': '% Completado',
+ 'comp': '%',
'moreinfo': 'Mais informações',
'nodata': 'Sem atividades',
'notes': 'Notas',
@@ -2086,7 +3149,7 @@ var ru = {
'sat': ' Сб',
'res': 'Ресурс',
'dur': 'Длительность',
- 'comp': '% выполнения',
+ 'comp': '%',
'completion': 'Выполнено',
'startdate': 'Нач. дата',
'planstartdate': 'Plan Нач. дата',
@@ -2120,158 +3183,6 @@ var ru = {
'tooltipLoading': 'Загрузка...'
};
exports.ru = ru;
-/**
- * Mois : http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=3619
- Jours : http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=3617
- */
-var fr = {
- 'january': 'Janvier',
- 'february': 'Février',
- 'march': 'Mars',
- 'april': 'Avril',
- 'maylong': 'Mai',
- 'june': 'Juin',
- 'july': 'Juillet',
- 'august': 'Août',
- 'september': 'Septembre',
- 'october': 'Octobre',
- 'november': 'Novembre',
- 'december': 'Décembre',
- 'jan': 'Janv',
- 'feb': 'Févr',
- 'mar': 'Mars',
- 'apr': 'Avr',
- 'may': 'Mai',
- 'jun': 'Juin',
- 'jul': 'Juil',
- 'aug': 'Août',
- 'sep': 'Sept',
- 'oct': 'Oct',
- 'nov': 'Nov',
- 'dec': 'Déc',
- 'sunday': 'Dimanche',
- 'monday': 'Lundi',
- 'tuesday': 'Mardi',
- 'wednesday': 'Mercredi',
- 'thursday': 'Jeudi',
- 'friday': 'Vendredi',
- 'saturday': 'Samedi',
- 'sun': 'Dim',
- 'mon': 'Lun',
- 'tue': 'Mar',
- 'wed': 'Mer',
- 'thu': 'Jeu',
- 'fri': 'Ven',
- 'sat': 'Sam',
- 'res': 'Ressource',
- 'dur': 'Durée',
- 'comp': '% Term.',
- 'completion': 'Terminé',
- 'startdate': 'Début',
- 'planstartdate': 'Plan Début',
- 'enddate': 'Fin',
- 'planenddate': 'Plan Fin',
- 'cost': 'Cost',
- 'moreinfo': "Plus d'informations",
- 'nodata': 'No tasks found',
- 'notes': 'Notes',
- 'format': 'Format',
- 'hour': 'Heure',
- 'day': 'Jour',
- 'week': 'Semaine',
- 'month': 'Mois',
- 'quarter': 'Trimestre',
- 'hours': 'Heures',
- 'days': 'Jours',
- 'weeks': 'Semaines',
- 'months': 'Mois',
- 'quarters': 'Trimestres',
- 'hr': 'h',
- 'dy': 'j',
- 'wk': 'sem',
- 'mth': 'mois',
- 'qtr': 'tri',
- 'hrs': 'h',
- 'dys': 'j',
- 'wks': 'sem',
- 'mths': 'mois',
- 'qtrs': 'tri'
-};
-exports.fr = fr;
-var cn = {
- 'january': '一月',
- 'february': '二月',
- 'march': '三月',
- 'april': '四月',
- 'maylong': '五月',
- 'june': '六月',
- 'july': '七月',
- 'august': '八月',
- 'september': '九月',
- 'october': '十月',
- 'november': '十一月',
- 'december': '十二月',
- 'jan': '一月',
- 'feb': '二月',
- 'mar': '三月',
- 'apr': '四月',
- 'may': '五月',
- 'jun': '六月',
- 'jul': '七月',
- 'aug': '八月',
- 'sep': '九月',
- 'oct': '十月',
- 'nov': '十一月',
- 'dec': '十二月',
- 'sunday': '星期日',
- 'monday': '星期一',
- 'tuesday': '星期二',
- 'wednesday': '星期三',
- 'thursday': '星期四',
- 'friday': '星期五',
- 'saturday': '星期六',
- 'sun': '星期日',
- 'mon': '星期一',
- 'tue': '星期二',
- 'wed': '星期三',
- 'thu': '星期四',
- 'fri': '星期五',
- 'sat': '星期六',
- 'res': '資源',
- 'dur': '時程',
- 'comp': '達成率',
- 'completion': '達成',
- 'startdate': '起始日期',
- 'planstartdate': '計劃起始日期',
- 'enddate': '截止日期',
- 'planenddate': '計劃截止日期',
- 'cost': '成本',
- 'moreinfo': "更多資訊",
- 'nodata': 'No tasks found',
- 'notes': '備註',
- 'format': '格式',
- 'hour': '時',
- 'day': '日',
- 'week': '星期',
- 'month': '月',
- 'quarter': '季',
- 'hours': '小時',
- 'days': '天',
- 'weeks': '週',
- 'months': '月',
- 'quarters': '季',
- 'hr': '小時',
- 'dy': '天',
- 'wk': '週',
- 'mth': '月',
- 'qtr': '季',
- 'hrs': '小時',
- 'dys': '天',
- 'wks': '週',
- 'mths': '月',
- 'qtrs': '季'
-};
-exports.cn = cn;
var sv = {
'format': 'Filter',
'hour': 'Timme',
@@ -2296,7 +3207,7 @@ var sv = {
'qtrs': 'Q',
'res': 'Resurs',
'dur': 'Tidsåtgång',
- 'comp': '% klart',
+ 'comp': '%',
'completion': 'Klart',
'startdate': 'Startdatum',
'planstartdate': 'Planerad startdatum',
@@ -2346,154 +3257,6 @@ var sv = {
'sat': 'lör'
};
exports.sv = sv;
-var nl = {
- 'format': 'Format',
- 'hour': 'Uur',
- 'day': 'Dag',
- 'week': 'Week',
- 'month': 'Maand',
- 'quarter': 'Kwartaal',
- 'hours': 'Uren',
- 'days': 'Dagen',
- 'weeks': 'Weken',
- 'months': 'Maanden',
- 'quarters': 'Kwartalen',
- 'hr': 'uur',
- 'dy': 'dag',
- 'wk': 'wk',
- 'mth': 'mnd',
- 'qtr': 'kw',
- 'hrs': 'uren',
- 'dys': 'dagen',
- 'wks': 'weken',
- 'mths': 'maanden',
- 'qtrs': 'kwartalen',
- 'res': 'Resource',
- 'dur': 'Doorlooptijd',
- 'comp': '% gereed',
- 'completion': 'Gereed',
- 'startdate': 'Startdatum',
- 'planstartdate': 'Geplande startdatum',
- 'enddate': 'Einddatum',
- 'planenddate': 'Geplande einddatum',
- 'cost': 'Kosten',
- 'moreinfo': 'Meer informatie',
- 'nodata': 'No tasks found',
- 'notes': 'Notities',
- 'january': 'januari',
- 'february': 'februari',
- 'march': 'maart',
- 'april': 'april',
- 'maylong': 'mei',
- 'june': 'juni',
- 'july': 'juli',
- 'august': 'augustus',
- 'september': 'september',
- 'october': 'oktober',
- 'november': 'november',
- 'december': 'december',
- 'jan': 'jan',
- 'feb': 'feb',
- 'mar': 'mrt',
- 'apr': 'apr',
- 'may': 'mei',
- 'jun': 'jun',
- 'jul': 'jul',
- 'aug': 'aug',
- 'sep': 'sep',
- 'oct': 'okt',
- 'nov': 'nov',
- 'dec': 'dec',
- 'sunday': 'zondag',
- 'monday': 'maandag',
- 'tuesday': 'dinsdag',
- 'wednesday': 'woensdag',
- 'thursday': 'donderdag',
- 'friday': 'vrijdag',
- 'saturday': 'zaterdag',
- 'sun': 'zo',
- 'mon': 'ma',
- 'tue': 'di',
- 'wed': 'wo',
- 'thu': 'do',
- 'fri': 'vr',
- 'sat': 'za'
-};
-exports.nl = nl;
-var id = {
- 'format': 'Format',
- 'hour': 'Jam',
- 'day': 'Hari',
- 'week': 'Minggu',
- 'month': 'Bulan',
- 'quarter': 'Kuartal',
- 'hours': 'Jam',
- 'days': 'Hari',
- 'weeks': 'Minggu',
- 'months': 'Bulan',
- 'quarters': 'Kuartal',
- 'hr': 'Jam',
- 'dy': 'Hari',
- 'wk': 'Min',
- 'mth': 'Bln',
- 'qtr': 'Krtl',
- 'hrs': 'Jam',
- 'dys': 'Hari',
- 'wks': 'Min',
- 'mths': 'Bln',
- 'qtrs': 'Krtl',
- 'res': 'Sumber Daya',
- 'dur': 'Durasi',
- 'comp': '% Penyelesaian',
- 'completion': 'Penyelesaian',
- 'startdate': 'Tanggal Mulai',
- 'planstartdate': 'Perencanaan Tanggal Mulai',
- 'enddate': 'Tanggal Akhir',
- 'planenddate': 'Perencanaan Tanggal Akhir',
- 'cost': 'Biaya',
- 'moreinfo': 'Informasi Lebih Lanjut',
- 'nodata': 'No tasks found',
- 'notes': 'Catatan',
- 'january': 'Januari',
- 'february': 'Februari',
- 'march': 'Maret',
- 'april': 'April',
- 'maylong': 'Mei',
- 'june': 'Juni',
- 'july': 'Juli',
- 'august': 'Agustus',
- 'september': 'September',
- 'october': 'Oktober',
- 'november': 'November',
- 'december': 'Desember',
- 'jan': 'Jan',
- 'feb': 'Feb',
- 'mar': 'Mar',
- 'apr': 'Apr',
- 'may': 'Mei',
- 'jun': 'Jun',
- 'jul': 'Jul',
- 'aug': 'Agu',
- 'sep': 'Sep',
- 'oct': 'Okt',
- 'nov': 'Nov',
- 'dec': 'Des',
- 'sunday': 'Minggu',
- 'monday': 'Senin',
- 'tuesday': 'Selasa',
- 'wednesday': 'Rabu',
- 'thursday': 'Kamis',
- 'friday': 'Jumat',
- 'saturday': 'Sabtu',
- 'sun': 'Min',
- 'mon': 'Sen',
- 'tue': 'Sel',
- 'wed': 'Rab',
- 'thu': 'Kam',
- 'fri': 'Jum',
- 'sat': 'Sab'
-};
-exports.id = id;
var tr = {
'format': 'Biçim',
'hour': 'Saat',
@@ -2518,7 +3281,7 @@ var tr = {
'qtrs': 'Çyrk',
'res': 'Kaynak',
'dur': 'Süre',
- 'comp': '% Tamamlanma.',
+ 'comp': '%.',
'completion': 'Tamamlanma',
'startdate': 'Başlangıç Tarihi',
'planstartdate': 'Plan Başlama Tarihi',
@@ -2568,310 +3331,86 @@ var tr = {
'sat': 'Cmt'
};
exports.tr = tr;
-var ja = {
- 'format': 'タイムライン表示',
- 'hour': '時',
- 'day': '日',
- 'week': '週',
- 'month': '月',
- 'quarter': '四半期',
- 'hours': '時間',
- 'days': '日間',
- 'weeks': '週間',
- 'months': '月間',
- 'quarters': '四半期',
- 'hr': '時',
- 'dy': '日',
- 'wk': '週',
- 'mth': '月',
- 'qtr': '四',
- 'hrs': '時間',
- 'dys': '日間',
- 'wks': '週間',
- 'mths': '月間',
- 'qtrs': '四半期',
- 'res': 'リソース',
- 'dur': '期間',
- 'comp': '進捗率',
- 'completion': '進捗率',
- 'startdate': '開始日',
- 'planstartdate': '予定開始日',
- 'enddate': '期日',
- 'planenddate': '予定期日',
- 'cost': 'コスト',
- 'moreinfo': '詳細',
- 'nodata': 'No tasks found',
- 'notes': 'ノート',
- 'january': '1月',
- 'february': '2月',
- 'march': '3月',
- 'april': '4月',
- 'maylong': '5月',
- 'june': '6月',
- 'july': '7月',
- 'august': '8月',
- 'september': '9月',
- 'october': '10月',
- 'november': '11月',
- 'december': '12月',
- 'jan': '1月',
- 'feb': '2月',
- 'mar': '3月',
- 'apr': '4月',
- 'may': '5月',
- 'jun': '6月',
- 'jul': '7月',
- 'aug': '8月',
- 'sep': '9月',
- 'oct': '10月',
- 'nov': '11月',
- 'dec': '12月',
- 'sunday': '日曜日',
- 'monday': '月曜日',
- 'tuesday': '火曜日',
- 'wednesday': '水曜日',
- 'thursday': '木曜日',
- 'friday': '金曜日',
- 'saturday': '土曜日',
- 'sun': '日',
- 'mon': '月',
- 'tue': '火',
- 'wed': '水',
- 'thu': '木',
- 'fri': '金',
- 'sat': '土',
- 'tooltipLoading': 'ローディング中...'
+var ua = {
+ 'january': 'Січень',
+ 'february': 'Лютий',
+ 'march': 'Березень',
+ 'april': 'Квітень',
+ 'maylong': 'Травень',
+ 'june': 'Червень',
+ 'july': 'Липень',
+ 'august': 'Серпень',
+ 'september': 'Вересень',
+ 'october': 'Жовтень',
+ 'november': 'Листопад',
+ 'december': 'Грудень',
+ 'jan': 'Січ',
+ 'feb': 'Лют',
+ 'mar': 'Бер',
+ 'apr': 'Кві',
+ 'may': 'Тра',
+ 'jun': 'Чер',
+ 'jul': 'Лип',
+ 'aug': 'Сер',
+ 'sep': 'Вер',
+ 'oct': 'Жов',
+ 'nov': 'Лис',
+ 'dec': 'Гру',
+ 'sunday': 'Неділя',
+ 'monday': 'Понеділок',
+ 'tuesday': 'Вівторок',
+ 'wednesday': 'Середа',
+ 'thursday': 'Четвер',
+ 'friday': 'П\'ятниця',
+ 'saturday': 'Субота',
+ 'sun': ' Нд',
+ 'mon': 'Пн',
+ 'tue': ' Вт',
+ 'wed': 'Ср',
+ 'thu': ' Чт',
+ 'fri': ' Пт',
+ 'sat': ' Сб',
+ 'res': 'Ресурс',
+ 'dur': 'Тривалість',
+ 'comp': '%',
+ 'completion': 'Виконано',
+ 'startdate': 'Поч. дата',
+ 'planstartdate': 'План Поч. дата',
+ 'enddate': 'Кін. дата',
+ 'planenddate': 'План Кін. дата',
+ 'cost': 'Вартість',
+ 'moreinfo': 'Деталі',
+ 'nodata': 'Нічого не знайдено',
+ 'notes': 'Нотатки',
+ 'format': 'Формат',
+ 'hour': 'Година',
+ 'day': 'День',
+ 'week': 'Тиждень',
+ 'month': 'Місяць',
+ 'quarter': 'Кварт',
+ 'hours': 'Годин',
+ 'days': 'Днів',
+ 'weeks': 'Тижнів',
+ 'months': 'Місяців',
+ 'quarters': 'Кварталів',
+ 'hr': 'г.',
+ 'dy': 'дн.',
+ 'wk': 'тиж.',
+ 'mth': 'міс.',
+ 'qtr': 'кв.',
+ 'hrs': 'г.',
+ 'dys': 'дн.',
+ 'wks': 'тиж.',
+ 'mths': 'міс.',
+ 'qtrs': 'кв.',
+ 'tooltipLoading': 'Загрузка...'
};
-exports.ja = ja;
-var cs = {
- 'format': 'Zobrazení',
- 'hour': 'Hodina',
- 'day': 'Den',
- 'week': 'Týden',
- 'month': 'Měsíc',
- 'quarter': 'Kvartál',
- 'hours': 'Hodiny',
- 'days': 'Dni',
- 'weeks': 'Týdny',
- 'months': 'Měsíce',
- 'quarters': 'Kvartály',
- 'hr': 'Ho',
- 'dy': 'Den',
- 'wk': 'Tyd',
- 'mth': 'Měs',
- 'qtr': 'Kvar',
- 'hrs': 'Ho',
- 'dys': 'Dni',
- 'wks': 'Tyd',
- 'mths': 'Měs',
- 'qtrs': 'Kvar',
- 'res': 'Přiřazeno',
- 'dur': 'Trvání',
- 'comp': '% Hotovo',
- 'completion': 'Hotovo',
- 'startdate': 'Start',
- 'planstartdate': 'Plánovaný start',
- 'enddate': 'Konec',
- 'planenddate': 'Plánovaný konec',
- 'cost': 'Náklady',
- 'moreinfo': 'Více informací',
- 'nodata': 'No tasks found',
- 'notes': 'Poznámky',
- 'january': 'Leden',
- 'february': 'Únor',
- 'march': 'Březen',
- 'april': 'Duben',
- 'maylong': 'Květen',
- 'june': 'Červen',
- 'july': 'Červenec',
- 'august': 'Srpen',
- 'september': 'Září',
- 'october': 'Říjen',
- 'november': 'Listopad',
- 'december': 'Prosinec',
- 'jan': 'Led',
- 'feb': 'Úno',
- 'mar': 'Bře',
- 'apr': 'Dub',
- 'may': 'Kvě',
- 'jun': 'Čer',
- 'jul': 'Čvc',
- 'aug': 'Srp',
- 'sep': 'Zář',
- 'oct': 'Říj',
- 'nov': 'Lis',
- 'dec': 'Pro',
- 'sunday': 'Neděle',
- 'monday': 'Pondělí',
- 'tuesday': 'Úterý',
- 'wednesday': 'Středa',
- 'thursday': 'Čtvrtek',
- 'friday': 'Pátek',
- 'saturday': 'Sobota',
- 'sun': 'Ne',
- 'mon': 'Po',
- 'tue': 'Út',
- 'wed': 'St',
- 'thu': 'Čt',
- 'fri': 'Pa',
- 'sat': 'So',
- 'tooltipLoading': 'Nahrávám...'
-};
-exports.cs = cs;
-var hu = {
- 'format': 'Formátum',
- 'hour': 'Óra',
- 'day': 'Nap',
- 'week': 'Hét',
- 'month': 'Hónap',
- 'quarter': 'Negyedév ',
- 'hours': 'Órák',
- 'days': 'Nap',
- 'weeks': 'Hét',
- 'months': 'Hónap',
- 'quarters': 'Negyedév',
- 'hr': 'Ó',
- 'dy': 'Nap',
- 'wk': 'Hét',
- 'mth': 'Hó',
- 'qtr': 'NÉ',
- 'hrs': 'Óra',
- 'dys': 'Nap',
- 'wks': 'Hét',
- 'mths': 'Hó',
- 'qtrs': 'NÉ',
- 'res': 'Erőforrás',
- 'dur': 'Időtartam',
- 'comp': '% Kész',
- 'completion': 'Elkészült',
- 'startdate': 'Kezdés',
- 'planstartdate': 'Tervezett kezdés',
- 'enddate': 'Befejezés',
- 'planenddate': 'Tervezett befejezés',
- 'cost': 'Költség',
- 'moreinfo': 'További információ',
- 'nodata': 'No tasks found',
- 'notes': 'Jegyzetek',
- 'january': 'Január',
- 'february': 'Február',
- 'march': 'Március',
- 'april': 'Április',
- 'maylong': 'Május',
- 'june': 'Június',
- 'july': 'Július',
- 'august': 'Augusztus',
- 'september': 'Szeptember',
- 'october': 'Október',
- 'november': 'November',
- 'december': 'December',
- 'jan': 'Jan',
- 'feb': 'Feb',
- 'mar': 'Már',
- 'apr': 'Ápr',
- 'may': 'Máj',
- 'jun': 'Jún',
- 'jul': 'Júl',
- 'aug': 'Aug',
- 'sep': 'Szep',
- 'oct': 'Okt',
- 'nov': 'Nov',
- 'dec': 'Dec',
- 'sunday': 'Vasárnap',
- 'monday': 'Hétfő',
- 'tuesday': 'Kedd',
- 'wednesday': 'Szerda',
- 'thursday': 'Csütörtök',
- 'friday': 'Péntek',
- 'saturday': 'Szombat',
- 'sun': 'Vas',
- 'mon': 'Hé',
- 'tue': 'Ke',
- 'wed': 'Sze',
- 'thu': 'Csü',
- 'fri': 'Pén',
- 'sat': 'Szo',
- 'tooltipLoading': 'Belöltés...'
-};
-exports.hu = hu;
-var ko = {
- 'format': '구분',
- 'hour': '시',
- 'day': '일',
- 'week': '주',
- 'month': '월',
- 'quarter': '분기',
- 'hours': '시',
- 'days': '일',
- 'weeks': '주',
- 'months': '월',
- 'quarters': '분기',
- 'hr': '시',
- 'dy': '일',
- 'wk': '주',
- 'mth': '월',
- 'qtr': '분기',
- 'hrs': '시',
- 'dys': '일',
- 'wks': '주',
- 'mths': '월',
- 'qtrs': '분기',
- 'res': '이름',
- 'dur': '기간',
- 'comp': '% ',
- 'completion': '완료',
- 'startdate': '시작일자',
- 'planstartdate': '계획 시작일자',
- 'enddate': '종료일자',
- 'planenddate': '계획 종료일자',
- 'cost': '비용',
- 'moreinfo': '더 많은 정보',
- 'nodata': 'No tasks found',
- 'notes': '비고',
- 'january': '1월',
- 'february': '2월',
- 'march': '3월',
- 'april': '4월',
- 'maylong': '5월',
- 'june': '6월',
- 'july': '7월',
- 'august': '8월',
- 'september': '9월',
- 'october': '10월',
- 'november': '11월',
- 'december': '12월',
- 'jan': '1',
- 'feb': '2',
- 'mar': '3',
- 'apr': '4',
- 'may': '5',
- 'jun': '6',
- 'jul': '7',
- 'aug': '8',
- 'sep': '9',
- 'oct': '10',
- 'nov': '11',
- 'dec': '12',
- 'sunday': '일요일',
- 'monday': '월요일',
- 'tuesday': '화요일',
- 'wednesday': '수요일',
- 'thursday': '목요일',
- 'friday': '금요일',
- 'saturday': '토요일',
- 'sun': '일',
- 'mon': '월',
- 'tue': '화',
- 'wed': '수',
- 'thu': '목',
- 'fri': '금',
- 'sat': '토',
- 'tooltipLoading': '로딩중...'
-};
-exports.ko = ko;
+exports.ua = ua;
},{}],9:[function(require,module,exports){
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
+exports.includeGetSet = void 0;
var date_utils_1 = require("./utils/date_utils");
var draw_columns_1 = require("./draw_columns");
exports.includeGetSet = function () {
@@ -2996,6 +3535,12 @@ exports.includeGetSet = function () {
this.vLangs[pLang][vKey] = (pVals[vKey]) ? document.createTextNode(pVals[vKey]).data : this.vLangs['en'][vKey];
}
};
+ this.setCustomLang = function (pVals) {
+ this.vLangs[this.vLang] = new Object();
+ for (var vKey in this.vLangs['en']) {
+ this.vLangs[this.vLang][vKey] = (pVals[vKey]) ? document.createTextNode(pVals[vKey]).data : this.vLangs['en'][vKey];
+ }
+ };
this.setTotalHeight = function (pVal) { this.vTotalHeight = pVal; };
// EVENTS
this.setEvents = function (pEvents) { this.vEvents = pEvents; };
@@ -3094,6 +3639,7 @@ var __assign = (this && this.__assign) || function () {
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", { value: true });
+exports.processRows = exports.ClearTasks = exports.RemoveTaskItem = exports.AddTaskItemObject = exports.AddTaskItem = exports.createTaskInfo = exports.TaskItem = exports.TaskItemObject = exports.sortTasks = exports.taskLink = void 0;
var general_utils_1 = require("./utils/general_utils");
var draw_utils_1 = require("./utils/draw_utils");
var date_utils_1 = require("./utils/date_utils");
@@ -3108,7 +3654,9 @@ exports.taskLink = function (pRef, pWidth, pHeight) {
vHeight = pHeight;
else
vHeight = 400;
- window.open(pRef, 'newwin', 'height=' + vHeight + ',width=' + vWidth); // let OpenWindow =
+ // @CHANGE LDR To open in same window
+ //window.open(pRef, 'newwin', 'height=' + vHeight + ',width=' + vWidth); // let OpenWindow =
+ window.location.href=pRef
};
exports.sortTasks = function (pList, pID, pIdx) {
if (pList.length < 2) {
@@ -3146,15 +3694,16 @@ exports.TaskItemObject = function (object) {
general_utils_1.internalProperties.forEach(function (property) {
delete pDataObject[property];
});
- return new exports.TaskItem(object.pID, object.pName, object.pStart, object.pEnd, object.pClass, object.pLink, object.pMile, object.pRes, object.pComp, object.pGroup, object.pParent, object.pOpen, object.pDepend, object.pCaption, object.pNotes, object.pGantt, object.pCost, object.pPlanStart, object.pPlanEnd, object.pDuration, object.pBarText, object);
+ return new exports.TaskItem(object.pID, object.pName, object.pStart, object.pEnd, object.pClass, object.pLink, object.pMile, object.pRes, object.pComp, object.pGroup, object.pParent, object.pOpen, object.pDepend, object.pCaption, object.pNotes, object.pGantt, object.pCost, object.pPlanStart, object.pPlanEnd, object.pDuration, object.pBarText, object, object.pPlanClass);
};
-exports.TaskItem = function (pID, pName, pStart, pEnd, pClass, pLink, pMile, pRes, pComp, pGroup, pParent, pOpen, pDepend, pCaption, pNotes, pGantt, pCost, pPlanStart, pPlanEnd, pDuration, pBarText, pDataObject) {
+exports.TaskItem = function (pID, pName, pStart, pEnd, pClass, pLink, pMile, pRes, pComp, pGroup, pParent, pOpen, pDepend, pCaption, pNotes, pGantt, pCost, pPlanStart, pPlanEnd, pDuration, pBarText, pDataObject, pPlanClass) {
if (pCost === void 0) { pCost = null; }
if (pPlanStart === void 0) { pPlanStart = null; }
if (pPlanEnd === void 0) { pPlanEnd = null; }
if (pDuration === void 0) { pDuration = null; }
if (pBarText === void 0) { pBarText = null; }
if (pDataObject === void 0) { pDataObject = null; }
+ if (pPlanClass === void 0) { pPlanClass = null; }
var vGantt = pGantt ? pGantt : this;
var _id = document.createTextNode(pID).data;
var vID = general_utils_1.hashKey(document.createTextNode(pID).data);
@@ -3168,6 +3717,7 @@ exports.TaskItem = function (pID, pName, pStart, pEnd, pClass, pLink, pMile, pRe
var vGroupMinPlanStart = null;
var vGroupMinPlanEnd = null;
var vClass = document.createTextNode(pClass).data;
+ var vPlanClass = document.createTextNode(pPlanClass).data;
var vLink = document.createTextNode(pLink).data;
var vMile = parseInt(document.createTextNode(pMile).data);
var vRes = document.createTextNode(pRes).data;
@@ -3305,6 +3855,7 @@ exports.TaskItem = function (pID, pName, pStart, pEnd, pClass, pLink, pMile, pRe
return vEnd;
};
this.getPlanStart = function () { return vPlanStart ? vPlanStart : vStart; };
+ this.getPlanClass = function () { return vPlanClass && vPlanClass !== "null" ? vPlanClass : vClass; };
this.getPlanEnd = function () { return vPlanEnd ? vPlanEnd : vEnd; };
this.getCost = function () { return vCost; };
this.getGroupMinStart = function () { return vGroupMinStart; };
@@ -3407,11 +3958,11 @@ exports.TaskItem = function (pID, pName, pStart, pEnd, pClass, pLink, pMile, pRe
vDuration = tmpPer + ' ' + ((tmpPer != 1) ? pLang['wks'] : pLang['wk']);
break;
case 'month':
- tmpPer = Math.round(hours / 24 / 7 / 30);
+ tmpPer = Math.round(hours / 24 / 7 / 4.35);
vDuration = tmpPer + ' ' + ((tmpPer != 1) ? pLang['mths'] : pLang['mth']);
break;
case 'quarter':
- tmpPer = Math.round(hours / 24 / 7 / 30 / 3);
+ tmpPer = Math.round(hours / 24 / 7 / 13);
vDuration = tmpPer + ' ' + ((tmpPer != 1) ? pLang['qtrs'] : pLang['qtr']);
break;
}
@@ -3440,6 +3991,7 @@ exports.TaskItem = function (pID, pName, pStart, pEnd, pClass, pLink, pMile, pRe
this.setName = function (pName) { vName = pName; };
this.setNotes = function (pNotes) { vNotes = pNotes; };
this.setClass = function (pClass) { vClass = pClass; };
+ this.setPlanClass = function (pPlanClass) { vPlanClass = pPlanClass; };
this.setCost = function (pCost) { vCost = pCost; };
this.setResource = function (pRes) { vRes = pRes; };
this.setDuration = function (pDuration) { vDuration = pDuration; };
@@ -3546,7 +4098,8 @@ exports.TaskItem = function (pID, pName, pStart, pEnd, pClass, pLink, pMile, pRe
pComp: vComp,
pCost: vCost,
pGroup: vGroup,
- pDataObjec: vDataObject
+ pDataObject: vDataObject,
+ pPlanClass: vPlanClass
};
};
};
@@ -3601,7 +4154,7 @@ exports.createTaskInfo = function (pTask, templateStrOrFn) {
}
if (_this.vShowTaskInfoDur == 1 && !pTask.getMile()) {
vTmpDiv = draw_utils_1.newNode(vTaskInfo, 'div', null, 'gTILine gTId');
- draw_utils_1.newNode(vTmpDiv, 'span', null, 'gTaskLabel', _this.vLangs[_this.vLang]['duration'] + ': ');
+ draw_utils_1.newNode(vTmpDiv, 'span', null, 'gTaskLabel', _this.vLangs[_this.vLang]['dur'] + ': ');
draw_utils_1.newNode(vTmpDiv, 'span', null, 'gTaskText', pTask.getDuration(_this.vFormat, _this.vLangs[_this.vLang]));
}
if (_this.vShowTaskInfoComp == 1) {
@@ -3611,7 +4164,7 @@ exports.createTaskInfo = function (pTask, templateStrOrFn) {
}
if (_this.vShowTaskInfoRes == 1) {
vTmpDiv = draw_utils_1.newNode(vTaskInfo, 'div', null, 'gTILine gTIr');
- draw_utils_1.newNode(vTmpDiv, 'span', null, 'gTaskLabel', _this.vLangs[_this.vLang]['resource'] + ': ');
+ draw_utils_1.newNode(vTmpDiv, 'span', null, 'gTaskLabel', _this.vLangs[_this.vLang]['res'] + ': ');
draw_utils_1.newNode(vTmpDiv, 'span', null, 'gTaskText', pTask.getResource());
}
if (_this.vShowTaskInfoLink == 1 && pTask.getLink() != '') {
@@ -3815,6 +4368,7 @@ exports.processRows = function (pList, pID, pRow, pLevel, pOpen, pUseSort, vDebu
},{"./utils/date_utils":11,"./utils/draw_utils":12,"./utils/general_utils":13}],11:[function(require,module,exports){
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
+exports.getIsoWeek = exports.parseDateFormatStr = exports.formatDateStr = exports.parseDateStr = exports.coerceDate = exports.getMaxDate = exports.getMinDate = void 0;
/**
* DATES
*/
@@ -4110,6 +4664,7 @@ exports.getIsoWeek = function (pDate) {
},{}],12:[function(require,module,exports){
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
+exports.drawSelector = exports.sLine = exports.CalcTaskXY = exports.getArrayLocationByID = exports.newNode = exports.makeInput = void 0;
var events_1 = require("../events");
exports.makeInput = function (formattedValue, editable, type, value, choices) {
if (type === void 0) { type = 'text'; }
@@ -4274,8 +4829,9 @@ exports.drawSelector = function (pPos) {
},{"../events":5}],13:[function(require,module,exports){
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
+exports.printChart = exports.calculateStartEndFromDepend = exports.makeRequestOldBrowsers = exports.makeRequest = exports.moveToolTip = exports.updateFlyingObj = exports.isParentElementOrSelf = exports.criticalPath = exports.hashKey = exports.hashString = exports.fadeToolTip = exports.hideToolTip = exports.isIE = exports.getOffset = exports.calculateCurrentDateOffset = exports.getScrollbarWidth = exports.getScrollPositions = exports.benchMark = exports.getZoomFactor = exports.delayedHide = exports.stripUnwanted = exports.stripIds = exports.changeFormat = exports.findObj = exports.internalPropertiesLang = exports.internalProperties = void 0;
exports.internalProperties = ['pID', 'pName', 'pStart', 'pEnd', 'pClass', 'pLink', 'pMile', 'pRes', 'pComp', 'pGroup', 'pParent',
- 'pOpen', 'pDepend', 'pCaption', 'pNotes', 'pGantt', 'pCost', 'pPlanStart', 'pPlanEnd'];
+ 'pOpen', 'pDepend', 'pCaption', 'pNotes', 'pGantt', 'pCost', 'pPlanStart', 'pPlanEnd', 'pPlanClass'];
exports.internalPropertiesLang = {
'pID': 'id',
'pName': 'name',
@@ -4283,7 +4839,8 @@ exports.internalPropertiesLang = {
'pEnd': 'enddate',
'pLink': 'link',
'pMile': 'mile',
- 'pRes': 'resource',
+ 'pRes': 'res',
+ 'pDuration': 'dur',
'pComp': 'comp',
'pGroup': 'group',
'pParent': 'parent',
@@ -4293,7 +4850,8 @@ exports.internalPropertiesLang = {
'pNotes': 'notes',
'pCost': 'cost',
'pPlanStart': 'planstartdate',
- 'pPlanEnd': 'planenddate'
+ 'pPlanEnd': 'planenddate',
+ 'pPlanClass': 'planclass'
};
exports.findObj = function (theObj, theDoc) {
if (theDoc === void 0) { theDoc = null; }
@@ -4567,14 +5125,16 @@ function isParentElementOrSelf(child, parent) {
}
exports.isParentElementOrSelf = isParentElementOrSelf;
exports.updateFlyingObj = function (e, pGanttChartObj, pTimer) {
+ var documentElement = document.documentElement;
+ var bodyElement = document.getElementsByTagName('body')[0];
var vCurTopBuf = 3;
var vCurLeftBuf = 5;
var vCurBotBuf = 3;
var vCurRightBuf = 15;
var vMouseX = (e) ? e.clientX : window.event.clientX;
var vMouseY = (e) ? e.clientY : window.event.clientY;
- var vViewportX = document.documentElement.clientWidth || document.getElementsByTagName('body')[0].clientWidth;
- var vViewportY = document.documentElement.clientHeight || document.getElementsByTagName('body')[0].clientHeight;
+ var vViewportX = (documentElement === null || documentElement === void 0 ? void 0 : documentElement.clientWidth) || (bodyElement === null || bodyElement === void 0 ? void 0 : bodyElement.clientWidth);
+ var vViewportY = (documentElement === null || documentElement === void 0 ? void 0 : documentElement.clientHeight) || (bodyElement === null || bodyElement === void 0 ? void 0 : bodyElement.clientHeight);
var vNewX = vMouseX;
var vNewY = vMouseY;
var screenX = screen.availWidth || window.innerWidth;
@@ -4583,8 +5143,8 @@ exports.updateFlyingObj = function (e, pGanttChartObj, pTimer) {
var vOldY = parseInt(pGanttChartObj.vTool.style.top);
if (navigator.appName.toLowerCase() == 'microsoft internet explorer') {
// the clientX and clientY properties include the left and top borders of the client area
- vMouseX -= document.documentElement.clientLeft;
- vMouseY -= document.documentElement.clientTop;
+ vMouseX -= documentElement === null || documentElement === void 0 ? void 0 : documentElement.clientLeft;
+ vMouseY -= documentElement === null || documentElement === void 0 ? void 0 : documentElement.clientTop;
var vZoomFactor = exports.getZoomFactor();
if (vZoomFactor != 1) { // IE 7 at non-default zoom level
vMouseX = Math.round(vMouseX / vZoomFactor);
@@ -4724,10 +5284,26 @@ exports.makeRequestOldBrowsers = function (pFile, vDebug) {
};
exports.calculateStartEndFromDepend = function (tasksList) {
};
+exports.printChart = function (width, height, css) {
+ if (css === void 0) { css = undefined; }
+ if (css === undefined) {
+ css = // Default injected CSS
+ "@media print {\n @page {\n size: " + width + "mm " + height + "mm;\n }\n /* set gantt container to the same width as the page */\n .gchartcontainer {\n width: " + width + "mm;\n }\n };";
+ }
+ var $container = document.querySelector('.gchartcontainer');
+ $container.insertAdjacentHTML('afterbegin', "");
+ // Remove the print CSS when the print dialog is closed
+ window.addEventListener('afterprint', function () {
+ $container.removeChild($container.children[0]);
+ }, { 'once': true });
+ // Trigger the print
+ window.print();
+};
},{}],14:[function(require,module,exports){
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
+exports.getXMLTask = exports.getXMLProject = exports.AddXMLTask = exports.getXMLNodeValue = exports.findXMLNode = exports.parseXMLString = exports.parseXML = void 0;
var task_1 = require("./task");
var date_utils_1 = require("./utils/date_utils");
var draw_utils_1 = require("./utils/draw_utils");
@@ -4955,7 +5531,7 @@ exports.AddXMLTask = function (pGanttVar, pXmlDoc) {
if (vSubCreated)
pDepend = '';
// Finally add the task
- pGanttVar.AddTaskItem(new task_1.TaskItem(pID, pName, pStart, pEnd, pClass, pLink, pMile, pRes, pComp, pGroup, pParent, pOpen, pDepend, pCaption, pNotes, pGanttVar, pCost, pPlanStart, pPlanEnd, pDuration));
+ pGanttVar.AddTaskItem(new task_1.TaskItem(pID, pName, pStart, pEnd, pClass, pLink, pMile, pRes, pComp, pGroup, pParent, pOpen, pDepend, pCaption, pNotes, pGanttVar, pCost, pPlanStart, pPlanEnd, pDuration, undefined, undefined, pClass));
}
}
}
@@ -4985,6 +5561,7 @@ exports.AddXMLTask = function (pGanttVar, pXmlDoc) {
var pCaption = exports.getXMLNodeValue(Task[i], 'pCaption', 2, '');
var pNotes = exports.getXMLNodeValue(Task[i], 'pNotes', 2, '');
var pClass = exports.getXMLNodeValue(Task[i], 'pClass', 2, '');
+ var pPlanClass = exports.getXMLNodeValue(Task[i], 'pPlanClass', 2, '');
if (typeof pClass == 'undefined') {
if (pGroup > 0)
pClass = 'ggroupblack';
@@ -4993,8 +5570,10 @@ exports.AddXMLTask = function (pGanttVar, pXmlDoc) {
else
pClass = 'gtaskblue';
}
+ if (typeof pPlanClass == 'undefined')
+ pPlanClass = pClass;
// Finally add the task
- pGanttVar.AddTaskItem(new task_1.TaskItem(pID, pName, pStart, pEnd, pClass, pLink, pMile, pRes, pComp, pGroup, pParent, pOpen, pDepend, pCaption, pNotes, pGanttVar, pCost, pPlanStart, pPlanEnd, pDuration));
+ pGanttVar.AddTaskItem(new task_1.TaskItem(pID, pName, pStart, pEnd, pClass, pLink, pMile, pRes, pComp, pGroup, pParent, pOpen, pDepend, pCaption, pNotes, pGanttVar, pCost, pPlanStart, pPlanEnd, pDuration, undefined, undefined, pPlanClass));
}
}
}
@@ -5055,10 +5634,11 @@ exports.getXMLTask = function (pID, pIdx) {
var vTmpFrag = document.createDocumentFragment();
var vTmpDiv = draw_utils_1.newNode(vTmpFrag, 'div', null, null, this.vTaskList[vIdx].getNotes().innerHTML);
vTask += '' + vTmpDiv.innerHTML + '';
+ vTask += '' + this.vTaskList[vIdx].getPlanClass() + '';
vTask += '';
}
return vTask;
};
},{"./task":10,"./utils/date_utils":11,"./utils/draw_utils":12,"./utils/general_utils":13}]},{},[1])(1)
-});
\ No newline at end of file
+});
diff --git a/htdocs/langs/en_US/companies.lang b/htdocs/langs/en_US/companies.lang
index 526483b1339..d1ca72b826a 100644
--- a/htdocs/langs/en_US/companies.lang
+++ b/htdocs/langs/en_US/companies.lang
@@ -135,180 +135,97 @@ ProfId9=Professional ID 9
ProfId10=Professional ID 10
ProfId1AR=Prof Id 1 (CUIT/CUIL)
ProfId2AR=Prof Id 2 (Revenu brutes)
-ProfId3AR=-
-ProfId4AR=-
-ProfId5AR=-
-ProfId6AR=-
ProfId1AT=Prof Id 1 (USt.-IdNr)
ProfId2AT=Prof Id 2 (USt.-Nr)
ProfId3AT=Prof Id 3 (Handelsregister-Nr.)
-ProfId4AT=-
ProfId5AT=EORI number
-ProfId6AT=-
ProfId1AU=Prof Id 1 (ABN)
-ProfId2AU=-
-ProfId3AU=-
-ProfId4AU=-
-ProfId5AU=-
-ProfId6AU=-
ProfId1BE=Prof Id 1 (Professional number)
-ProfId2BE=-
-ProfId3BE=-
-ProfId4BE=-
ProfId5BE=EORI number
-ProfId6BE=-
-ProfId1BR=-
ProfId2BR=IE (Inscricao Estadual)
ProfId3BR=IM (Inscricao Municipal)
ProfId4BR=CPF
#ProfId5BR=CNAE
#ProfId6BR=INSS
ProfId1CH=UID-Nummer
-ProfId2CH=-
ProfId3CH=Prof Id 1 (Federal number)
ProfId4CH=Prof Id 2 (Commercial Record number)
ProfId5CH=EORI number
-ProfId6CH=-
ProfId1CL=Prof Id 1 (R.U.T.)
-ProfId2CL=-
-ProfId3CL=-
-ProfId4CL=-
-ProfId5CL=-
-ProfId6CL=-
ProfId1CM=Id. prof. 1 (Trade Register)
ProfId2CM=Id. prof. 2 (Taxpayer No.)
ProfId3CM=Id. prof. 3 (No. of Creation decree)
ProfId4CM=Id. prof. 4 (No. of Deposit certificate)
ProfId5CM=Id. prof. 5 (Others)
-ProfId6CM=-
ProfId1ShortCM=Trade Register
ProfId2ShortCM=Taxpayer No.
ProfId3ShortCM=No. of Creation decree
ProfId4ShortCM=No. of Deposit certificate
ProfId5ShortCM=Others
-ProfId6ShortCM=-
ProfId1CO=Prof Id 1 (R.U.T.)
-ProfId2CO=-
-ProfId3CO=-
-ProfId4CO=-
-ProfId5CO=-
-ProfId6CO=-
ProfId1DE=Prof Id 1 (USt.-IdNr)
ProfId2DE=Prof Id 2 (USt.-Nr)
ProfId3DE=Prof Id 3 (Handelsregister-Nr.)
-ProfId4DE=-
ProfId5DE=EORI number
-ProfId6DE=-
ProfId1ES=Prof Id 1 (CIF/NIF)
ProfId2ES=Prof Id 2 (Social security number)
ProfId3ES=Prof Id 3 (CNAE)
ProfId4ES=Prof Id 4 (Collegiate number)
ProfId5ES=Prof Id 5 (EORI number)
-ProfId6ES=-
ProfId1FR=Prof Id 1 (SIREN)
ProfId2FR=Prof Id 2 (SIRET)
ProfId3FR=Prof Id 3 (NAF, old APE)
ProfId4FR=Prof Id 4 (RCS/RM)
ProfId5FR=Prof Id 5 (numéro EORI)
-ProfId6FR=-
-ProfId7FR=-
-ProfId8FR=-
-ProfId9FR=-
-ProfId10FR=-
ProfId1ShortFR=SIREN
ProfId2ShortFR=SIRET
ProfId3ShortFR=NAF
ProfId4ShortFR=RCS
ProfId5ShortFR=EORI
-ProfId6ShortFR=-
-ProfId7ShortFR=-
-ProfId8ShortFR=-
-ProfId9ShortFR=-
-ProfId10ShortFR=-
ProfId1GB=Registration Number
-ProfId2GB=-
ProfId3GB=SIC
-ProfId4GB=-
-ProfId5GB=-
-ProfId6GB=-
ProfId1HN=Id prof. 1 (RTN)
-ProfId2HN=-
-ProfId3HN=-
-ProfId4HN=-
-ProfId5HN=-
-ProfId6HN=-
ProfId1IN=Prof Id 1 (TIN)
ProfId2IN=Prof Id 2 (PAN)
ProfId3IN=Prof Id 3 (SRVC TAX)
ProfId4IN=Prof Id 4
ProfId5IN=Prof Id 5
-ProfId6IN=-
-ProfId1IT=-
-ProfId2IT=-
-ProfId3IT=-
-ProfId4IT=-
ProfId5IT=EORI number
-ProfId6IT=-
ProfId1LU=Id. prof. 1 (R.C.S. Luxembourg)
ProfId2LU=Id. prof. 2 (Business permit)
-ProfId3LU=-
-ProfId4LU=-
ProfId5LU=EORI number
-ProfId6LU=-
ProfId1MA=Id prof. 1 (R.C.)
ProfId2MA=Id prof. 2 (Patente)
ProfId3MA=Id prof. 3 (I.F.)
ProfId4MA=Id prof. 4 (C.N.S.S.)
ProfId5MA=Id prof. 5 (I.C.E.)
-ProfId6MA=-
ProfId1MX=Prof Id 1 (R.F.C).
ProfId2MX=Prof Id 2 (R..P. IMSS)
ProfId3MX=Prof Id 3 (Professional Charter)
-ProfId4MX=-
-ProfId5MX=-
-ProfId6MX=-
ProfId1NL=KVK nummer
-ProfId2NL=-
-ProfId3NL=-
ProfId4NL=Burgerservicenummer (BSN)
ProfId5NL=EORI number
-ProfId6NL=-
ProfId1PT=Prof Id 1 (NIPC)
ProfId2PT=Prof Id 2 (Social security number)
ProfId3PT=Prof Id 3 (Commercial Record number)
ProfId4PT=Prof Id 4 (Conservatory)
ProfId5PT=Prof Id 5 (EORI number)
-ProfId6PT=-
ProfId1SN=RC
ProfId2SN=NINEA
-ProfId3SN=-
-ProfId4SN=-
-ProfId5SN=-
-ProfId6SN=-
ProfId1TN=Prof Id 1 (RC)
ProfId2TN=Prof Id 2 (Fiscal matricule)
ProfId3TN=Prof Id 3 (Douane code)
ProfId4TN=Prof Id 4 (BAN)
-ProfId5TN=-
-ProfId6TN=-
ProfId1US=Prof Id (FEIN)
-ProfId2US=-
-ProfId3US=-
-ProfId4US=-
-ProfId5US=-
-ProfId6US=-
ProfId1RO=Prof Id 1 (CUI)
ProfId2RO=Prof Id 2 (Nr. Înmatriculare)
ProfId3RO=Prof Id 3 (CAEN)
ProfId4RO=Prof Id 5 (EUID)
ProfId5RO=Prof Id 5 (EORI number)
-ProfId6RO=-
ProfId1RU=Prof Id 1 (OGRN)
ProfId2RU=Prof Id 2 (INN)
ProfId3RU=Prof Id 3 (KPP)
ProfId4RU=Prof Id 4 (OKPO)
-ProfId5RU=-
-ProfId6RU=-
ProfId1UA=Prof Id 1 (EDRPOU)
ProfId2UA=Prof Id 2 (DRFO)
ProfId3UA=Prof Id 3 (INN)
diff --git a/htdocs/margin/checkMargins.php b/htdocs/margin/checkMargins.php
index 5cdee16619b..f913582de28 100644
--- a/htdocs/margin/checkMargins.php
+++ b/htdocs/margin/checkMargins.php
@@ -64,6 +64,8 @@ $enddate = dol_mktime(23, 59, 59, GETPOSTINT('enddatemonth'), GETPOSTINT('enddat
$search_ref = GETPOST('search_ref', 'alpha');
+$hookmanager->initHooks(array('checkmarginlist'));
+
// Security check
$result = restrictedArea($user, 'margins');
diff --git a/htdocs/projet/ganttchart.inc.php b/htdocs/projet/ganttchart.inc.php
index 40d6bc3ebdf..bc55ffd671c 100644
--- a/htdocs/projet/ganttchart.inc.php
+++ b/htdocs/projet/ganttchart.inc.php
@@ -204,7 +204,7 @@ function constructGanttLine($tarr, $task, $task_dependencies, $level = 0, $proje
//$parent = $task["task_parent"];
}
// Define percent
- $percent = $task['task_percent_complete'] ? $task['task_percent_complete'] : 0;
+ $percent = empty($task['task_percent_complete']) ? 0 : $task['task_percent_complete'];
// Link (more information)
if ($task["task_id"] < 0) {
//$link=DOL_URL_ROOT.'/projet/tasks.php?withproject=1&id='.abs($task["task_id"]);
@@ -264,9 +264,9 @@ function constructGanttLine($tarr, $task, $task_dependencies, $level = 0, $proje
$taskid = $task["task_alternate_id"];
//$taskid = $task['task_id'];
- $note = $task['note'];
+ $note = empty($task['note']) ? '' : $task['note'];
- $note = dol_concatdesc($note, $langs->trans("Workload").' : '.($task['task_planned_workload'] ? convertSecondToTime($task['task_planned_workload'], 'allhourmin') : ''));
+ $note = dol_concatdesc($note, $langs->trans("Workload").' : '.(empty($task['task_planned_workload']) ? '' : convertSecondToTime($task['task_planned_workload'], 'allhourmin')));
$s .= "g.AddTaskItem(new JSGantt.TaskItem('".$taskid."', '".dol_escape_js(trim($name))."', '".$start_date."', '".$end_date."', '".$css."', '".$link."', ".$task['task_milestone'].", '".dol_escape_js($resources)."', ".($percent >= 0 ? $percent : 0).", ".$line_is_auto_group.", '".$parent."', 1, '".$dependency."', '".(empty($task["task_is_group"]) ? (($percent >= 0 && $percent != '') ? $percent.'%' : '') : '')."', '".dol_escape_js($note)."', g));";
echo $s;
diff --git a/htdocs/projet/ganttview.php b/htdocs/projet/ganttview.php
index 1ea9da66f38..b88e9a899f7 100644
--- a/htdocs/projet/ganttview.php
+++ b/htdocs/projet/ganttview.php
@@ -356,7 +356,7 @@ if (count($tasksarray) > 0) {
//if ($s) $tasks[$taskcursor]['task_resources']=implode(',',$idofusers);
$tasks[$taskcursor]['task_resources'] = $s;
if ($s) {
- $tasks[$taskcursor]['task_resources'] = ''.$langs->trans("List").'';
+ $tasks[$taskcursor]['task_resources'] = ''.$langs->trans("Contacts").'';
}
//print "xxx".$val->id.$tasks[$taskcursor]['task_resources'];
$tasks[$taskcursor]['note'] = $task->note_public;
diff --git a/htdocs/projet/tasks/contact.php b/htdocs/projet/tasks/contact.php
index f8cc28e05a2..015c70a72e2 100644
--- a/htdocs/projet/tasks/contact.php
+++ b/htdocs/projet/tasks/contact.php
@@ -413,7 +413,7 @@ if ($id > 0 || !empty($ref)) {
print '';
$formcompany->selectTypeContact($object, '', 'type', 'internal', 'position');
print ' | ';
- print ' | ';
+ print ' | ';
print ' |
';
// Line to add an external contact. Only if project linked to a third party.
@@ -438,7 +438,7 @@ if ($id > 0 || !empty($ref)) {
print '