diff --git a/docs/VERSION-NAME.txt b/docs/VERSION-NAME.txt
index 87ce492..506e126 100644
--- a/docs/VERSION-NAME.txt
+++ b/docs/VERSION-NAME.txt
@@ -1 +1 @@
-3.5.2
+3.5.3 beta1
diff --git a/docs/VERSION-OSS.txt b/docs/VERSION-OSS.txt
index 87ce492..506e126 100644
--- a/docs/VERSION-OSS.txt
+++ b/docs/VERSION-OSS.txt
@@ -1 +1 @@
-3.5.2
+3.5.3 beta1
diff --git a/docs/VERSION.txt b/docs/VERSION.txt
index 87ce492..506e126 100644
--- a/docs/VERSION.txt
+++ b/docs/VERSION.txt
@@ -1 +1 @@
-3.5.2
+3.5.3 beta1
diff --git a/ktapi/KTAPIDocument.inc.php b/ktapi/KTAPIDocument.inc.php
index 2639dcd..55e9492 100644
--- a/ktapi/KTAPIDocument.inc.php
+++ b/ktapi/KTAPIDocument.inc.php
@@ -1443,6 +1443,24 @@ class KTAPI_Document extends KTAPI_FolderItem
}
+ function get_permission_string($document)
+ {
+ $perms = 'R';
+ if (Permission::userHasDocumentWritePermission($document))
+ {
+ $perms .= 'W';
+
+ $user_id = $_SESSION['userID'];
+ $co_user_id = $document->getCheckedOutUserID();
+
+ if (!empty($co_user_id) && ($user_id == $co_user_id))
+ {
+ $perms .= 'E';
+ }
+ }
+ return $perms;
+ }
+
/**
* This returns detailed information on the document.
*
@@ -1587,7 +1605,7 @@ class KTAPI_Document extends KTAPI_FolderItem
$detail['is_immutable'] = (bool) $document->getImmutable();
// check permissions
- $detail['permissions'] = 'n/a';
+ $detail['permissions'] = KTWSAPI_Document::get_permission_string($document);
// get workflow name
$workflowid = $document->getWorkflowId();
diff --git a/ktapi/KTAPIFolder.inc.php b/ktapi/KTAPIFolder.inc.php
index 739c4e2..99b02bb 100644
--- a/ktapi/KTAPIFolder.inc.php
+++ b/ktapi/KTAPIFolder.inc.php
@@ -321,6 +321,16 @@ class KTAPI_Folder extends KTAPI_FolderItem
return $user;
}
+ function get_permission_string($folder)
+ {
+ $perms = 'R';
+ if (Permission::userHasFolderWritePermission($folder))
+ {
+ $perms .= 'W';
+ }
+ return $perms;
+ }
+
function get_listing($depth=1, $what='DF')
{
if ($depth < 1)
@@ -389,7 +399,7 @@ class KTAPI_Folder extends KTAPI_FolderItem
'version' => 'n/a',
'is_immutable'=> 'n/a',
- 'permissions' => 'n/a',
+ 'permissions' => KTWSAPI_Folder::get_permission_string($folder),
'workflow'=>'n/a',
'workflow_state'=>'n/a',
@@ -523,7 +533,7 @@ class KTAPI_Folder extends KTAPI_FolderItem
'version' => $document->getMajorVersionNumber() . '.' . $document->getMinorVersionNumber(),
'is_immutable'=> $document->getImmutable()?'true':'false',
- 'permissions' => 'n/a',
+ 'permissions' => KTWSAPI_Document::get_permission_string($document),
'workflow'=> $workflow,
'workflow_state'=> $state,
diff --git a/lib/browse/Criteria.inc b/lib/browse/Criteria.inc
index eedd9fd..539c909 100644
--- a/lib/browse/Criteria.inc
+++ b/lib/browse/Criteria.inc
@@ -731,16 +731,21 @@ class SizeCriterion extends BrowseCriterion {
'M'=>'Megabytes');
var $aTypeAssocs = array('B' => 1, 'KB' => 1024, 'M' => 1048576);
+
+ var $aCmps = array();
- var $aCmps = array('LT'=>'Less than',
- 'GT'=>'Greater than',
- 'EQ'=>'Equal to',
- 'NEQ'=>'Not equal to');
-
- var $aCmpAssocs = array('LT' => '<', 'GT' => '>', 'EQ' => '=', 'NEQ' => '!=');
+ var $aCmpAssocs = array();
function SizeCriterion() {
- $this->sDisplay = _kt('File Size');
+ $this->sDisplay = _kt('File Size');
+
+ $this->aCmps = array('LT'=>_kt('Less than'),
+ 'GT'=>_kt('Greater than'),
+ 'EQ'=>_kt('Equal to'),
+ 'NEQ'=>_kt('Not equal to'));
+
+ $this->aCmpAssocs = array('LT' => '<', 'GT' => '>', 'EQ' => '=', 'NEQ' => '!=');
+
}
function documentDisplay ($oDocument) {
@@ -918,15 +923,18 @@ class TagCloudCriterion extends BrowseCriterion {
class DateCreatedDeltaCriterion extends DateCreatedCriterion {
var $sDocumentField = 'created';
var $sSortField = 'created';
- var $aTypes = array('MINUTE'=>'Minutes',
- 'HOUR'=>'Hours',
- 'DAY'=>'Days',
- 'MONTH'=>'Months',
- 'YEAR'=>'Years');
+ var $aTypes = array();
var $sNamespace = 'ktcore.criteria.datecreateddelta';
function DateCreatedDeltaCriterion() {
- $this->sDisplay = _kt('Date Created Delta');
+ $this->sDisplay = _kt('Date Created Delta');
+
+ $this->aTypes = array('MINUTE'=>_kt('Minutes'),
+ 'HOUR'=>_kt('Hours'),
+ 'DAY'=>_kt('Days'),
+ 'MONTH'=>_kt('Months'),
+ 'YEAR'=>_kt('Years')
+ );
}
function parameterDisplay($aData) {
@@ -951,7 +959,7 @@ class DateCreatedDeltaCriterion extends DateCreatedCriterion {
$sToRender = $this->getNotWidget($aPreValue);
- $sToRender .= ''.$sSelect.' ago';
+ $sToRender .= ''.$sSelect._kt(' ago');
return $sToRender;
}
diff --git a/lib/util/ktutil.inc b/lib/util/ktutil.inc
index fed2c4e..9e435b7 100644
--- a/lib/util/ktutil.inc
+++ b/lib/util/ktutil.inc
@@ -49,6 +49,14 @@ class KTUtil {
const TB = 1099511627776;
const PB = 1125899906842624;
+ static function kt_url()
+ {
+ global $default;
+
+ return ($default->sslEnabled ? 'https' : 'http') .'://'.$_SERVER['HTTP_HOST'] . $default->rootUrl;
+
+ }
+
static function computePeriod($diff, $suffix = null, $returnArray=false)
{
if (is_null($suffix))
@@ -229,7 +237,7 @@ class KTUtil {
if (!is_array($aArray)) {
$aArray = (array) $aArray;
}
-
+
if ($aArray !== 0 && $aArray !== '0' && empty($aArray)) {
return $mDefault;
}
diff --git a/plugins/search2/openSearchDescription.php b/plugins/search2/openSearchDescription.php
new file mode 100644
index 0000000..e993991
--- /dev/null
+++ b/plugins/search2/openSearchDescription.php
@@ -0,0 +1,24 @@
+";
+
+$xml = "\r\n";
+$xml .= "KnowledgeTree " ._kt('Quick Search') . "\r\n";
+$xml .= "" . _kt('Search metadata and content on KnowledgeTree') . "\r\n";
+$xml .= "$url/resources/favicon.ico\r\n";
+$xml .= "\r\n";
+$xml .= "UTF-8\n";
+$xml .= "UTF-8\n";
+$xml .= "";
+
+print $xml;
+
+?>
\ No newline at end of file
diff --git a/templates/kt3/standard_page.smarty b/templates/kt3/standard_page.smarty
index 871be31..d795443 100644
--- a/templates/kt3/standard_page.smarty
+++ b/templates/kt3/standard_page.smarty
@@ -20,6 +20,8 @@
+
+
{if $refreshTimeout}