diff --git a/views/bootstrap/class.Bootstrap.php b/views/bootstrap/class.Bootstrap.php
index 526ee5ebc..2c6f85dd2 100644
--- a/views/bootstrap/class.Bootstrap.php
+++ b/views/bootstrap/class.Bootstrap.php
@@ -1593,11 +1593,11 @@ $(document).ready(function() {
if($path || $expandtree>=$level) {
if($path)
$pathfolder = array_shift($path);
+ $children = array();
$subfolders = $folder->getSubFolders(isset($orderby[0]) ? $orderby[0] : '', $orderdir);
$subfolders = SeedDMS_Core_DMS::filterAccess($subfolders, $user, $accessmode);
- $children = array();
foreach($subfolders as $subfolder) {
- $node = array('label'=>$subfolder->getName(), 'id'=>$subfolder->getID(), 'load_on_demand'=>($subfolder->hasSubFolders() || ($subfolder->hasDocuments() && $showdocs)) ? true : false, 'is_folder'=>true);
+ $node = array('label'=>$subfolder->getName(), 'id'=>$subfolder->getID(), 'load_on_demand'=>($subfolder->hasSubFolders() || ($subfolder->hasDocuments() && $showdocs)) ? false : false, 'is_folder'=>true);
if($expandtree>=$level || $pathfolder->getID() == $subfolder->getID()) {
$node['children'] = jqtree($path, $subfolder, $user, $accessmode, $showdocs, $expandtree, $orderby, $level+1);
if($showdocs) {
@@ -1617,7 +1617,7 @@ $(document).ready(function() {
$subfolders = SeedDMS_Core_DMS::filterAccess($subfolders, $user, $accessmode);
$children = array();
foreach($subfolders as $subfolder) {
- $node = array('label'=>$subfolder->getName(), 'id'=>$subfolder->getID(), 'load_on_demand'=>($subfolder->hasSubFolders() || ($subfolder->hasDocuments() && $showdocs)) ? true : false, 'is_folder'=>true);
+ $node = array('label'=>$subfolder->getName(), 'id'=>$subfolder->getID(), 'load_on_demand'=>($subfolder->hasSubFolders() || ($subfolder->hasDocuments() && $showdocs)) ? false : false, 'is_folder'=>true);
$children[] = $node;
}
return $children;
@@ -1636,7 +1636,7 @@ $(document).ready(function() {
$node['load_on_demand'] = false;
$node['children'] = array();
} else {
- $node['children'] = jqtree($path, $folder, $this->params['user'], $accessmode, $showdocs, $expandtree, $orderby, 0);
+ $node['children'] = jqtree($path, $folder, $this->params['user'], $accessmode, $showdocs, 0 /*$expandtree*/, $orderby, 0);
if($showdocs) {
$documents = $folder->getDocuments(isset($orderby[0]) ? $orderby[0] : '', $orderdir);
$documents = SeedDMS_Core_DMS::filterAccess($documents, $this->params['user'], $accessmode);
@@ -1656,14 +1656,14 @@ $(document).ready(function() {
} else {
$root = $this->params['dms']->getFolder($this->params['rootfolderid']);
- $tree = array(array('label'=>$root->getName(), 'id'=>$root->getID(), 'load_on_demand'=>true, 'is_folder'=>true));
+ $tree = array(array('label'=>$root->getName(), 'id'=>$root->getID(), 'load_on_demand'=>false, 'is_folder'=>true));
}
-
?>
var data = ;
$(function() {
$('#jqtree').tree({
// saveState: true,
+ selectable: false,
data: data,
saveState: 'jqtree',
openedIcon: $(''),
@@ -1687,17 +1687,19 @@ $(function() {
// Unfold node for currently selected folder
$('#jqtree').tree('openNode', $('#jqtree').tree('getNodeById', ), false);
$('#jqtree').on(
- 'tree.select',
+ 'tree.click',
function(event) {
var node = event.node;
+ if(!node)
+ return;
$('#jqtree').tree('openNode', node);
// event.preventDefault();
if(node.is_folder) {
if(typeof node.fetched == 'undefined') {
node.fetched = true;
$(this).tree('loadDataFromUrl', node, function () {
- $(this).tree('openNode', node);}
- );
+ $(this).tree('openNode', node);
+ });
}
folderSelected(node.id, node.name);
} else
diff --git a/views/bootstrap/class.ViewFolder.php b/views/bootstrap/class.ViewFolder.php
index 0909e7f87..27b8bf985 100644
--- a/views/bootstrap/class.ViewFolder.php
+++ b/views/bootstrap/class.ViewFolder.php
@@ -105,7 +105,9 @@ class SeedDMS_View_ViewFolder extends SeedDMS_Bootstrap_Style {
parent::jsTranslations(array('cancel', 'splash_move_document', 'confirm_move_document', 'move_document', 'confirm_transfer_link_document', 'transfer_content', 'link_document', 'splash_move_folder', 'confirm_move_folder', 'move_folder'));
?>
function folderSelected(id, name) {
- window.location = '../out/out.ViewFolder.php?folderid=' + id;
+// window.location = '../out/out.ViewFolder.php?folderid=' + id;
+console.log(id);
+ $('div.ajax').trigger('update', {folderid: id});
}
function loadMoreObjects(element, limit) {
@@ -159,6 +161,221 @@ $('#loadmore').click(function(e) {
$this->printDeleteDocumentButtonJs();
} /* }}} */
+ function folderInfos() { /* {{{ */
+ $dms = $this->params['dms'];
+ $user = $this->params['user'];
+ $folder = $this->params['folder'];
+
+ $txt = $this->callHook('folderInfo', $folder);
+ if(is_string($txt))
+ echo $txt;
+ else {
+
+ $owner = $folder->getOwner();
+ $this->contentHeading(getMLText("folder_infos"));
+ $this->contentContainerStart();
+ echo "
\n";
+ if($user->isAdmin()) {
+ echo "";
+ echo "".getMLText("id").": | \n";
+ echo "".htmlspecialchars($folder->getID())." | \n";
+ echo "
";
+ }
+ echo "";
+ echo "".getMLText("owner").": | \n";
+ echo "getEmail())."\">".htmlspecialchars($owner->getFullName())." | \n";
+ echo "
";
+ echo "";
+ echo "".getMLText("creation_date").": | ";
+ echo "".getLongReadableDate($folder->getDate())." | ";
+ echo "
";
+ if($folder->getComment()) {
+ echo "";
+ echo "".getMLText("comment").": | \n";
+ echo "".htmlspecialchars($folder->getComment())." | \n";
+ echo "
";
+ }
+
+ if($user->isAdmin()) {
+ echo "";
+ echo "".getMLText('default_access').": | ";
+ echo "".$this->getAccessModeText($folder->getDefaultAccess())." | ";
+ echo "
";
+ if($folder->inheritsAccess()) {
+ echo "";
+ echo "".getMLText("access_mode").": | \n";
+ echo "";
+ echo getMLText("inherited")." ";
+ $this->printAccessList($folder);
+ echo " |
";
+ } else {
+ echo "";
+ echo "".getMLText('access_mode').": | ";
+ echo "";
+ $this->printAccessList($folder);
+ echo " | ";
+ echo "
";
+ }
+ }
+ $attributes = $folder->getAttributes();
+ if($attributes) {
+ foreach($attributes as $attribute) {
+ $arr = $this->callHook('showFolderAttribute', $folder, $attribute);
+ if(is_array($arr)) {
+ echo $txt;
+ echo "";
+ echo "".$arr[0].": | ";
+ echo "".$arr[1].": | ";
+ echo "
";
+ } else {
+ $attrdef = $attribute->getAttributeDefinition();
+ ?>
+
+ getName()); ?>: |
+ getValueAsArray())); ?> |
+
+\n";
+ $this->contentContainerEnd();
+ }
+ } /* }}} */
+
+ function folderList() { /* {{{ */
+ $dms = $this->params['dms'];
+ $user = $this->params['user'];
+ $folder = $this->params['folder'];
+ $folderid = $folder->getId();
+ $orderby = $this->params['orderby'];
+ $orderdir = (isset($orderby[1]) ? ($orderby[1] == 'd' ? 'desc' : 'asc') : 'asc');
+ $cachedir = $this->params['cachedir'];
+ $maxItemsPerPage = $this->params['maxItemsPerPage'];
+ $incItemsPerPage = $this->params['incItemsPerPage'];
+ $previewwidth = $this->params['previewWidthList'];
+ $previewconverters = $this->params['previewConverters'];
+ $timeout = $this->params['timeout'];
+ $xsendfile = $this->params['xsendfile'];
+
+ $previewer = new SeedDMS_Preview_Previewer($cachedir, $previewwidth, $timeout, $xsendfile);
+ $previewer->setConverters($previewconverters);
+
+ $txt = $this->callHook('listHeader', $folder);
+ if(is_string($txt))
+ echo $txt;
+ else
+ $this->contentHeading(getMLText("folder_contents"));
+
+ $subFolders = $this->callHook('folderGetSubFolders', $folder, $orderby[0], $orderdir);
+ if($subFolders === null)
+ $subFolders = $folder->getSubFolders($orderby[0], $orderdir);
+ $subFolders = SeedDMS_Core_DMS::filterAccess($subFolders, $user, M_READ);
+ $documents = $this->callHook('folderGetDocuments', $folder, $orderby[0], $orderdir);
+ if($documents === null)
+ $documents = $folder->getDocuments($orderby[0], $orderdir);
+ $documents = SeedDMS_Core_DMS::filterAccess($documents, $user, M_READ);
+
+ $txt = $this->callHook('folderListPreContent', $folder, $subFolders, $documents);
+ if(is_string($txt))
+ echo $txt;
+ $i = 0;
+ if ((count($subFolders) > 0)||(count($documents) > 0)){
+ $txt = $this->callHook('folderListHeader', $folder, $orderby, $orderdir);
+ if(is_string($txt))
+ echo $txt;
+ else {
+ print "";
+ print "\n\n";
+ print " | \n";
+ print "".getMLText("name");
+ print " ".($orderby=="n"||$orderby=="na"?' ':($orderby=="nd"?' ':' '))."";
+ print " ".($orderby=="s"||$orderby=="sa"?' ':($orderby=="sd"?' ':' '))."";
+ print " ".($orderby=="d"||$orderby=="da"?' ':($orderby=="dd"?' ':' '))."";
+ print " | \n";
+ // print "".getMLText("owner")." | \n";
+ print "".getMLText("status")." | \n";
+ // print "".getMLText("version")." | \n";
+ print "".getMLText("action")." | \n";
+ print "
\n\n\n";
+ }
+
+ foreach($subFolders as $subFolder) {
+ if(!$maxItemsPerPage || $i < $maxItemsPerPage) {
+ $txt = $this->callHook('folderListItem', $subFolder, 'viewfolder');
+ if(is_string($txt))
+ echo $txt;
+ else {
+ echo $this->folderListRow($subFolder);
+ }
+ }
+ $i++;
+ }
+
+ if($subFolders && $documents) {
+ if(!$maxItemsPerPage || $maxItemsPerPage > count($subFolders)) {
+ $txt = $this->callHook('folderListSeparator', $folder);
+ if(is_string($txt))
+ echo $txt;
+ }
+ }
+
+ foreach($documents as $document) {
+ if(!$maxItemsPerPage || $i < $maxItemsPerPage) {
+ $document->verifyLastestContentExpriry();
+ $txt = $this->callHook('documentListItem', $document, $previewer, false, 'viewfolder');
+ if(is_string($txt))
+ echo $txt;
+ else {
+ echo $this->documentListRow($document, $previewer);
+ }
+ }
+ $i++;
+ }
+
+ $txt = $this->callHook('folderListFooter', $folder);
+ if(is_string($txt))
+ echo $txt;
+ else
+ echo "\n
\n";
+
+ if($maxItemsPerPage && $i > $maxItemsPerPage)
+ echo "";
+ }
+ else printMLText("empty_folder_list");
+
+ $txt = $this->callHook('folderListPostContent', $folder, $subFolders, $documents);
+ if(is_string($txt))
+ echo $txt;
+
+ } /* }}} */
+
+ function navigation() { /* {{{ */
+ $dms = $this->params['dms'];
+ $user = $this->params['user'];
+ $folder = $this->params['folder'];
+
+ $txt = $this->callHook('folderMenu', $folder);
+ if(is_string($txt))
+ echo $txt;
+ else {
+ $this->pageNavigation($this->getFolderPathHTML($folder), "view_folder", $folder);
+ }
+
+ echo $this->callHook('preContent');
+ } /* }}} */
+
+ function dropUpload() { /* {{{ */
+ $dms = $this->params['dms'];
+ $user = $this->params['user'];
+ $folder = $this->params['folder'];
+
+ $this->contentHeading(getMLText("dropupload"), true);
+?>
+
+params['dms'];
$user = $this->params['user'];
@@ -254,25 +471,20 @@ $('#loadmore').click(function(e) {
$xsendfile = $this->params['xsendfile'];
$folderid = $folder->getId();
+ $previewer = new SeedDMS_Preview_Previewer($cachedir, $previewwidth, $timeout, $xsendfile);
+ $previewer->setConverters($previewconverters);
$this->htmlAddHeader(''."\n", 'js');
echo $this->callHook('startPage');
$this->htmlStartPage(getMLText("folder_title", array("foldername" => htmlspecialchars($folder->getName()))));
-
$this->globalNavigation($folder);
$this->contentStart();
- $txt = $this->callHook('folderMenu', $folder);
- if(is_string($txt))
- echo $txt;
- else {
- $this->pageNavigation($this->getFolderPathHTML($folder), "view_folder", $folder);
- }
- $previewer = new SeedDMS_Preview_Previewer($cachedir, $previewwidth, $timeout, $xsendfile);
- $previewer->setConverters($previewconverters);
-
- echo $this->callHook('preContent');
+// $this->navigation();
+?>
+ getID()."\"" : "") ?>>
+\n";
@@ -313,184 +525,27 @@ $('#loadmore').click(function(e) {
echo "";
echo "
";
}
- $txt = $this->callHook('folderInfo', $folder);
- if(is_string($txt))
- echo $txt;
- else {
- $owner = $folder->getOwner();
- $this->contentHeading(getMLText("folder_infos"));
- $this->contentContainerStart();
- echo "
\n";
- if($user->isAdmin()) {
- echo "";
- echo "".getMLText("id").": | \n";
- echo "".htmlspecialchars($folder->getID())." | \n";
- echo "
";
- }
- echo "";
- echo "".getMLText("owner").": | \n";
- echo "getEmail())."\">".htmlspecialchars($owner->getFullName())." | \n";
- echo "
";
- echo "";
- echo "".getMLText("creation_date").": | ";
- echo "".getLongReadableDate($folder->getDate())." | ";
- echo "
";
- if($folder->getComment()) {
- echo "";
- echo "".getMLText("comment").": | \n";
- echo "".htmlspecialchars($folder->getComment())." | \n";
- echo "
";
- }
-
- if($user->isAdmin()) {
- echo "";
- echo "".getMLText('default_access').": | ";
- echo "".$this->getAccessModeText($folder->getDefaultAccess())." | ";
- echo "
";
- if($folder->inheritsAccess()) {
- echo "";
- echo "".getMLText("access_mode").": | \n";
- echo "";
- echo getMLText("inherited")." ";
- $this->printAccessList($folder);
- echo " |
";
- } else {
- echo "";
- echo "".getMLText('access_mode').": | ";
- echo "";
- $this->printAccessList($folder);
- echo " | ";
- echo "
";
- }
- }
- $attributes = $folder->getAttributes();
- if($attributes) {
- foreach($attributes as $attribute) {
- $arr = $this->callHook('showFolderAttribute', $folder, $attribute);
- if(is_array($arr)) {
- echo $txt;
- echo "";
- echo "".$arr[0].": | ";
- echo "".$arr[1].": | ";
- echo "
";
- } else {
- $attrdef = $attribute->getAttributeDefinition();
- ?>
-
- getName()); ?>: |
- getValueAsArray())); ?> |
-
+// $this->folderInfos();
+?>
+ getID()."\"" : "") ?>>
\n";
- $this->contentContainerEnd();
- }
if ($enableDropUpload && $folder->getAccessMode($user) >= M_READWRITE) {
echo "";
echo "";
- $this->contentHeading(getMLText("dropupload"), true);
-// $this->addFooterJS("SeedDMSUpload.setUrl('../op/op.Ajax.php');");
-// $this->addFooterJS("SeedDMSUpload.setAbortBtnLabel('".getMLText("cancel")."');");
-// $this->addFooterJS("SeedDMSUpload.setEditBtnLabel('".getMLText("edit_document_props")."');");
-// $this->addFooterJS("SeedDMSUpload.setMaxFileSize(".SeedDMS_Core_File::parse_filesize(ini_get("upload_max_filesize")).");");
-// $this->addFooterJS("SeedDMSUpload.setMaxFileSizeMsg('".getMLText("uploading_maxsize")."');");
+// $this->dropUpload();
?>
-
+
getID()."\"" : "") ?>>
";
echo "
";
}
- $txt = $this->callHook('listHeader', $folder);
- if(is_string($txt))
- echo $txt;
- else
- $this->contentHeading(getMLText("folder_contents"));
-
- $subFolders = $this->callHook('folderGetSubFolders', $folder, $orderby[0], $orderdir);
- if($subFolders === null)
- $subFolders = $folder->getSubFolders($orderby[0], $orderdir);
- $subFolders = SeedDMS_Core_DMS::filterAccess($subFolders, $user, M_READ);
- $documents = $this->callHook('folderGetDocuments', $folder, $orderby[0], $orderdir);
- if($documents === null)
- $documents = $folder->getDocuments($orderby[0], $orderdir);
- $documents = SeedDMS_Core_DMS::filterAccess($documents, $user, M_READ);
-
- $txt = $this->callHook('folderListPreContent', $folder, $subFolders, $documents);
- if(is_string($txt))
- echo $txt;
- $i = 0;
- if ((count($subFolders) > 0)||(count($documents) > 0)){
- $txt = $this->callHook('folderListHeader', $folder, $orderby, $orderdir);
- if(is_string($txt))
- echo $txt;
- else {
- print "";
- print "\n\n";
- print " | \n";
- print "".getMLText("name");
- print " ".($orderby=="n"||$orderby=="na"?' ':($orderby=="nd"?' ':' '))."";
- print " ".($orderby=="s"||$orderby=="sa"?' ':($orderby=="sd"?' ':' '))."";
- print " ".($orderby=="d"||$orderby=="da"?' ':($orderby=="dd"?' ':' '))."";
- print " | \n";
- // print "".getMLText("owner")." | \n";
- print "".getMLText("status")." | \n";
- // print "".getMLText("version")." | \n";
- print "".getMLText("action")." | \n";
- print "
\n\n\n";
- }
-
- foreach($subFolders as $subFolder) {
- if(!$maxItemsPerPage || $i < $maxItemsPerPage) {
- $txt = $this->callHook('folderListItem', $subFolder, 'viewfolder');
- if(is_string($txt))
- echo $txt;
- else {
- echo $this->folderListRow($subFolder);
- }
- }
- $i++;
- }
-
- if($subFolders && $documents) {
- if(!$maxItemsPerPage || $maxItemsPerPage > count($subFolders)) {
- $txt = $this->callHook('folderListSeparator', $folder);
- if(is_string($txt))
- echo $txt;
- }
- }
-
- foreach($documents as $document) {
- if(!$maxItemsPerPage || $i < $maxItemsPerPage) {
- $document->verifyLastestContentExpriry();
- $txt = $this->callHook('documentListItem', $document, $previewer, false, 'viewfolder');
- if(is_string($txt))
- echo $txt;
- else {
- echo $this->documentListRow($document, $previewer);
- }
- }
- $i++;
- }
-
- $txt = $this->callHook('folderListFooter', $folder);
- if(is_string($txt))
- echo $txt;
- else
- echo "\n
\n";
-
- if($maxItemsPerPage && $i > $maxItemsPerPage)
- echo "";
- }
- else printMLText("empty_folder_list");
-
- $txt = $this->callHook('folderListPostContent', $folder, $subFolders, $documents);
- if(is_string($txt))
- echo $txt;
-
+// $this->folderList();
+?>
+ getID()."\"" : "") ?>>
+\n"; // End of right column div
echo "\n"; // End of div around left and right column