Commit 4b68c25ef5d4401732b9130e1ec5e55073e27aee

Authored by kevin_fourie
1 parent 1c61df70

KTS-2076

"Character encoding issue with document titles"
Fixed this issue which lead to several other XSS issue fixes and i18n issue fixes.
Note: knowlegetree.pot needs an update due to i18n fixes.

Committed By: Kevin
Reviewed By: Conrad



git-svn-id: https://kt-dms.svn.sourceforge.net/svnroot/kt-dms/STABLE/trunk@6738 c91229c3-7414-0410-bfa2-8a42b809f60b
Showing 75 changed files with 174 additions and 164 deletions
i18n/knowledgeTree.pot
@@ -1850,7 +1850,7 @@ msgid "Control which users can log in, and are part of which groups and organisa @@ -1850,7 +1850,7 @@ msgid "Control which users can log in, and are part of which groups and organisa
1850 msgstr "" 1850 msgstr ""
1851 1851
1852 #: i18n/templates.c:3494 i18n/templates.c:3608 1852 #: i18n/templates.c:3494 i18n/templates.c:3608
1853 -msgid "Controlled Actions available:" 1853 +msgid "Controlled Actions available"
1854 msgstr "" 1854 msgstr ""
1855 1855
1856 #: plugins/ktcore/admin/workflowsv2.php:1022 i18n/templates.c:3314 1856 #: plugins/ktcore/admin/workflowsv2.php:1022 i18n/templates.c:3314
@@ -2285,7 +2285,7 @@ msgid "Dashboard" @@ -2285,7 +2285,7 @@ msgid "Dashboard"
2285 msgstr "" 2285 msgstr ""
2286 2286
2287 #: lib/validation/errorviewer.inc.php:130 2287 #: lib/validation/errorviewer.inc.php:130
2288 -msgid "Database error:" 2288 +msgid "Database error"
2289 msgstr "" 2289 msgstr ""
2290 2290
2291 #: i18n/templates.c:146 i18n/templates.c:155 i18n/templates.c:242 2291 #: i18n/templates.c:146 i18n/templates.c:155 i18n/templates.c:242
@@ -4131,7 +4131,7 @@ msgstr "" @@ -4131,7 +4131,7 @@ msgstr ""
4131 4131
4132 #: i18n/templates.c:3326 i18n/templates.c:4043 i18n/templates.c:4415 4132 #: i18n/templates.c:3326 i18n/templates.c:4043 i18n/templates.c:4415
4133 #: i18n/templates.c:4922 4133 #: i18n/templates.c:4922
4134 -msgid "Group:" 4134 +msgid "Group"
4135 msgstr "" 4135 msgstr ""
4136 4136
4137 #: plugins/ktcore/admin/groupManagement.php:398 4137 #: plugins/ktcore/admin/groupManagement.php:398
@@ -4159,7 +4159,7 @@ msgstr "" @@ -4159,7 +4159,7 @@ msgstr ""
4159 4159
4160 #: plugins/ktcore/admin/workflowsv2.php:1915 i18n/templates.c:4127 4160 #: plugins/ktcore/admin/workflowsv2.php:1915 i18n/templates.c:4127
4161 #: i18n/templates.c:4586 4161 #: i18n/templates.c:4586
4162 -msgid "Groups:" 4162 +msgid "Groups"
4163 msgstr "" 4163 msgstr ""
4164 4164
4165 #: plugins/ktcore/admin/workflowsv2.php:1418 4165 #: plugins/ktcore/admin/workflowsv2.php:1418
@@ -5154,7 +5154,7 @@ msgid "Master field has no values which are assigned to behaviours." @@ -5154,7 +5154,7 @@ msgid "Master field has no values which are assigned to behaviours."
5154 msgstr "" 5154 msgstr ""
5155 5155
5156 #: i18n/templates.c:1331 5156 #: i18n/templates.c:1331
5157 -msgid "Match <b>#join#</b> of the following:" 5157 +msgid "Match <b>#join#</b> of the following"
5158 msgstr "" 5158 msgstr ""
5159 5159
5160 #: plugins/ktcore/admin/userManagement.php:138 5160 #: plugins/ktcore/admin/userManagement.php:138
@@ -6044,7 +6044,7 @@ msgid &quot;Notifications updated.&quot; @@ -6044,7 +6044,7 @@ msgid &quot;Notifications updated.&quot;
6044 msgstr "" 6044 msgstr ""
6045 6045
6046 #: i18n/templates.c:3491 i18n/templates.c:3605 6046 #: i18n/templates.c:3491 i18n/templates.c:3605
6047 -msgid "Notified groups & roles:" 6047 +msgid "Notified groups & roles"
6048 msgstr "" 6048 msgstr ""
6049 6049
6050 #: i18n/templates.c:5231 6050 #: i18n/templates.c:5231
@@ -6126,7 +6126,7 @@ msgid &quot;Orphaned Folders Plugin&quot; @@ -6126,7 +6126,7 @@ msgid &quot;Orphaned Folders Plugin&quot;
6126 msgstr "" 6126 msgstr ""
6127 6127
6128 #: i18n/templates.c:2081 6128 #: i18n/templates.c:2081
6129 -msgid "Over time, the lookup values which make sense will change and evolve as your organisation does. You may thus need to change the lookup values associated with a given field. There are a number of different states that are possible for a given lookup:" 6129 +msgid "Over time, the lookup values which make sense will change and evolve as your organisation does. You may thus need to change the lookup values associated with a given field. There are a number of different states that are possible for a given lookup"
6130 msgstr "" 6130 msgstr ""
6131 6131
6132 #: i18n/templates.c:4130 6132 #: i18n/templates.c:4130
@@ -6255,7 +6255,7 @@ msgid &quot;Permissions on folder updated&quot; @@ -6255,7 +6255,7 @@ msgid &quot;Permissions on folder updated&quot;
6255 msgstr "" 6255 msgstr ""
6256 6256
6257 #: i18n/templates.c:3497 i18n/templates.c:3611 6257 #: i18n/templates.c:3497 i18n/templates.c:3611
6258 -msgid "Permissions overridden:" 6258 +msgid "Permissions overridden"
6259 msgstr "" 6259 msgstr ""
6260 6260
6261 #: plugins/ktcore/folder/Permissions.php:487 6261 #: plugins/ktcore/folder/Permissions.php:487
@@ -6926,7 +6926,7 @@ msgstr &quot;&quot; @@ -6926,7 +6926,7 @@ msgstr &quot;&quot;
6926 6926
6927 #: i18n/templates.c:3323 i18n/templates.c:4034 i18n/templates.c:4406 6927 #: i18n/templates.c:3323 i18n/templates.c:4034 i18n/templates.c:4406
6928 #: i18n/templates.c:4913 6928 #: i18n/templates.c:4913
6929 -msgid "Role:" 6929 +msgid "Role"
6930 msgstr "" 6930 msgstr ""
6931 6931
6932 #: plugins/ktcore/KTCorePlugin.php:218 i18n/templates.c:3230 6932 #: plugins/ktcore/KTCorePlugin.php:218 i18n/templates.c:3230
@@ -6935,7 +6935,7 @@ msgid &quot;Roles&quot; @@ -6935,7 +6935,7 @@ msgid &quot;Roles&quot;
6935 msgstr "" 6935 msgstr ""
6936 6936
6937 #: plugins/ktcore/admin/workflowsv2.php:1921 6937 #: plugins/ktcore/admin/workflowsv2.php:1921
6938 -msgid "Roles:" 6938 +msgid "Roles"
6939 msgstr "" 6939 msgstr ""
6940 6940
6941 #: plugins/ktcore/admin/fieldsets/basic.inc.php:707 6941 #: plugins/ktcore/admin/fieldsets/basic.inc.php:707
@@ -7650,7 +7650,7 @@ msgid &quot;The action cannot be performed on any of the selected entities.&quot; @@ -7650,7 +7650,7 @@ msgid &quot;The action cannot be performed on any of the selected entities.&quot;
7650 msgstr "" 7650 msgstr ""
7651 7651
7652 #: i18n/templates.c:5729 7652 #: i18n/templates.c:5729
7653 -msgid "The action will be performed on the following documents and folders:" 7653 +msgid "The action will be performed on the following documents and folders"
7654 msgstr "" 7654 msgstr ""
7655 7655
7656 #: plugins/ktcore/folder/BulkUpload.php:68 7656 #: plugins/ktcore/folder/BulkUpload.php:68
@@ -7682,7 +7682,7 @@ msgid &quot;The core of a workflow is the &lt;strong&gt;process&lt;/strong&gt; that documents in @@ -7682,7 +7682,7 @@ msgid &quot;The core of a workflow is the &lt;strong&gt;process&lt;/strong&gt; that documents in
7682 msgstr "" 7682 msgstr ""
7683 7683
7684 #: plugins/ktcore/document/Rename.php:74 7684 #: plugins/ktcore/document/Rename.php:74
7685 -msgid "The current file name is shown below:" 7685 +msgid "The current file name is shown below"
7686 msgstr "" 7686 msgstr ""
7687 7687
7688 #: i18n/templates.c:974 7688 #: i18n/templates.c:974
@@ -7807,7 +7807,7 @@ msgid &quot;The following files are present in the repository, but do not exist in th @@ -7807,7 +7807,7 @@ msgid &quot;The following files are present in the repository, but do not exist in th
7807 msgstr "" 7807 msgstr ""
7808 7808
7809 #: i18n/templates.c:5708 7809 #: i18n/templates.c:5708
7810 -msgid "The following list shows documents and folders in your list which cannot be acted on by this bulk action:" 7810 +msgid "The following list shows documents and folders in your list which cannot be acted on by this bulk action"
7811 msgstr "" 7811 msgstr ""
7812 7812
7813 #: plugins/ktcore/admin/fieldsets/basic.inc.php:377 7813 #: plugins/ktcore/admin/fieldsets/basic.inc.php:377
@@ -7821,11 +7821,11 @@ msgid &quot;The following permissions are required: %s&quot; @@ -7821,11 +7821,11 @@ msgid &quot;The following permissions are required: %s&quot;
7821 msgstr "" 7821 msgstr ""
7822 7822
7823 #: i18n/templates.c:1010 7823 #: i18n/templates.c:1010
7824 -msgid "The following upgrade is available:" 7824 +msgid "The following upgrade is available"
7825 msgstr "" 7825 msgstr ""
7826 7826
7827 #: i18n/templates.c:1013 7827 #: i18n/templates.c:1013
7828 -msgid "The following upgrades are available:" 7828 +msgid "The following upgrades are available"
7829 msgstr "" 7829 msgstr ""
7830 7830
7831 #: plugins/ktcore/admin/userManagement.php:131 7831 #: plugins/ktcore/admin/userManagement.php:131
@@ -8037,7 +8037,7 @@ msgid &quot;There are #closed# closed threads - use the \&quot;View All\&quot; option below to @@ -8037,7 +8037,7 @@ msgid &quot;There are #closed# closed threads - use the \&quot;View All\&quot; option below to
8037 msgstr "" 8037 msgstr ""
8038 8038
8039 #: i18n/templates.c:3962 8039 #: i18n/templates.c:3962
8040 -msgid "There are 3 different ways in which workflows interact with the system's security:" 8040 +msgid "There are 3 different ways in which workflows interact with the system's security"
8041 msgstr "" 8041 msgstr ""
8042 8042
8043 #: i18n/templates.c:3086 8043 #: i18n/templates.c:3086
@@ -8136,7 +8136,7 @@ msgid &quot;There was an error updating the thread with the new comment&quot; @@ -8136,7 +8136,7 @@ msgid &quot;There was an error updating the thread with the new comment&quot;
8136 msgstr "" 8136 msgstr ""
8137 8137
8138 #: i18n/templates.c:5687 8138 #: i18n/templates.c:5687
8139 -msgid "These are the results of the bulk action:" 8139 +msgid "These are the results of the bulk action"
8140 msgstr "" 8140 msgstr ""
8141 8141
8142 #: i18n/templates.c:1613 8142 #: i18n/templates.c:1613
@@ -8418,11 +8418,11 @@ msgid &quot;To add users to this role, select one or more user names in the Available @@ -8418,11 +8418,11 @@ msgid &quot;To add users to this role, select one or more user names in the Available
8418 msgstr "" 8418 msgstr ""
8419 8419
8420 #: i18n/templates.c:704 8420 #: i18n/templates.c:704
8421 -msgid "To connect to #appname# via a third-party WebDAV client, please use the following address:" 8421 +msgid "To connect to #appname# via a third-party WebDAV client, please use the following address"
8422 msgstr "" 8422 msgstr ""
8423 8423
8424 #: i18n/templates.c:707 8424 #: i18n/templates.c:707
8425 -msgid "To connect with the #appname# Tools for Windows package, use this address:" 8425 +msgid "To connect with the #appname# Tools for Windows package, use this address"
8426 msgstr "" 8426 msgstr ""
8427 8427
8428 #: i18n/templates.c:5504 8428 #: i18n/templates.c:5504
@@ -8583,7 +8583,7 @@ msgid &quot;Transitions are what drive the workflow of documents. Each step that need @@ -8583,7 +8583,7 @@ msgid &quot;Transitions are what drive the workflow of documents. Each step that need
8583 msgstr "" 8583 msgstr ""
8584 8584
8585 #: i18n/templates.c:3500 i18n/templates.c:3614 8585 #: i18n/templates.c:3500 i18n/templates.c:3614
8586 -msgid "Transitions available:" 8586 +msgid "Transitions available"
8587 msgstr "" 8587 msgstr ""
8588 8588
8589 #: i18n/templates.c:3296 8589 #: i18n/templates.c:3296
@@ -8595,7 +8595,7 @@ msgid &quot;Transitions to this state&quot; @@ -8595,7 +8595,7 @@ msgid &quot;Transitions to this state&quot;
8595 msgstr "" 8595 msgstr ""
8596 8596
8597 #: i18n/templates.c:3503 i18n/templates.c:3617 8597 #: i18n/templates.c:3503 i18n/templates.c:3617
8598 -msgid "Transitions to this state:" 8598 +msgid "Transitions to this state"
8599 msgstr "" 8599 msgstr ""
8600 8600
8601 #: lib/documentmanagement/DocumentField.inc:168 8601 #: lib/documentmanagement/DocumentField.inc:168
@@ -9252,7 +9252,7 @@ msgstr &quot;&quot; @@ -9252,7 +9252,7 @@ msgstr &quot;&quot;
9252 9252
9253 #: i18n/templates.c:4052 i18n/templates.c:4355 i18n/templates.c:4424 9253 #: i18n/templates.c:4052 i18n/templates.c:4355 i18n/templates.c:4424
9254 #: i18n/templates.c:4886 i18n/templates.c:4931 9254 #: i18n/templates.c:4886 i18n/templates.c:4931
9255 -msgid "User:" 9255 +msgid "User"
9256 msgstr "" 9256 msgstr ""
9257 9257
9258 #: i18n/templates.c:443 9258 #: i18n/templates.c:443
@@ -9311,7 +9311,7 @@ msgstr &quot;&quot; @@ -9311,7 +9311,7 @@ msgstr &quot;&quot;
9311 9311
9312 #: plugins/ktcore/admin/workflowsv2.php:1909 i18n/templates.c:4124 9312 #: plugins/ktcore/admin/workflowsv2.php:1909 i18n/templates.c:4124
9313 #: i18n/templates.c:4583 9313 #: i18n/templates.c:4583
9314 -msgid "Users:" 9314 +msgid "Users"
9315 msgstr "" 9315 msgstr ""
9316 9316
9317 #: lib/documentmanagement/documentutil.inc.php:983 9317 #: lib/documentmanagement/documentutil.inc.php:983
@@ -9452,7 +9452,7 @@ msgid &quot;Want to know who all has logged in the system over a period of time? You @@ -9452,7 +9452,7 @@ msgid &quot;Want to know who all has logged in the system over a period of time? You
9452 msgstr "" 9452 msgstr ""
9453 9453
9454 #: i18n/templates.c:3083 i18n/templates.c:4100 9454 #: i18n/templates.c:3083 i18n/templates.c:4100
9455 -msgid "Warning:" 9455 +msgid "Warning"
9456 msgstr "" 9456 msgstr ""
9457 9457
9458 #: i18n/templates.c:4838 9458 #: i18n/templates.c:4838
lib/documentmanagement/DocumentFieldLink.inc
@@ -121,7 +121,7 @@ class DocumentFieldLink extends KTEntity { @@ -121,7 +121,7 @@ class DocumentFieldLink extends KTEntity {
121 * 121 *
122 */ 122 */
123 function getValue() { 123 function getValue() {
124 - return $this->sValue; 124 + return sanitizeForHTML($this->sValue);
125 } 125 }
126 126
127 /** 127 /**
@@ -131,7 +131,7 @@ class DocumentFieldLink extends KTEntity { @@ -131,7 +131,7 @@ class DocumentFieldLink extends KTEntity {
131 * 131 *
132 */ 132 */
133 function setValue($sNewValue) { 133 function setValue($sNewValue) {
134 - $this->sValue = $sNewValue; 134 + $this->sValue = sanitizeForSQL($sNewValue);
135 } 135 }
136 136
137 function _table () { 137 function _table () {
lib/documentmanagement/documentmetadataversion.inc.php
@@ -97,8 +97,8 @@ class KTDocumentMetadataVersion extends KTEntity { @@ -97,8 +97,8 @@ class KTDocumentMetadataVersion extends KTEntity {
97 function setDocumentTypeId($iNewValue) { $this->iDocumentTypeId = $iNewValue; } 97 function setDocumentTypeId($iNewValue) { $this->iDocumentTypeId = $iNewValue; }
98 function getName() { return sanitizeForSQLtoHTML($this->sName); } 98 function getName() { return sanitizeForSQLtoHTML($this->sName); }
99 function setName($sNewValue) { $this->sName = sanitizeForSQL($sNewValue); } 99 function setName($sNewValue) { $this->sName = sanitizeForSQL($sNewValue); }
100 - function getDescription() { return $this->sDescription; }  
101 - function setDescription($sNewValue) { $this->sDescription = $sNewValue; } 100 + function getDescription() { return sanitizeForSQLtoHTML($this->sDescription); }
  101 + function setDescription($sNewValue) { $this->sDescription = sanitizeForSQL($sNewValue); }
102 function getStatusId() { return $this->iStatusId; } 102 function getStatusId() { return $this->iStatusId; }
103 function setStatusId($iNewValue) { $this->iStatusId = $iNewValue; } 103 function setStatusId($iNewValue) { $this->iStatusId = $iNewValue; }
104 function getVersionCreated() { return $this->dVersionCreated; } 104 function getVersionCreated() { return $this->dVersionCreated; }
lib/foldermanagement/Folder.inc
@@ -75,10 +75,10 @@ class Folder extends KTEntity { @@ -75,10 +75,10 @@ class Folder extends KTEntity {
75 // }}} 75 // }}}
76 76
77 function getID() { return $this->iId; } 77 function getID() { return $this->iId; }
78 - function getName() { return $this->sName; }  
79 - function setName($sNewValue) { $this->sName = $sNewValue; }  
80 - function getDescription() { return $this->sDescription; }  
81 - function setDescription($sNewValue) { $this->sDescription = $sNewValue; } 78 + function getName() { return sanitizeForSQLtoHTML($this->sName); }
  79 + function setName($sNewValue) { $this->sName = sanitizeForSQL($sNewValue); }
  80 + function getDescription() { return sanitizeForSQLtoHTML($this->sDescription); }
  81 + function setDescription($sNewValue) { $this->sDescription = sanitizeForSQL($sNewValue); }
82 function getParentID() { return $this->iParentID; } 82 function getParentID() { return $this->iParentID; }
83 function setParentID($iNewValue) { $this->iParentID = $iNewValue; } 83 function setParentID($iNewValue) { $this->iParentID = $iNewValue; }
84 function getCreatorID() { return $this->iCreatorID; } 84 function getCreatorID() { return $this->iCreatorID; }
lib/validation/errorviewer.inc.php
@@ -132,7 +132,7 @@ $oEVRegistry-&gt;register(&quot;KTErrorViewer&quot;, &quot;PEAR_Error&quot;); @@ -132,7 +132,7 @@ $oEVRegistry-&gt;register(&quot;KTErrorViewer&quot;, &quot;PEAR_Error&quot;);
132 132
133 class KTDBErrorViewer extends KTErrorViewer { 133 class KTDBErrorViewer extends KTErrorViewer {
134 function view() { 134 function view() {
135 - return _kt("Database error:") . " " . $this->oError->getMessage(); 135 + return _kt("Database error") . ": " . $this->oError->getMessage();
136 } 136 }
137 137
138 function page() { 138 function page() {
plugins/ktcore/KTColumns.inc.php
@@ -72,7 +72,15 @@ class AdvancedTitleColumn extends AdvancedColumn { @@ -72,7 +72,15 @@ class AdvancedTitleColumn extends AdvancedColumn {
72 72
73 73
74 function renderFolderLink($aDataRow) { 74 function renderFolderLink($aDataRow) {
75 - $outStr = htmlentities($aDataRow["folder"]->getName(), ENT_NOQUOTES, 'UTF-8'); 75 + /* this check has to be done so that any titles longer than 40 characters is not displayed incorrectly.
  76 + as mozilla cannot wrap text without white spaces */
  77 + if (mb_strlen($aDataRow["folder"]->getName(), 'UTF-8') > 40) {
  78 + mb_internal_encoding("UTF-8");
  79 + $outStr = htmlentities(mb_substr($aDataRow["folder"]->getName(), 0, 40, 'UTF-8')."...", ENT_NOQUOTES, 'UTF-8');
  80 + }else{
  81 + $outStr = htmlentities($aDataRow["folder"]->getName(), ENT_NOQUOTES, 'UTF-8');
  82 + }
  83 +
76 if($this->link_folders) { 84 if($this->link_folders) {
77 $outStr = '<a href="' . $this->buildFolderLink($aDataRow) . '">' . $outStr . '</a>'; 85 $outStr = '<a href="' . $this->buildFolderLink($aDataRow) . '">' . $outStr . '</a>';
78 } 86 }
@@ -80,7 +88,7 @@ class AdvancedTitleColumn extends AdvancedColumn { @@ -80,7 +88,7 @@ class AdvancedTitleColumn extends AdvancedColumn {
80 } 88 }
81 89
82 function renderDocumentLink($aDataRow) { 90 function renderDocumentLink($aDataRow) {
83 - /* this chack has to be done so that any titles longer than 40 characters is not displayed incorrectly. 91 + /* this check has to be done so that any titles longer than 40 characters is not displayed incorrectly.
84 as mozilla cannot wrap text without white spaces */ 92 as mozilla cannot wrap text without white spaces */
85 if (mb_strlen($aDataRow["document"]->getName(), 'UTF-8') > 40) { 93 if (mb_strlen($aDataRow["document"]->getName(), 'UTF-8') > 40) {
86 mb_internal_encoding("UTF-8"); 94 mb_internal_encoding("UTF-8");
plugins/ktcore/KTDocumentActions.php
@@ -824,13 +824,13 @@ class KTDocumentMoveAction extends KTDocumentAction { @@ -824,13 +824,13 @@ class KTDocumentMoveAction extends KTDocumentAction {
824 824
825 function do_main() { 825 function do_main() {
826 $oForm = $this->form_move(); 826 $oForm = $this->form_move();
827 - return $oForm->renderPage(); 827 + return $oForm->renderPage(_kt('Move Document') . ': ' . $this->oDocument->getName());
828 } 828 }
829 829
830 function form_move() { 830 function form_move() {
831 $oForm = new KTForm; 831 $oForm = new KTForm;
832 $oForm->setOptions(array( 832 $oForm->setOptions(array(
833 - 'label' => sprintf(_kt('Move Document "%s"'), $this->oDocument->getName()), 833 + 'label' => _kt('Move Document'),
834 'submit_label' => _kt('Move'), 834 'submit_label' => _kt('Move'),
835 'identifier' => 'ktcore.actions.movedoc', 835 'identifier' => 'ktcore.actions.movedoc',
836 'action' => 'move', 836 'action' => 'move',
@@ -1031,7 +1031,7 @@ class KTDocumentCopyAction extends KTDocumentAction { @@ -1031,7 +1031,7 @@ class KTDocumentCopyAction extends KTDocumentAction {
1031 function form_copyselection() { 1031 function form_copyselection() {
1032 $oForm = new KTForm; 1032 $oForm = new KTForm;
1033 $oForm->setOptions(array( 1033 $oForm->setOptions(array(
1034 - 'label' => sprintf(_kt('Copy Document "%s"'), $this->oDocument->getName()), 1034 + 'label' => _kt('Copy Document'),
1035 'submit_label' => _kt('Copy'), 1035 'submit_label' => _kt('Copy'),
1036 'identifier' => 'ktcore.actions.copydoc', 1036 'identifier' => 'ktcore.actions.copydoc',
1037 'action' => 'copy', 1037 'action' => 'copy',
@@ -1118,7 +1118,7 @@ class KTDocumentCopyAction extends KTDocumentAction { @@ -1118,7 +1118,7 @@ class KTDocumentCopyAction extends KTDocumentAction {
1118 function do_main() { 1118 function do_main() {
1119 $this->oPage->setBreadcrumbDetails(_kt('Copy')); 1119 $this->oPage->setBreadcrumbDetails(_kt('Copy'));
1120 $oForm = $this->form_copyselection(); 1120 $oForm = $this->form_copyselection();
1121 - return $oForm->renderPage(); 1121 + return $oForm->renderPage(_kt('Copy Document') . ': ' . $this->oDocument->getName());
1122 } 1122 }
1123 1123
1124 function do_copy() { 1124 function do_copy() {
@@ -1540,7 +1540,6 @@ class KTOwnershipChangeAction extends KTDocumentAction { @@ -1540,7 +1540,6 @@ class KTOwnershipChangeAction extends KTDocumentAction {
1540 1540
1541 $oTemplate->setData(array( 1541 $oTemplate->setData(array(
1542 'context' => $this, 1542 'context' => $this,
1543 - 'docname' => $this->oDocument->getName(),  
1544 'form' => $change_form, 1543 'form' => $change_form,
1545 )); 1544 ));
1546 return $oTemplate->render(); 1545 return $oTemplate->render();
plugins/ktcore/KTFolderActions.php
@@ -109,7 +109,6 @@ class KTFolderAddFolderAction extends KTFolderAction { @@ -109,7 +109,6 @@ class KTFolderAddFolderAction extends KTFolderAction {
109 109
110 $oForm = $this->form_main(); 110 $oForm = $this->form_main();
111 111
112 -  
113 $oTemplate->setData(array( 112 $oTemplate->setData(array(
114 'context' => &$this, 113 'context' => &$this,
115 'form' => $oForm, 114 'form' => $oForm,
plugins/ktcore/KTPermissions.php
@@ -388,7 +388,6 @@ class KTRoleAllocationPlugin extends KTFolderAction { @@ -388,7 +388,6 @@ class KTRoleAllocationPlugin extends KTFolderAction {
388 $aTemplateData = array( 388 $aTemplateData = array(
389 'context' => &$this, 389 'context' => &$this,
390 'roles' => $aRoles, 390 'roles' => $aRoles,
391 - 'foldername' => $this->oFolder->getName(),  
392 'is_root' => ($this->oFolder->getId() == 1), 391 'is_root' => ($this->oFolder->getId() == 1),
393 ); 392 );
394 return $oTemplate->render($aTemplateData); 393 return $oTemplate->render($aTemplateData);
plugins/ktcore/admin/workflowsv2.php
@@ -2127,19 +2127,19 @@ class KTWorkflowAdminV2 extends KTAdminDispatcher { @@ -2127,19 +2127,19 @@ class KTWorkflowAdminV2 extends KTAdminDispatcher {
2127 2127
2128 $sNotify = ''; 2128 $sNotify = '';
2129 if (!empty($aUsers)) { 2129 if (!empty($aUsers)) {
2130 - $sNotify .= '<em>' . _kt('Users:') . '</em> '; 2130 + $sNotify .= '<em>' . _kt('Users') . ':</em> ';
2131 $sNotify .= implode(', ', $aUsers); 2131 $sNotify .= implode(', ', $aUsers);
2132 } 2132 }
2133 2133
2134 if (!empty($aGroups)) { 2134 if (!empty($aGroups)) {
2135 if (!empty($sNotify)) { $sNotify .= ' &mdash; '; } 2135 if (!empty($sNotify)) { $sNotify .= ' &mdash; '; }
2136 - $sNotify .= '<em>' . _kt('Groups:') . '</em> '; 2136 + $sNotify .= '<em>' . _kt('Groups') . ':</em> ';
2137 $sNotify .= implode(', ', $aGroups); 2137 $sNotify .= implode(', ', $aGroups);
2138 } 2138 }
2139 2139
2140 if (!empty($aRoles)) { 2140 if (!empty($aRoles)) {
2141 if (!empty($sNotify)) { $sNotify .= ' &mdash; '; } 2141 if (!empty($sNotify)) { $sNotify .= ' &mdash; '; }
2142 - $sNotify .= '<em>' . _kt('Roles:') . '</em> '; 2142 + $sNotify .= '<em>' . _kt('Roles') . ':</em> ';
2143 $sNotify .= implode(', ', $aRoles); 2143 $sNotify .= implode(', ', $aRoles);
2144 } 2144 }
2145 2145
plugins/ktcore/document/edit.php
@@ -100,7 +100,7 @@ class KTDocumentEditAction extends KTDocumentAction { @@ -100,7 +100,7 @@ class KTDocumentEditAction extends KTDocumentAction {
100 )), 100 )),
101 ); 101 );
102 $validators = array( 102 $validators = array(
103 - array('ktcore.validators.string',array( 103 + array('ktcore.validators.string', array(
104 'test' => 'document_title', 104 'test' => 'document_title',
105 'output' => 'document_title', 105 'output' => 'document_title',
106 )), 106 )),
plugins/ktcore/folder/BulkImport.php
@@ -87,7 +87,6 @@ class KTBulkImportFolderAction extends KTFolderAction { @@ -87,7 +87,6 @@ class KTBulkImportFolderAction extends KTFolderAction {
87 'context' => &$this, 87 'context' => &$this,
88 'add_fields' => $add_fields, 88 'add_fields' => $add_fields,
89 'generic_fieldsets' => $fieldsets, 89 'generic_fieldsets' => $fieldsets,
90 - 'foldername' => $this->oFolder->getName(),  
91 )); 90 ));
92 return $oTemplate->render(); 91 return $oTemplate->render();
93 } 92 }
plugins/ktcore/folder/BulkUpload.php
@@ -93,7 +93,6 @@ class KTBulkUploadFolderAction extends KTFolderAction { @@ -93,7 +93,6 @@ class KTBulkUploadFolderAction extends KTFolderAction {
93 'context' => &$this, 93 'context' => &$this,
94 'add_fields' => $add_fields, 94 'add_fields' => $add_fields,
95 'generic_fieldsets' => $fieldsets, 95 'generic_fieldsets' => $fieldsets,
96 - 'foldername' => $this->oFolder->getName(),  
97 )); 96 ));
98 return $oTemplate->render(); 97 return $oTemplate->render();
99 } 98 }
plugins/ktcore/folder/Permissions.php
@@ -177,7 +177,6 @@ class KTFolderPermissionsAction extends KTFolderAction { @@ -177,7 +177,6 @@ class KTFolderPermissionsAction extends KTFolderAction {
177 'edit' => $bEdit, 177 'edit' => $bEdit,
178 'inheritable' => $bInheritable, 178 'inheritable' => $bInheritable,
179 'inherited' => $sInherited, 179 'inherited' => $sInherited,
180 - 'foldername' => $this->oFolder->getName(),  
181 'conditions' => $aConditions, 180 'conditions' => $aConditions,
182 ); 181 );
183 return $oTemplate->render($aTemplateData); 182 return $oTemplate->render($aTemplateData);
@@ -411,14 +410,14 @@ class KTFolderPermissionsAction extends KTFolderAction { @@ -411,14 +410,14 @@ class KTFolderPermissionsAction extends KTFolderAction {
411 if($bSelected) { 410 if($bSelected) {
412 if(count($aPerm)) 411 if(count($aPerm))
413 $aEntityList['g'.$oGroup->getId()] = array('type' => 'group', 412 $aEntityList['g'.$oGroup->getId()] = array('type' => 'group',
414 - 'display' => _kt('Group:') . ' ' . $oGroup->getName(), 413 + 'display' => _kt('Group') . ': ' . $oGroup->getName(),
415 'name' => $oGroup->getName(), 414 'name' => $oGroup->getName(),
416 'permissions' => $aPerm, 415 'permissions' => $aPerm,
417 'id' => $oGroup->getId(), 416 'id' => $oGroup->getId(),
418 'selected' => true); 417 'selected' => true);
419 } else { 418 } else {
420 $aEntityList['g'.$oGroup->getId()] = array('type' => 'group', 419 $aEntityList['g'.$oGroup->getId()] = array('type' => 'group',
421 - 'display' => _kt('Group:') . ' ' . $oGroup->getName(), 420 + 'display' => _kt('Group') . ': ' . $oGroup->getName(),
422 'name' => $oGroup->getName(), 421 'name' => $oGroup->getName(),
423 'permissions' => $aPerm, 422 'permissions' => $aPerm,
424 'id' => $oGroup->getId()); 423 'id' => $oGroup->getId());
@@ -435,14 +434,14 @@ class KTFolderPermissionsAction extends KTFolderAction { @@ -435,14 +434,14 @@ class KTFolderPermissionsAction extends KTFolderAction {
435 if($bSelected) { 434 if($bSelected) {
436 if(count($aPerm)) 435 if(count($aPerm))
437 $aEntityList['r'.$oRole->getId()] = array('type' => 'role', 436 $aEntityList['r'.$oRole->getId()] = array('type' => 'role',
438 - 'display' => _kt('Role:') . ' ' . $oRole->getName(), 437 + 'display' => _kt('Role') . ': ' . $oRole->getName(),
439 'name' => $oRole->getName(), 438 'name' => $oRole->getName(),
440 'permissions' => $aPerm, 439 'permissions' => $aPerm,
441 'id' => $oRole->getId(), 440 'id' => $oRole->getId(),
442 'selected' => true); 441 'selected' => true);
443 } else { 442 } else {
444 $aEntityList['r'.$oRole->getId()] = array('type' => 'role', 443 $aEntityList['r'.$oRole->getId()] = array('type' => 'role',
445 - 'display' => _kt('Role:') . ' ' . $oRole->getName(), 444 + 'display' => _kt('Role') . ': ' . $oRole->getName(),
446 'name' => $oRole->getName(), 445 'name' => $oRole->getName(),
447 'permissions' => $aPerm, 446 'permissions' => $aPerm,
448 'id' => $oRole->getId()); 447 'id' => $oRole->getId());
plugins/ktcore/folder/Transactions.php
@@ -50,8 +50,6 @@ class KTFolderTransactionsAction extends KTFolderAction { @@ -50,8 +50,6 @@ class KTFolderTransactionsAction extends KTFolderAction {
50 $this->oPage->setBreadcrumbDetails(_kt("transactions")); 50 $this->oPage->setBreadcrumbDetails(_kt("transactions"));
51 $this->oPage->setTitle(_kt('Folder transactions')); 51 $this->oPage->setTitle(_kt('Folder transactions'));
52 52
53 - // $oTemplate =& $this->oValidator->validateTemplate('ktcore/folder/transactions');  
54 -  
55 $folder_data = array(); 53 $folder_data = array();
56 $folder_data["folder_id"] = $this->oFolder->getId(); 54 $folder_data["folder_id"] = $this->oFolder->getId();
57 55
plugins/ktcore/folder/addDocument.php
@@ -143,12 +143,8 @@ class KTFolderAddDocumentAction extends KTFolderAction { @@ -143,12 +143,8 @@ class KTFolderAddDocumentAction extends KTFolderAction {
143 143
144 function do_main() { 144 function do_main() {
145 $this->oPage->setBreadcrumbDetails(_kt("Add a document")); 145 $this->oPage->setBreadcrumbDetails(_kt("Add a document"));
146 - $this->oPage->setTitle(_kt('Add a document'));  
147 -  
148 - $oTemplate =& $this->oValidator->validateTemplate('ktcore/document/add');  
149 -  
150 $oForm = $this->form_initialdata(); 146 $oForm = $this->form_initialdata();
151 - return $oForm->render(); 147 + return $oForm->renderPage(_kt('Add a document to: ') . $this->oFolder->getName());
152 } 148 }
153 149
154 function do_processInitialData() { 150 function do_processInitialData() {
plugins/ktstandard/KTDocumentLinks.php
@@ -150,7 +150,6 @@ class KTDocumentLinkAction extends KTDocumentAction { @@ -150,7 +150,6 @@ class KTDocumentLinkAction extends KTDocumentAction {
150 $oReadPermission =& KTPermission::getByName('ktcore.permissions.read'); 150 $oReadPermission =& KTPermission::getByName('ktcore.permissions.read');
151 $oWritePermission =& KTPermission::getByName('ktcore.permissions.write'); 151 $oWritePermission =& KTPermission::getByName('ktcore.permissions.write');
152 152
153 -  
154 $aTemplateData = array( 153 $aTemplateData = array(
155 'context' => $this, 154 'context' => $this,
156 'links_from' => DocumentLink::getLinksFromDocument($oDocument->getId()), 155 'links_from' => DocumentLink::getLinksFromDocument($oDocument->getId()),
plugins/ktstandard/KTEmail.php
@@ -141,7 +141,7 @@ function sendEmailDocument($sDestEmailAddress, $sDestUserName, $iDocumentID, $sD @@ -141,7 +141,7 @@ function sendEmailDocument($sDestEmailAddress, $sDestUserName, $iDocumentID, $sD
141 $sMessage .= sprintf(_kt("Your colleague, %s, wishes you to view the attached document entitled '%s'."), $oSendingUser->getName(), $sDocumentName); 141 $sMessage .= sprintf(_kt("Your colleague, %s, wishes you to view the attached document entitled '%s'."), $oSendingUser->getName(), $sDocumentName);
142 $sMessage .= "\n\n"; 142 $sMessage .= "\n\n";
143 if (strlen($sComment) > 0) { 143 if (strlen($sComment) > 0) {
144 - $sMessage .= '<br><br>' . _kt('Comments:') . '<br>' . $sComment; 144 + $sMessage .= '<br><br>' . _kt('Comments') . ':<br>' . $sComment;
145 } 145 }
146 $sTitle = sprintf(_kt("Document: %s from %s"), $sDocumentName, $oSendingUser->getName()); 146 $sTitle = sprintf(_kt("Document: %s from %s"), $sDocumentName, $oSendingUser->getName());
147 147
@@ -202,7 +202,7 @@ function sendEmailHyperlink($sDestEmailAddress, $sDestUserName, $iDocumentID, $s @@ -202,7 +202,7 @@ function sendEmailHyperlink($sDestEmailAddress, $sDestUserName, $iDocumentID, $s
202 $sMessage .= '<br>' . generateControllerLink('viewDocument', "fDocumentID=$iDocumentID", $sDocumentName, true); 202 $sMessage .= '<br>' . generateControllerLink('viewDocument', "fDocumentID=$iDocumentID", $sDocumentName, true);
203 // add optional comment 203 // add optional comment
204 if (strlen($sComment) > 0) { 204 if (strlen($sComment) > 0) {
205 - $sMessage .= '<br><br>' . _kt('Comments:') . '<br>' . $sComment; 205 + $sMessage .= '<br><br>' . _kt('Comments') . ':<br>' . $sComment;
206 } 206 }
207 $sMessage .= '</font>'; 207 $sMessage .= '</font>';
208 $sTitle = sprintf(_kt("Link: %s from %s"), $sDocumentName, $oSendingUser->getName()); 208 $sTitle = sprintf(_kt("Link: %s from %s"), $sDocumentName, $oSendingUser->getName());
plugins/rssplugin/RSSFolderLinkAction.php
@@ -68,6 +68,7 @@ class RSSFolderLinkAction extends KTFolderAction { @@ -68,6 +68,7 @@ class RSSFolderLinkAction extends KTFolderAction {
68 'context' => $this, 68 'context' => $this,
69 'link' => KTrss::getRssLink($iFId, 'folder'), 69 'link' => KTrss::getRssLink($iFId, 'folder'),
70 'linkIcon' => KTrss::getImageLink($iFId, 'folder'), 70 'linkIcon' => KTrss::getImageLink($iFId, 'folder'),
  71 + 'folderName' => $this->oFolder->getName(),
71 ); 72 );
72 73
73 return $oTemplate->render($aTemplateData); 74 return $oTemplate->render($aTemplateData);
plugins/rssplugin/templates/RSSPlugin/rssdocumentaction.smarty
1 -<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>Document RSS</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}RSS for Document{/i18n}:<br />{$context->oDocument->getName()}</h2>
  2 +
2 <p> 3 <p>
3 You can copy the following link into any RSS aggregator to create a feed to the selected document. 4 You can copy the following link into any RSS aggregator to create a feed to the selected document.
4 <ul> 5 <ul>
5 <li>{$link}</li> 6 <li>{$link}</li>
6 </ul> 7 </ul>
7 -Another way of quickly accessing a RSS feed for a document of folder is by RSS icon {$linkIcon},  
8 -which you will find in your actions portlet on the left. 8 +{i18n}Another way of quickly accessing a RSS feed for a document or folder is by RSS icon {$linkIcon},
  9 +which you will find in your actions portlet on the left.{/i18n}
9 </p> 10 </p>
10 \ No newline at end of file 11 \ No newline at end of file
plugins/rssplugin/templates/RSSPlugin/rssfolderaction.smarty
1 -<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>Folder RSS</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}RSS for folder{/i18n}: {$context->oFolder->getName()}</h2>
2 <p> 2 <p>
3 You can copy the following link into any RSS aggragator to create a feed to the selected folder. 3 You can copy the following link into any RSS aggragator to create a feed to the selected folder.
4 <ul> 4 <ul>
templates/kt3/browse.smarty
@@ -13,7 +13,7 @@ @@ -13,7 +13,7 @@
13 <div class="collapsiblebody"> 13 <div class="collapsiblebody">
14 {assign var=mainjoin value=$joins.main} 14 {assign var=mainjoin value=$joins.main}
15 15
16 -<p class="descriptiveText">{i18n arg_join=$mainjoin}Match <b>#join#</b> of the following:{/i18n}</p> 16 +<p class="descriptiveText">{i18n arg_join=$mainjoin}Match <b>#join#</b> of the following{/i18n}:</p>
17 {foreach from=$params key=key item=group} 17 {foreach from=$params key=key item=group}
18 {assign var=join value=$joins[$key]} 18 {assign var=join value=$joins[$key]}
19 19
templates/kt3/document/edit.smarty
@@ -11,7 +11,7 @@ @@ -11,7 +11,7 @@
11 11
12 {$context->oPage->requireCSSResource('resources/css/kt-treewidget.css')} 12 {$context->oPage->requireCSSResource('resources/css/kt-treewidget.css')}
13 13
14 -<h2>{i18n}Editing{/i18n}: {$document->getName()}</h2> 14 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Edit Metadata{/i18n}:<br />{$context->oDocument->getName()}</h2>
15 15
16 {capture assign=link}{addQS}action=selectType&fDocumentId={$document->getId()}{/addQS}{/capture} 16 {capture assign=link}{addQS}action=selectType&fDocumentId={$document->getId()}{/addQS}{/capture}
17 <p class="descriptiveText">{i18n arg_link=$link}Change the <strong><a href="#link#">document type</a></strong>{/i18n}</p> 17 <p class="descriptiveText">{i18n arg_link=$link}Change the <strong><a href="#link#">document type</a></strong>{/i18n}</p>
templates/kt3/view_folder_history.smarty
1 -<h2>{i18n}Transaction History{/i18n}: {$folder->getName()}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Folder Transaction History{/i18n}:<br />{$folder->getName()}</h2>
2 2
3 <p class="descriptiveText">{i18n}This page provides details of all activities that have been carried out on the folder.{/i18n}</p> 3 <p class="descriptiveText">{i18n}This page provides details of all activities that have been carried out on the folder.{/i18n}</p>
4 4
templates/ktcore/action/addFolder.smarty
1 -<h2>{i18n}Add a folder{/i18n}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Add a folder to{/i18n}:<br />{$context->oFolder->getName()}</h2>
2 2
3 <p class="descriptiveText">{i18n}Folders are one way of organising documents 3 <p class="descriptiveText">{i18n}Folders are one way of organising documents
4 in the document management system. Folders provide meaning in the 4 in the document management system. Folders provide meaning in the
templates/ktcore/action/archive.smarty
1 -<h2>{i18n arg_docname=$context->oDocument->getName()}Archive Document: #docname#{/i18n}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Archive Document{/i18n}:<br />{$context->oDocument->getName()}</h2>
2 2
3 <p class="descriptiveText">{i18n}Archiving a document changes the 3 <p class="descriptiveText">{i18n}Archiving a document changes the
4 document's state to invisible to non-administrative users. Only an 4 document's state to invisible to non-administrative users. Only an
templates/ktcore/action/assistance.smarty
1 -<h2>{i18n arg_docname=$context->oDocument->getName()}Request Assistance: #docname#{/i18n}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Request Assistance{/i18n}:<br />{$context->oDocument->getName()}</h2>
  2 +
2 3
3 <p class="descriptiveText">{i18n}If you are unable to perform an action 4 <p class="descriptiveText">{i18n}If you are unable to perform an action
4 on this document that you think you should be able to, or wish to 5 on this document that you think you should be able to, or wish to
templates/ktcore/action/cancel_checkout.smarty
1 -<h2>{i18n arg_docname=$context->oDocument->getName()}Cancel Checkout: #docname#{/i18n}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Cancel Checkout{/i18n}:<br />{$context->oDocument->getName()}</h2>
2 2
3 3
4 <p class="descriptiveText">{i18n}If you do not want to have this document be checked-out, 4 <p class="descriptiveText">{i18n}If you do not want to have this document be checked-out,
templates/ktcore/action/checkin.smarty
1 -<h2>{i18n arg_docname=$context->oDocument->getName()}Checkin Document: #docname#{/i18n}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Checkin Document{/i18n}:<br />{$context->oDocument->getName()}</h2>
  2 +
2 3
3 <p class="descriptiveText">{i18n}Checking in a document updates the document 4 <p class="descriptiveText">{i18n}Checking in a document updates the document
4 and allows others to make changes to the document and its metadata.{/i18n}</p> 5 and allows others to make changes to the document and its metadata.{/i18n}</p>
templates/ktcore/action/checkout.smarty
1 -<h2>{i18n arg_docname=$context->oDocument->getName()}Checkout Document: #docname#{/i18n}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Checkout Document{/i18n}:<br />{$context->oDocument->getName()}</h2>
2 2
3 <p class="descriptiveText">{i18n}Checking out a document reserves it for your 3 <p class="descriptiveText">{i18n}Checking out a document reserves it for your
4 exclusive use. This ensures that you can edit the document without 4 exclusive use. This ensures that you can edit the document without
templates/ktcore/action/checkout_final.smarty
@@ -16,6 +16,8 @@ addLoadEvent(scheduleCheckout); @@ -16,6 +16,8 @@ addLoadEvent(scheduleCheckout);
16 {/capture} 16 {/capture}
17 {$context->oPage->requireJSStandalone($sJavascript)} 17 {$context->oPage->requireJSStandalone($sJavascript)}
18 18
  19 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Checkout Document{/i18n}:<br />{$context->oDocument->getName()}</h2>
  20 +
19 {capture assign=link}{$sLocation|addQSSelf}{/capture} 21 {capture assign=link}{$sLocation|addQSSelf}{/capture}
20 <p class="descriptiveText">{i18n arg_link=$link}The document you wish to 22 <p class="descriptiveText">{i18n arg_link=$link}The document you wish to
21 check out will begin to download soon. If it does not automatically 23 check out will begin to download soon. If it does not automatically
templates/ktcore/action/copy.smarty
1 -<h2>{i18n}Copy document{/i18n}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Copy document{/i18n}: {$documentName}</h2>
2 2
3 {assign var=iDocumentId value=$context->oDocument->getId()} 3 {assign var=iDocumentId value=$context->oDocument->getId()}
4 4
templates/ktcore/action/copy_final.smarty
1 -<h2>{i18n}Copy document{/i18n}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Copy document{/i18n}: {$documentName}</h2>
2 2
3 {assign var=iDocumentId value=$context->oDocument->getId()} 3 {assign var=iDocumentId value=$context->oDocument->getId()}
4 4
templates/ktcore/action/delete.smarty
1 -<h2>{i18n arg_docname=$context->oDocument->getName()}Delete Document: #docname#{/i18n}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Delete Document{/i18n}:<br />{$context->oDocument->getName()}</h2>
2 2
3 <p class="descriptiveText">{i18n}Deleting a document marks it as no longer 3 <p class="descriptiveText">{i18n}Deleting a document marks it as no longer
4 being displayed. The document management system does not remove the 4 being displayed. The document management system does not remove the
templates/ktcore/action/move_final.smarty
1 -<h2>{i18n arg_docname=$context->oDocument->getName()}Checkin Document: #docname#{/i18n}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Move Document{/i18n}:<br />{$context->oDocument->getName()}</h2>
2 2
3 -<p class="descriptiveText">{i18n}Moving a document relocates the document  
4 -within the DMS.{/i18n}</p> 3 +<p class="descriptiveText">{i18n}Moving a document relocates the document within the DMS.{/i18n}</p>
5 4
6 {$form->render()} 5 {$form->render()}
templates/ktcore/action/rename.smarty
1 -<h2>{i18n}Rename document{/i18n}</h2> 1 +<h2>{i18n}Rename document{/i18n}: {$documentName}</h2>
2 <p class="descriptiveText">{i18n}This page allows you to rename the file 2 <p class="descriptiveText">{i18n}This page allows you to rename the file
3 name (not the document title) for a document.{/i18n}</p> 3 name (not the document title) for a document.{/i18n}</p>
4 4
templates/ktcore/action/view_roles.smarty
1 -<h2>{i18n}View Roles{/i18n}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}View Roles{/i18n}:<br />{$context->oDocument->getName()}</h2>
2 2
3 <p class="descriptiveText">{i18n} 3 <p class="descriptiveText">{i18n}
4 In many cases, workflow actions will be assigned to certain <strong>roles</strong> 4 In many cases, workflow actions will be assigned to certain <strong>roles</strong>
@@ -22,8 +22,8 @@ @@ -22,8 +22,8 @@
22 <tr class="{cycle values=odd,even}"> 22 <tr class="{cycle values=odd,even}">
23 <td>{$aRole.name}</td> 23 <td>{$aRole.name}</td>
24 <td> 24 <td>
25 - {if ($aRole.users != null)}<strong>{i18n}Users:{/i18n}</strong> {$aRole.users}<br />{/if}  
26 - {if ($aRole.groups != null)}<strong>{i18n}Groups:{/i18n}</strong> {$aRole.groups}{/if} 25 + {if ($aRole.users != null)}<strong>{i18n}Users{/i18n}:</strong> {$aRole.users}<br />{/if}
  26 + {if ($aRole.groups != null)}<strong>{i18n}Groups{/i18n}:</strong> {$aRole.groups}{/if}
27 </td> 27 </td>
28 </tr> 28 </tr>
29 {/foreach} 29 {/foreach}
templates/ktcore/bulk_action_complete.smarty
1 -<h2>{$context->getDisplayName()}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{$context->getDisplayName()}</h2>
2 2
3 -<p class="descriptiveText">{i18n}These are the results of the bulk action:{/i18n}</p> 3 +<p class="descriptiveText">{i18n}These are the results of the bulk action{/i18n}:</p>
4 4
5 {if count($list.folders)} 5 {if count($list.folders)}
6 <table class="kt_collection"> 6 <table class="kt_collection">
templates/ktcore/bulk_action_listing.smarty
1 -<h2>{$context->getDisplayName()}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{$context->getDisplayName()}</h2>
2 2
3 -<p class="descriptiveText">{i18n}The following list shows documents and folders in your list which cannot be acted on by this bulk action:{/i18n}</p> 3 +<p class="descriptiveText">{i18n}The following list shows documents and folders in your list which cannot be acted on by this bulk action{/i18n}:</p>
4 4
5 {if count($failed.folders)} 5 {if count($failed.folders)}
6 <table class="kt_collection"> 6 <table class="kt_collection">
@@ -53,7 +53,7 @@ @@ -53,7 +53,7 @@
53 53
54 54
55 {if (count($documents) || count($folders))} 55 {if (count($documents) || count($folders))}
56 -<p class="descriptiveText">{i18n}The action will be performed on the following documents and folders:{/i18n}</p> 56 +<p class="descriptiveText">{i18n}The action will be performed on the following documents and folders{/i18n}:</p>
57 57
58 {if (count($folders))} 58 {if (count($folders))}
59 <h3>{i18n}Folders{/i18n}</h3> 59 <h3>{i18n}Folders{/i18n}</h3>
templates/ktcore/dashlets/indexer_status.smarty
@@ -2,7 +2,7 @@ @@ -2,7 +2,7 @@
2 <div class="ktError"> 2 <div class="ktError">
3 <div class="error_dashlet_rightrepeat_bottom"></div> 3 <div class="error_dashlet_rightrepeat_bottom"></div>
4 <div class="error_dashlet_leftrepeat_bottom"></div> 4 <div class="error_dashlet_leftrepeat_bottom"></div>
5 - <p><strong>{i18n}Warning:{/i18n}</strong> {i18n}There are currently no active indexers registered. No content indexing will occur.{/i18n}</p> 5 + <p><strong>{i18n}Warning{/i18n}:</strong> {i18n}There are currently no active indexers registered. No content indexing will occur.{/i18n}</p>
6 <div class="error_dashlet_topleft_small"></div> 6 <div class="error_dashlet_topleft_small"></div>
7 <div class="error_dashlet_toprepeat_small"></div> 7 <div class="error_dashlet_toprepeat_small"></div>
8 <div class="error_dashlet_topright_small"></div> 8 <div class="error_dashlet_topright_small"></div>
templates/ktcore/document/compare.smarty
1 -<h2>{i18n}Version Comparison{/i18n}: {$document->getName()}</h2>  
2 - 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Version Comparison{/i18n}:<br />{$context->oDocument->getName()}</h2>
3 2
4 {capture assign=from} 3 {capture assign=from}
5 <strong>{$document->getMajorVersionNumber()}.{$document->getMinorVersionNumber()}</strong> ({$document->getMetadataVersion()}) 4 <strong>{$document->getMajorVersionNumber()}.{$document->getMinorVersionNumber()}</strong> ({$document->getMetadataVersion()})
templates/ktcore/document/comparison_version_select.smarty
1 -<h2>{i18n}Select Document Version to compare against{/i18n}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Select Document Version to compare against{/i18n}</h2>
2 2
3 <p class="descriptiveText">{i18n}This page lists versions of document metadata and allows you to compare a metadata version with the current metadata content.{/i18n}</p> 3 <p class="descriptiveText">{i18n}This page lists versions of document metadata and allows you to compare a metadata version with the current metadata content.{/i18n}</p>
4 4
templates/ktcore/document/document_permissions.smarty
1 -<h2>{i18n}Document permissions{/i18n}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Document permissions{/i18n}:<br />{$context->oDocument->getName()}</h2>
2 2
3 <p class="descriptiveText">{i18n}This page shows the permissions that apply to 3 <p class="descriptiveText">{i18n}This page shows the permissions that apply to
4 this specific document. Where the folder view shows you information by role and group, 4 this specific document. Where the folder view shows you information by role and group,
@@ -29,7 +29,7 @@ permissions are not shown.{/i18n}&lt;/p&gt; @@ -29,7 +29,7 @@ permissions are not shown.{/i18n}&lt;/p&gt;
29 <tbody> 29 <tbody>
30 30
31 { foreach item=oRole from=$roles } 31 { foreach item=oRole from=$roles }
32 -<td><span class="descriptiveText">{i18n}Role:{/i18n}</span> {$oRole->getName()}</td> 32 +<td><span class="descriptiveText">{i18n}Role{/i18n}:</span> {$oRole->getName()}</td>
33 { assign var=iRoleId value=$oRole->getId() } 33 { assign var=iRoleId value=$oRole->getId() }
34 { foreach item=oPerm from=$permissions } 34 { foreach item=oPerm from=$permissions }
35 { assign var=iPermId value=$oPerm->getId() } 35 { assign var=iPermId value=$oPerm->getId() }
@@ -46,7 +46,7 @@ permissions are not shown.{/i18n}&lt;/p&gt; @@ -46,7 +46,7 @@ permissions are not shown.{/i18n}&lt;/p&gt;
46 46
47 47
48 { foreach item=oGroup from=$groups } 48 { foreach item=oGroup from=$groups }
49 -<td><span class="descriptiveText">{i18n}Group:{/i18n}</span> {$oGroup->getName()}</td> 49 +<td><span class="descriptiveText">{i18n}Group{/i18n}:</span> {$oGroup->getName()}</td>
50 { assign var=iGroupId value=$oGroup->getId() } 50 { assign var=iGroupId value=$oGroup->getId() }
51 { foreach item=oPerm from=$permissions } 51 { foreach item=oPerm from=$permissions }
52 { assign var=iPermId value=$oPerm->getId() } 52 { assign var=iPermId value=$oPerm->getId() }
templates/ktcore/document/edit.smarty
@@ -11,7 +11,7 @@ @@ -11,7 +11,7 @@
11 11
12 {$context->oPage->requireCSSResource('resources/css/kt-treewidget.css')} 12 {$context->oPage->requireCSSResource('resources/css/kt-treewidget.css')}
13 13
14 -<h2>{i18n}Editing{/i18n}: {$document->getName()|mb_wordwrap:40:"<br />\n":true}</h2> 14 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Edit Metadata{/i18n}:<br />{$context->oDocument->getName()}</h2>
15 15
16 {capture assign=link}{addQS}action=selectType&fDocumentId={$document->getId()}{/addQS}{/capture} 16 {capture assign=link}{addQS}action=selectType&fDocumentId={$document->getId()}{/addQS}{/capture}
17 <p class="descriptiveText">{i18n arg_link=$link arg_name=$type_name}Change the <strong><a href="#link#">document type</a></strong>. The current type is "#name#"{/i18n}</p> 17 <p class="descriptiveText">{i18n arg_link=$link arg_name=$type_name}Change the <strong><a href="#link#">document type</a></strong>. The current type is "#name#"{/i18n}</p>
templates/ktcore/document/metadata_history.smarty
1 -<h2>{i18n}Version History{/i18n}: {$document->getName()}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Document Version History{/i18n}:<br />{$document->getName()}</h2>
2 2
3 <p class="descriptiveText">{i18n}This page lists versions of document metadata and allows you to compare a metadata version with the current metadata content.{/i18n}</p> 3 <p class="descriptiveText">{i18n}This page lists versions of document metadata and allows you to compare a metadata version with the current metadata content.{/i18n}</p>
4 4
templates/ktcore/document/ownershipchangeaction.smarty
1 -<h2>{i18n arg_docname=$docname}Change Ownership of "#docname#"{/i18n}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Change Ownership{/i18n}:<br />{$context->oDocument->getName()}</h2>
2 2
3 {$form->render()} 3 {$form->render()}
templates/ktcore/document/resolved_permissions_user.smarty
1 -<h2>{i18n}Resolved permissions per user{/i18n}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Resolved permissions per user{/i18n}:<br />{$context->oDocument->getName()}</h2>
2 2
3 <p class="descriptiveText">{i18n}This page shows the permissions that 3 <p class="descriptiveText">{i18n}This page shows the permissions that
4 individual users have on this document. Only the users which have permissions 4 individual users have on this document. Only the users which have permissions
templates/ktcore/document/transaction_history.smarty
1 -<h2>{i18n}Transaction History{/i18n}: {$document->getName()}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Document Transaction History{/i18n}:<br />{$document->getName()}</h2>
2 2
3 <p class="descriptiveText">{i18n}This page provides details of all activities that have been carried out on the document.{/i18n}</p> 3 <p class="descriptiveText">{i18n}This page provides details of all activities that have been carried out on the document.{/i18n}</p>
4 4
templates/ktcore/document/view.smarty
1 -<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{$document->getName()|mb_wordwrap:40:"<br />\n":true}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Document Details{/i18n}:<br />{$context->oDocument->getName()}</h2>
2 2
3 {if ($document->getIsCheckedOut() == 1)} 3 {if ($document->getIsCheckedOut() == 1)}
4 {capture assign=checkout_user}<strong>{$sCheckoutUser}</strong>{/capture} 4 {capture assign=checkout_user}<strong>{$sCheckoutUser}</strong>{/capture}
templates/ktcore/fields/edit.smarty
1 -<h2>{i18n}Fieldset{/i18n}: {$oFieldset->getName()}</h2>  
2 - 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Fieldset{/i18n}:<br />{$oFieldset->getName()}</h2>
3 2
4 <form action="{$smarty.server.PHP_SELF}" method="POST"> 3 <form action="{$smarty.server.PHP_SELF}" method="POST">
5 <fieldset> 4 <fieldset>
templates/ktcore/folder/bulkImport.smarty
@@ -54,7 +54,7 @@ addLoadEvent(startupMetadata); @@ -54,7 +54,7 @@ addLoadEvent(startupMetadata);
54 {/capture} 54 {/capture}
55 {$context->oPage->requireJSStandalone($sJavascript)} 55 {$context->oPage->requireJSStandalone($sJavascript)}
56 56
57 -<h2>{i18n arg_foldername=$foldername}Import files into "#foldername#"{/i18n}</h2> 57 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Import files into{/i18n}:<br />{$context->oFolder->getName()}</h2>
58 58
59 <form method="POST" action="{$smarty.server.PHP_SELF}" enctype="multipart/form-data"> 59 <form method="POST" action="{$smarty.server.PHP_SELF}" enctype="multipart/form-data">
60 <fieldset><legend>{i18n}Import from Server Location{/i18n}</legend> 60 <fieldset><legend>{i18n}Import from Server Location{/i18n}</legend>
templates/ktcore/folder/bulkUpload.smarty
@@ -54,7 +54,7 @@ addLoadEvent(startupMetadata); @@ -54,7 +54,7 @@ addLoadEvent(startupMetadata);
54 {/capture} 54 {/capture}
55 {$context->oPage->requireJSStandalone($sJavascript)} 55 {$context->oPage->requireJSStandalone($sJavascript)}
56 56
57 -<h2>{i18n arg_foldername=$foldername}Upload files into "#foldername#"{/i18n}</h2> 57 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Upload files into{/i18n}:<br />{$context->oFolder->getName()}</h2>
58 58
59 <form method="POST" action="{$smarty.server.PHP_SELF|addQueryString:"postExpected=1&fFolderId="}{$context->oFolder->getId()}" enctype="multipart/form-data"> 59 <form method="POST" action="{$smarty.server.PHP_SELF|addQueryString:"postExpected=1&fFolderId="}{$context->oFolder->getId()}" enctype="multipart/form-data">
60 <fieldset><legend>{i18n}Bulk upload{/i18n}</legend> 60 <fieldset><legend>{i18n}Bulk upload{/i18n}</legend>
templates/ktcore/folder/rename.smarty
1 -<h2>{i18n arg_name=$sFolderName}Renaming folder: #name#{/i18n}</h2> 1 +<h2>{i18n}Rename Folder{/i18n}: {$folderName}</h2>
2 2
3 </h2><p class="descriptiveText">{i18n}This page allows you to rename a 3 </h2><p class="descriptiveText">{i18n}This page allows you to rename a
4 folder.{/i18n}</p> 4 folder.{/i18n}</p>
@@ -7,7 +7,7 @@ folder.{/i18n}&lt;/p&gt; @@ -7,7 +7,7 @@ folder.{/i18n}&lt;/p&gt;
7 {capture assign=link}{getUrlForFolder folder=$iFolderId}{/capture} 7 {capture assign=link}{getUrlForFolder folder=$iFolderId}{/capture}
8 8
9 <form method="POST" action="{$smarty.server.PHP_SELF}"> 9 <form method="POST" action="{$smarty.server.PHP_SELF}">
10 -<fieldset><legend>{i18n}Rename{/i18n}</legend> 10 +<fieldset><legend>{i18n}Rename Folder{/i18n}</legend>
11 <input type="hidden" name="action" value="rename" /> 11 <input type="hidden" name="action" value="rename" />
12 <input type="hidden" name="fFolderId" value="{$iFolderId}" /> 12 <input type="hidden" name="fFolderId" value="{$iFolderId}" />
13 {foreach from=$fields item=oWidget } 13 {foreach from=$fields item=oWidget }
templates/ktcore/folder/resolved_permissions.smarty
@@ -23,7 +23,7 @@ assigned are shown.{/i18n}&lt;/p&gt; @@ -23,7 +23,7 @@ assigned are shown.{/i18n}&lt;/p&gt;
23 <tbody> 23 <tbody>
24 24
25 { foreach item=oRole from=$roles } 25 { foreach item=oRole from=$roles }
26 -<td><span class="descriptiveText">{i18n}Role:{/i18n}</span> {$oRole->getName()}</td> 26 +<td><span class="descriptiveText">{i18n}Role{/i18n}:</span> {$oRole->getName()}</td>
27 { assign var=iRoleId value=$oRole->getId() } 27 { assign var=iRoleId value=$oRole->getId() }
28 { foreach item=oPerm from=$permissions } 28 { foreach item=oPerm from=$permissions }
29 { assign var=iPermId value=$oPerm->getId() } 29 { assign var=iPermId value=$oPerm->getId() }
@@ -50,7 +50,7 @@ value=&quot;{$iRoleId}&quot;&gt;&lt;/td&gt; @@ -50,7 +50,7 @@ value=&quot;{$iRoleId}&quot;&gt;&lt;/td&gt;
50 50
51 51
52 { foreach item=oGroup from=$groups } 52 { foreach item=oGroup from=$groups }
53 -<td><span class="descriptiveText">{i18n}Group:{/i18n}</span> {$oGroup->getName()}</td> 53 +<td><span class="descriptiveText">{i18n}Group{/i18n}:</span> {$oGroup->getName()}</td>
54 { assign var=iGroupId value=$oGroup->getId() } 54 { assign var=iGroupId value=$oGroup->getId() }
55 { foreach item=oPerm from=$permissions } 55 { foreach item=oPerm from=$permissions }
56 { assign var=iPermId value=$oPerm->getId() } 56 { assign var=iPermId value=$oPerm->getId() }
templates/ktcore/folder/resolved_permissions_user.smarty
1 -<h2>{i18n arg_foldername=$foldername}Resolved permissions per user for "#foldername#"{/i18n}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Resolved permissions per user{/i18n}: {$context->oFolder->getName()}</h2>
2 2
3 <p class="descriptiveText">{i18n}This page shows the permissions that 3 <p class="descriptiveText">{i18n}This page shows the permissions that
4 individual users have on this folder. Only the users which have permissions 4 individual users have on this folder. Only the users which have permissions
templates/ktcore/folder/roles.smarty
1 -<h2>{i18n arg_foldername=$foldername}Allocate Roles for "#foldername#"{/i18n}</h2> 1 +<h2>{i18n}Allocate Roles for{/i18n}: {$folderName}</h2>
2 2
3 <p class="descriptiveText">{i18n} 3 <p class="descriptiveText">{i18n}
4 In many cases, workflow actions will be assigned to certain <strong>roles</strong> 4 In many cases, workflow actions will be assigned to certain <strong>roles</strong>
@@ -6,7 +6,7 @@ @@ -6,7 +6,7 @@
6 to specific groups in particular areas of the document management system. 6 to specific groups in particular areas of the document management system.
7 {/i18n}</p> 7 {/i18n}</p>
8 8
9 -<div class='ktInfoMessage'><span><strong>{i18n}Warning:{/i18n}</strong> {i18n}Please note that changing 9 +<div class='ktInfoMessage'><span><strong>{i18n}Warning{/i18n}:</strong> {i18n}Please note that changing
10 role allocations may take a some time, depending on the number of folders below this one.{/i18n}</span></div> 10 role allocations may take a some time, depending on the number of folders below this one.{/i18n}</span></div>
11 11
12 <table class="kt_collection narrow" cellspacing="0"> 12 <table class="kt_collection narrow" cellspacing="0">
@@ -29,8 +29,8 @@ role allocations may take a some time, depending on the number of folders below @@ -29,8 +29,8 @@ role allocations may take a some time, depending on the number of folders below
29 <strong>{i18n}inherited from parent folder.{/i18n}</strong><br /> 29 <strong>{i18n}inherited from parent folder.{/i18n}</strong><br />
30 <span class="descriptiveText"> 30 <span class="descriptiveText">
31 {/if} 31 {/if}
32 - {if ($aRole.users != null)}<strong>{i18n}Users:{/i18n}</strong> {$aRole.users}<br />{/if}  
33 - {if ($aRole.groups != null)}<strong>{i18n}Groups:{/i18n}</strong> {$aRole.groups}{/if} 32 + {if ($aRole.users != null)}<strong>{i18n}Users{/i18n}:</strong> {$aRole.users}<br />{/if}
  33 + {if ($aRole.groups != null)}<strong>{i18n}Groups{/i18n}:</strong> {$aRole.groups}{/if}
34 {if ($aRole.allocation_id === null)} 34 {if ($aRole.allocation_id === null)}
35 </span class="descriptiveText"> 35 </span class="descriptiveText">
36 {/if} 36 {/if}
templates/ktcore/folder/view_permissions.smarty
1 -<h2>{i18n arg_foldername=$foldername}View Permissions for "#foldername#"{/i18n}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}View Permissions for{/i18n}:<br />{$context->oFolder->getName()}</h2>
2 2
3 <p class="descriptiveText">{i18n}This page shows the permissions that apply to 3 <p class="descriptiveText">{i18n}This page shows the permissions that apply to
4 this specific folder. Only the roles or groups which have permissions 4 this specific folder. Only the roles or groups which have permissions
@@ -13,6 +13,7 @@ assigned are shown.{/i18n}&lt;/p&gt; @@ -13,6 +13,7 @@ assigned are shown.{/i18n}&lt;/p&gt;
13 13
14 14
15 {if $iFolderId != 1} 15 {if $iFolderId != 1}
  16 +<p>
16 <div class="ktInfoMessage"> 17 <div class="ktInfoMessage">
17 { if $inherited } 18 { if $inherited }
18 <span>{i18n arg_permission_source=$inherited}This folder <strong>inherits</strong> its permissions from #permission_source#.{/i18n} 19 <span>{i18n arg_permission_source=$inherited}This folder <strong>inherits</strong> its permissions from #permission_source#.{/i18n}
@@ -26,6 +27,7 @@ assigned are shown.{/i18n}&lt;/p&gt; @@ -26,6 +27,7 @@ assigned are shown.{/i18n}&lt;/p&gt;
26 <p>{i18n}This folder defines its own permissions.{/i18n}</p> 27 <p>{i18n}This folder defines its own permissions.{/i18n}</p>
27 { /if } 28 { /if }
28 </div> 29 </div>
  30 +</p>
29 { /if } 31 { /if }
30 32
31 {if (empty($roles) && empty($groups) && empty($users)) } 33 {if (empty($roles) && empty($groups) && empty($users)) }
@@ -44,7 +46,7 @@ assigned are shown.{/i18n}&lt;/p&gt; @@ -44,7 +46,7 @@ assigned are shown.{/i18n}&lt;/p&gt;
44 <tbody> 46 <tbody>
45 47
46 { foreach item=oRole from=$roles } 48 { foreach item=oRole from=$roles }
47 -<td><span class="descriptiveText">{i18n}Role:{/i18n}</span> {$oRole->getName()}</td> 49 +<td><span class="descriptiveText">{i18n}Role{/i18n}:</span> {$oRole->getName()}</td>
48 { assign var=iRoleId value=$oRole->getId() } 50 { assign var=iRoleId value=$oRole->getId() }
49 { foreach item=oPerm from=$permissions } 51 { foreach item=oPerm from=$permissions }
50 { assign var=iPermId value=$oPerm->getId() } 52 { assign var=iPermId value=$oPerm->getId() }
@@ -61,7 +63,7 @@ assigned are shown.{/i18n}&lt;/p&gt; @@ -61,7 +63,7 @@ assigned are shown.{/i18n}&lt;/p&gt;
61 63
62 64
63 { foreach item=oGroup from=$groups } 65 { foreach item=oGroup from=$groups }
64 -<td><span class="descriptiveText">{i18n}Group:{/i18n}</span> {$oGroup->getName()}</td> 66 +<td><span class="descriptiveText">{i18n}Group{/i18n}:</span> {$oGroup->getName()}</td>
65 { assign var=iGroupId value=$oGroup->getId() } 67 { assign var=iGroupId value=$oGroup->getId() }
66 { foreach item=oPerm from=$permissions } 68 { foreach item=oPerm from=$permissions }
67 { assign var=iPermId value=$oPerm->getId() } 69 { assign var=iPermId value=$oPerm->getId() }
templates/ktcore/metadata/admin/edit_lookuptree.smarty
@@ -3,7 +3,7 @@ @@ -3,7 +3,7 @@
3 {$context->oPage->requireJSResource("thirdpartyjs/MochiKit/Iter.js")} 3 {$context->oPage->requireJSResource("thirdpartyjs/MochiKit/Iter.js")}
4 {$context->oPage->requireJSResource("thirdpartyjs/MochiKit/DOM.js")} 4 {$context->oPage->requireJSResource("thirdpartyjs/MochiKit/DOM.js")}
5 5
6 -<h2>{i18n}Edit Lookup Tree{/i18n}: {$field->getName()}</h2> 6 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Edit Lookup Tree{/i18n}:<br />{$field->getName()}</h2>
7 7
8 <p class="descriptiveText">{i18n}Many "lookup" fields make sense in a hierachy: 8 <p class="descriptiveText">{i18n}Many "lookup" fields make sense in a hierachy:
9 countries are part of continents and sub-continents, school classes are part of grades 9 countries are part of continents and sub-continents, school classes are part of grades
templates/ktcore/metadata/admin/manage_lookups.smarty
@@ -6,7 +6,7 @@ @@ -6,7 +6,7 @@
6 <p class="descriptiveText">{i18n}Over time, the lookup values which make sense will 6 <p class="descriptiveText">{i18n}Over time, the lookup values which make sense will
7 change and evolve as your organisation does. You may thus need to change the lookup 7 change and evolve as your organisation does. You may thus need to change the lookup
8 values associated with a given field. There are a number of different states 8 values associated with a given field. There are a number of different states
9 -that are possible for a given lookup:{/i18n}</p> 9 +that are possible for a given lookup{/i18n}:</p>
10 10
11 <ul class="descriptiveText"> 11 <ul class="descriptiveText">
12 <li>{i18n}<strong>Enabled</strong>, which means that users cannot specify this 12 <li>{i18n}<strong>Enabled</strong>, which means that users cannot specify this
templates/ktcore/metadata/edit.smarty
1 -<h2>{i18n}Fieldset{/i18n}: {$oFieldset->getName()}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Fieldset{/i18n}:<br />{$oFieldset->getName()}</h2>
2 2
3 <h3>{i18n}Fieldset properties{/i18n}</h3> 3 <h3>{i18n}Fieldset properties{/i18n}</h3>
4 <form action="{$smarty.server.PHP_SELF}" method="POST"> 4 <form action="{$smarty.server.PHP_SELF}" method="POST">
templates/ktcore/metadata/editField.smarty
1 -<h2>{i18n}Edit Field{/i18n}: {$oField->getName()}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Edit Field{/i18n}:<br />{$oField->getName()}</h2>
2 2
3 <form action="{$smarty.server.PHP_SELF}" method="POST"> 3 <form action="{$smarty.server.PHP_SELF}" method="POST">
4 <fieldset> 4 <fieldset>
templates/ktcore/metadata/editFieldset.smarty
1 -<h2>{i18n}Fieldset{/i18n}: {$oFieldset->getName()}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Fieldset{/i18n}:<br />{$oFieldset->getName()}</h2>
2 2
3 {if $sIncomplete} 3 {if $sIncomplete}
4 <div class="ktErrorMessage"> 4 <div class="ktErrorMessage">
templates/ktcore/workflow/admin/security_overview.smarty
@@ -6,7 +6,7 @@ way to allocate permissions to a document, since it can override the permissions @@ -6,7 +6,7 @@ way to allocate permissions to a document, since it can override the permissions
6 assigned at a folder level.{/i18n}</p> 6 assigned at a folder level.{/i18n}</p>
7 7
8 <p class="descriptiveText">{i18n}There are 3 different ways in which workflows interact 8 <p class="descriptiveText">{i18n}There are 3 different ways in which workflows interact
9 -with the system's security:{/i18n}</p> 9 +with the system's security{/i18n}:</p>
10 10
11 <ol> 11 <ol>
12 <li><a href="{addQS context=$context}action=permissionsoverview{/addQS}">{i18n}Document Permissions{/i18n}</a> {i18n}(by state){/i18n}</li> 12 <li><a href="{addQS context=$context}action=permissionsoverview{/addQS}">{i18n}Document Permissions{/i18n}</a> {i18n}(by state){/i18n}</li>
templates/ktcore/workflow/documentWorkflow.smarty
1 -<h2>{i18n}Document Workflow{/i18n}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Workflow for{/i18n}:<br />{$oDocument->getName()}</h2>
2 2
3 <p class="descriptiveText"> 3 <p class="descriptiveText">
4 {i18n}Workflow is a description of a document's lifecycle. It is made up of 4 {i18n}Workflow is a description of a document's lifecycle. It is made up of
templates/ktcore/workflow/editState.smarty
@@ -20,7 +20,7 @@ td.false { background-color: #ffaaaa; text-align: centre } @@ -20,7 +20,7 @@ td.false { background-color: #ffaaaa; text-align: centre }
20 {/literal}{/capture} 20 {/literal}{/capture}
21 {$context->oPage->requireCSSStandalone($sCSS)} 21 {$context->oPage->requireCSSStandalone($sCSS)}
22 22
23 -<h2>{i18n}State{/i18n}: {$oState->getName()}</h2> 23 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}State{/i18n}:<br />{$oState->getName()}</h2>
24 24
25 <p class="descriptiveText">{i18n}As documents move through their lifecycle, they 25 <p class="descriptiveText">{i18n}As documents move through their lifecycle, they
26 are placed in certain <strong>states</strong>. For example, an invoice 26 are placed in certain <strong>states</strong>. For example, an invoice
@@ -198,7 +198,7 @@ documents are in this state.{/i18n}&lt;/span&gt;&lt;/div&gt; @@ -198,7 +198,7 @@ documents are in this state.{/i18n}&lt;/span&gt;&lt;/div&gt;
198 <tbody> 198 <tbody>
199 { foreach item=oRole from=$aRoles } 199 { foreach item=oRole from=$aRoles }
200 <tr> 200 <tr>
201 - <td><span class="descriptiveText">{i18n}Role:{/i18n} </span>{$oRole->getName()}</td> 201 + <td><span class="descriptiveText">{i18n}Role{/i18n}: </span>{$oRole->getName()}</td>
202 { foreach from=$state_permissions item=sPermName } 202 { foreach from=$state_permissions item=sPermName }
203 <td><input type="checkbox" name="fPermissions[{$sPermName}][role][]" value="{$oRole->getId()}" {if ($context->getRoleHasPermissionInState($oRole, $sPermName, $oState))}checked="true"{/if}/></td> 203 <td><input type="checkbox" name="fPermissions[{$sPermName}][role][]" value="{$oRole->getId()}" {if ($context->getRoleHasPermissionInState($oRole, $sPermName, $oState))}checked="true"{/if}/></td>
204 { /foreach } 204 { /foreach }
@@ -206,7 +206,7 @@ documents are in this state.{/i18n}&lt;/span&gt;&lt;/div&gt; @@ -206,7 +206,7 @@ documents are in this state.{/i18n}&lt;/span&gt;&lt;/div&gt;
206 { /foreach } 206 { /foreach }
207 { foreach item=oGroup from=$aGroups } 207 { foreach item=oGroup from=$aGroups }
208 <tr> 208 <tr>
209 - <td><span class="descriptiveText">{i18n}Group:{/i18n} </span>{$oGroup->getName()}</td> 209 + <td><span class="descriptiveText">{i18n}Group{/i18n}: </span>{$oGroup->getName()}</td>
210 { foreach from=$state_permissions item=sPermName } 210 { foreach from=$state_permissions item=sPermName }
211 <td><input type="checkbox" name="fPermissions[{$sPermName}][group][]" value="{$oGroup->getId()}"{if ($context->getGroupHasPermissionInState($oGroup, $sPermName, $oState))}checked="true"{/if}/></td> 211 <td><input type="checkbox" name="fPermissions[{$sPermName}][group][]" value="{$oGroup->getId()}"{if ($context->getGroupHasPermissionInState($oGroup, $sPermName, $oState))}checked="true"{/if}/></td>
212 { /foreach } 212 { /foreach }
templates/ktcore/workflow/editTransition.smarty
1 -<h2>{i18n}Transition{/i18n}: {$oTransition->getName()}</h2>  
2 - 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Transition{/i18n}:<br />{$oTransition->getName()}</h2>
3 2
4 <form action="{$smarty.server.PHP_SELF}" method="POST"> 3 <form action="{$smarty.server.PHP_SELF}" method="POST">
5 <fieldset> 4 <fieldset>
templates/ktcore/workflow/editWorkflow.smarty
1 {$context->oPage->requireCSSResource('resources/css/workflow-admin.css')} 1 {$context->oPage->requireCSSResource('resources/css/workflow-admin.css')}
2 2
3 -<h2>{i18n}Workflow Overview{/i18n}: {$oWorkflow->getName()}</h2> 3 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Workflow Overview{/i18n}:<br />{$oWorkflow->getName()}</h2>
  4 +
4 5
5 <form action="{$smarty.server.PHP_SELF}" method="POST"> 6 <form action="{$smarty.server.PHP_SELF}" method="POST">
6 <fieldset> 7 <fieldset>
@@ -30,21 +31,21 @@ or use the &quot;Workflow&quot; menu on the left to create new ones.{/i18n}&lt;/p&gt; @@ -30,21 +31,21 @@ or use the &quot;Workflow&quot; menu on the left to create new ones.{/i18n}&lt;/p&gt;
30 <li><span class="workflow_element">{i18n}State{/i18n}:</span> <a href="{addQS}action=editState&fStateId={$oState->getId()}&fWorkflowId={$oWorkflow->getId()}{/addQS}" class="workflow_label">{$oState->getName()}</a> 31 <li><span class="workflow_element">{i18n}State{/i18n}:</span> <a href="{addQS}action=editState&fStateId={$oState->getId()}&fWorkflowId={$oWorkflow->getId()}{/addQS}" class="workflow_label">{$oState->getName()}</a>
31 {if ($workflow_info.can_delete)} | <span class="ktActionLink ktDelete"><a href="{addQS}action=deleteState&fStateId={$oState->getId()}&fWorkflowId={$oWorkflow->getId()}{/addQS}" >{i18n}Delete{/i18n}</a></span>{/if} 32 {if ($workflow_info.can_delete)} | <span class="ktActionLink ktDelete"><a href="{addQS}action=deleteState&fStateId={$oState->getId()}&fWorkflowId={$oWorkflow->getId()}{/addQS}" >{i18n}Delete{/i18n}</a></span>{/if}
32 <ul> 33 <ul>
33 - <li>{i18n}Notified groups & roles:{/i18n} 34 + <li>{i18n}Notified groups & roles{/i18n}:
34 {$context->getNotificationStringForState($oState)} 35 {$context->getNotificationStringForState($oState)}
35 </li> 36 </li>
36 37
37 - <li>{i18n}Controlled Actions available: {/i18n} 38 + <li>{i18n}Controlled Actions available{/i18n}:
38 {$context->getActionStringForState($oState)} 39 {$context->getActionStringForState($oState)}
39 </li> 40 </li>
40 41
41 - <li>{i18n}Permissions overridden:{/i18n} {$context->getPermissionStringForState($oState)}</li> 42 + <li>{i18n}Permissions overridden{/i18n}: {$context->getPermissionStringForState($oState)}</li>
42 43
43 - <li>{i18n}Transitions available: {/i18n} 44 + <li>{i18n}Transitions available{/i18n}:
44 {$context->getTransitionFromStringForState($oState)} 45 {$context->getTransitionFromStringForState($oState)}
45 </li> 46 </li>
46 47
47 - <li>{i18n}Transitions to this state: {/i18n} 48 + <li>{i18n}Transitions to this state{/i18n}:
48 {$context->getTransitionToStringForState($oState)} 49 {$context->getTransitionToStringForState($oState)}
49 </li> 50 </li>
50 </ul> 51 </ul>
templates/ktcore/workflow/manageStates.smarty
@@ -27,21 +27,21 @@ various different states for documents.{/i18n}&lt;/p&gt; @@ -27,21 +27,21 @@ various different states for documents.{/i18n}&lt;/p&gt;
27 <li><span class="workflow_element">{i18n}State{/i18n}:</span> <a href="{addQS}action=editState&fStateId={$oState->getId()}&fWorkflowId={$oWorkflow->getId()}{/addQS}" class="workflow_label">{$oState->getName()}</a> 27 <li><span class="workflow_element">{i18n}State{/i18n}:</span> <a href="{addQS}action=editState&fStateId={$oState->getId()}&fWorkflowId={$oWorkflow->getId()}{/addQS}" class="workflow_label">{$oState->getName()}</a>
28 {if ($workflow_info.can_delete)} | <span class="ktActionLink ktDelete"><a href="{addQS}action=deleteState&fStateId={$oState->getId()}&fWorkflowId={$oWorkflow->getId()}{/addQS}" >{i18n}Delete{/i18n}</a></span>{/if} 28 {if ($workflow_info.can_delete)} | <span class="ktActionLink ktDelete"><a href="{addQS}action=deleteState&fStateId={$oState->getId()}&fWorkflowId={$oWorkflow->getId()}{/addQS}" >{i18n}Delete{/i18n}</a></span>{/if}
29 <ul> 29 <ul>
30 - <li>{i18n}Notified groups & roles:{/i18n} 30 + <li>{i18n}Notified groups & roles{/i18n}:
31 {$context->getNotificationStringForState($oState)} 31 {$context->getNotificationStringForState($oState)}
32 </li> 32 </li>
33 33
34 - <li>{i18n}Controlled Actions available: {/i18n} 34 + <li>{i18n}Controlled Actions available{/i18n}:
35 {$context->getActionStringForState($oState)} 35 {$context->getActionStringForState($oState)}
36 </li> 36 </li>
37 37
38 - <li>{i18n}Permissions overridden:{/i18n} {$context->getPermissionStringForState($oState)}</li> 38 + <li>{i18n}Permissions overridden{/i18n}: {$context->getPermissionStringForState($oState)}</li>
39 39
40 - <li>{i18n}Transitions available: {/i18n} 40 + <li>{i18n}Transitions available{/i18n}:
41 {$context->getTransitionFromStringForState($oState)} 41 {$context->getTransitionFromStringForState($oState)}
42 </li> 42 </li>
43 43
44 - <li>{i18n}Transitions to this state: {/i18n} 44 + <li>{i18n}Transitions to this state{/i18n}:
45 {$context->getTransitionToStringForState($oState)} 45 {$context->getTransitionToStringForState($oState)}
46 </li> 46 </li>
47 </ul> 47 </ul>
templates/ktstandard/PDFPlugin/PDFPlugin.smarty
1 -<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n arg_docname=$context->oDocument->getName()}Convert to PDF: #docname#{/i18n}</h2> 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Generate PDF of{/i18n}:<br />{$context->oDocument->getName()}</h2>
2 2
3 {$form->render()} 3 {$form->render()}
templates/ktstandard/action/discussion.smarty
  1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Discussion{/i18n}:<br />{$context->oDocument->getName()}</h2>
  2 +
1 {if $threads} 3 {if $threads}
2 <h3>{i18n}Existing threads{/i18n}</h3> 4 <h3>{i18n}Existing threads{/i18n}</h3>
3 <table class="kt_collection" cellspacing="0" cellpadding="0"> 5 <table class="kt_collection" cellspacing="0" cellpadding="0">
templates/ktstandard/action/document_links.smarty
1 -<h2>{i18n}Document Links{/i18n}</h2>  
2 - 1 +<h2><img src="{if $config->get("ui/morphEnabled") == '1'}{$rootUrl}/skins/kts_{$config->get("ui/morphTo")}/title_bullet.png{else}{$rootUrl}/resources/graphics/title_bullet.png{/if}"/>{i18n}Document Links{/i18n}:<br />{$context->oDocument->getName()}</h2>
3 2
4 <p class="descriptiveText">{i18n}The current links to and from this document are displayed below.{/i18n}</p> 3 <p class="descriptiveText">{i18n}The current links to and from this document are displayed below.{/i18n}</p>
5 4
templates/ktstandard/adminversion/dashlet.smarty
@@ -16,8 +16,8 @@ @@ -16,8 +16,8 @@
16 <script type="text/javascript">var _KT_VERSIONS_URL = "{$kt_versions_url}";</script> 16 <script type="text/javascript">var _KT_VERSIONS_URL = "{$kt_versions_url}";</script>
17 17
18 <p> 18 <p>
19 -<span id="up_single">{i18n}The following upgrade is available:{/i18n}</span>  
20 -<span id="up_multi">{i18n}The following upgrades are available:{/i18n}</span> 19 +<span id="up_single">{i18n}The following upgrade is available{/i18n}:</span>
  20 +<span id="up_multi">{i18n}The following upgrades are available{/i18n}:</span>
21 <span id="up_upgrades"></span> 21 <span id="up_upgrades"></span>
22 {i18n}Please visit <a href="http://www.knowledgetree.com">www.knowledgetree.com</a> to find out more.{/i18n} 22 {i18n}Please visit <a href="http://www.knowledgetree.com">www.knowledgetree.com</a> to find out more.{/i18n}
23 </p> 23 </p>
templates/ktstandard/ktwebdavdashlet/dashlet.smarty
1 -<div>  
2 -<p>{i18n arg_appname="$appname"}To connect to #appname# via a third-party WebDAV client, please use the following address:{/i18n}<br/> 1 +<div>
  2 +<p>{i18n arg_appname="$appname"}To connect to #appname# via a third-party WebDAV client, please use the following address{/i18n}:<br/>
3 <b><a href="{$url}ktwebdav/ktwebdav.php" target="_blank">{$url}ktwebdav/ktwebdav.php</a></b><br/><br/> 3 <b><a href="{$url}ktwebdav/ktwebdav.php" target="_blank">{$url}ktwebdav/ktwebdav.php</a></b><br/><br/>
4 -{i18n arg_appname="$appname"}To connect with the #appname# Tools Suite, use this address:{/i18n}<br/>  
5 -<b>{$url}</b><br/><br/>  
6 -</p>  
7 -</div>  
8 - 4 +{i18n arg_appname="$appname"}To connect with the #appname# Tools Suite, use this address{/i18n}:<br/>
  5 +<b>{$url}</b><br/><br/>
  6 +</p>
  7 +</div>
  8 +
thirdparty/Smarty/plugins/modifier.mb_wordwrap.php
@@ -20,14 +20,22 @@ @@ -20,14 +20,22 @@
20 */ 20 */
21 function smarty_modifier_mb_wordwrap($string,$length=80,$break="\n",$cut=false) 21 function smarty_modifier_mb_wordwrap($string,$length=80,$break="\n",$cut=false)
22 { 22 {
23 -  
24 - $newString = "";  
25 - $index = 0;  
26 - while(mb_strlen($newString) < mb_strlen($string)){  
27 - $newString .= mb_strcut($string, $index, $length, "UTF8") . $break;  
28 - $index += $length;  
29 - }  
30 - return $newString;  
31 - 23 + if ($length == 0)
  24 + return '';
  25 +
  26 + if (mb_strlen($string) > $length) {
  27 +
  28 + //if (!$cut) $string = preg_replace('/\s+?(\S+)?$/', '', mb_substr($string, 0, $length+1));
  29 +
  30 + $newString = "";
  31 + $index = 0;
  32 + $breakslen = 0;
  33 + while(mb_strlen($newString)-$breakslen < mb_strlen($string)){
  34 + $newString .= mb_strcut($string, $index, $length, "UTF-8") . $break;
  35 + $index += $length;
  36 + $breakslen += mb_strlen($break);
  37 + }
  38 + return $newString;
  39 + } else return $string;
32 } 40 }
33 ?> 41 ?>
34 \ No newline at end of file 42 \ No newline at end of file
view.php
@@ -236,6 +236,7 @@ class ViewDocumentDispatcher extends KTStandardDispatcher { @@ -236,6 +236,7 @@ class ViewDocumentDispatcher extends KTStandardDispatcher {
236 "canCheckin" => $bCanCheckin, 236 "canCheckin" => $bCanCheckin,
237 "document_id" => $document_id, 237 "document_id" => $document_id,
238 "document" => $oDocument, 238 "document" => $oDocument,
  239 + "documentName" => $oDocument->getName(),
239 "document_data" => $document_data, 240 "document_data" => $document_data,
240 "fieldsets" => $fieldsets, 241 "fieldsets" => $fieldsets,
241 'viewlet_data' => $viewlet_data, 242 'viewlet_data' => $viewlet_data,