From 0791afd2aa0dc214a3804bd3955a2b0e074ff06f Mon Sep 17 00:00:00 2001 From: kevin_fourie Date: Wed, 26 Mar 2008 19:53:37 +0000 Subject: [PATCH] Merged in from DEV trunk... --- config/config.ini | 10 ++++++++++ config/dmsDefaults.php | 68 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----- lib/documentmanagement/documentutil.inc.php | 8 +++++++- lib/triggers/triggerregistry.inc.php | 3 ++- login.php | 8 ++------ resources/css/kt-framing.css | 193 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------------------------------------------ resources/js/search2widget.js | 33 +++++++++++++++++++++++++++++++++ resources/mimetypes/big/avi.png | Bin 0 -> 9985 bytes resources/mimetypes/big/c.png | Bin 0 -> 10941 bytes resources/mimetypes/big/compressed.png | Bin 0 -> 16713 bytes resources/mimetypes/big/cpp.png | Bin 0 -> 11285 bytes resources/mimetypes/big/css.png | Bin 0 -> 10483 bytes resources/mimetypes/big/deb.png | Bin 0 -> 18612 bytes resources/mimetypes/big/default.png | Bin 0 -> 4236 bytes resources/mimetypes/big/djvu.png | Bin 0 -> 16681 bytes resources/mimetypes/big/doc-alt.png | Bin 0 -> 15997 bytes resources/mimetypes/big/doc-alt2.png | Bin 0 -> 16130 bytes resources/mimetypes/big/doc.png | Bin 0 -> 14780 bytes resources/mimetypes/big/dvi.png | Bin 0 -> 16454 bytes resources/mimetypes/big/exe.png | Bin 0 -> 13669 bytes resources/mimetypes/big/f.png | Bin 0 -> 10093 bytes resources/mimetypes/big/generic/pres.png | Bin 0 -> 12894 bytes resources/mimetypes/big/generic/sound.png | Bin 0 -> 11322 bytes resources/mimetypes/big/generic/source.png | Bin 0 -> 13996 bytes resources/mimetypes/big/generic/text.png | Bin 0 -> 9522 bytes resources/mimetypes/big/generic/video.png | Bin 0 -> 8521 bytes resources/mimetypes/big/generic/wordprocessing.png | Bin 0 -> 11560 bytes resources/mimetypes/big/h.png | Bin 0 -> 10056 bytes resources/mimetypes/big/html.png | Bin 0 -> 12947 bytes resources/mimetypes/big/image.png | Bin 0 -> 11432 bytes resources/mimetypes/big/iso.png | Bin 0 -> 13570 bytes resources/mimetypes/big/j.png | Bin 0 -> 10175 bytes resources/mimetypes/big/jar.png | Bin 0 -> 17523 bytes resources/mimetypes/big/java.png | Bin 0 -> 10434 bytes resources/mimetypes/big/l.png | Bin 0 -> 10230 bytes resources/mimetypes/big/mid.png | Bin 0 -> 7250 bytes resources/mimetypes/big/midi.png | Bin 0 -> 7250 bytes resources/mimetypes/big/mov.png | Bin 0 -> 12723 bytes resources/mimetypes/big/o.png | Bin 0 -> 10439 bytes resources/mimetypes/big/ogg.png | Bin 0 -> 13688 bytes resources/mimetypes/big/p.png | Bin 0 -> 10345 bytes resources/mimetypes/big/pdf.png | Bin 0 -> 10022 bytes resources/mimetypes/big/pl.png | Bin 0 -> 10810 bytes resources/mimetypes/big/pps.png | Bin 0 -> 17348 bytes resources/mimetypes/big/ppt.png | Bin 0 -> 17348 bytes resources/mimetypes/big/ps.png | Bin 0 -> 10597 bytes resources/mimetypes/big/py.png | Bin 0 -> 11265 bytes resources/mimetypes/big/rm.png | Bin 0 -> 12001 bytes resources/mimetypes/big/rpm.png | Bin 0 -> 17841 bytes resources/mimetypes/big/s.png | Bin 0 -> 10659 bytes resources/mimetypes/big/source.png | Bin 0 -> 13996 bytes resources/mimetypes/big/spreadsheet.png | Bin 0 -> 15379 bytes resources/mimetypes/big/svg.png | Bin 0 -> 9963 bytes resources/mimetypes/big/tar.png | Bin 0 -> 16713 bytes resources/mimetypes/big/tex.png | Bin 0 -> 8985 bytes resources/mimetypes/big/text.png | Bin 0 -> 9522 bytes resources/mimetypes/big/tgz.png | Bin 0 -> 17947 bytes resources/mimetypes/big/ttf.png | Bin 0 -> 10485 bytes resources/mimetypes/big/txt.png | Bin 0 -> 9522 bytes resources/mimetypes/big/vcal.png | Bin 0 -> 11768 bytes resources/mimetypes/big/vcard.png | Bin 0 -> 12016 bytes resources/mimetypes/big/wmv.png | Bin 0 -> 19071 bytes resources/mimetypes/big/xls.png | Bin 0 -> 23856 bytes resources/mimetypes/big/y.png | Bin 0 -> 10297 bytes search2.php | 193 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- search2/indexing/indexers/JavaXMLRPCLuceneIndexer.inc.php | 2 +- templates/kt3/standard_page.smarty | 11 ++++++++++- 67 files changed, 417 insertions(+), 112 deletions(-) create mode 100755 resources/mimetypes/big/avi.png create mode 100755 resources/mimetypes/big/c.png create mode 100755 resources/mimetypes/big/compressed.png create mode 100755 resources/mimetypes/big/cpp.png create mode 100755 resources/mimetypes/big/css.png create mode 100755 resources/mimetypes/big/deb.png create mode 100755 resources/mimetypes/big/default.png create mode 100755 resources/mimetypes/big/djvu.png create mode 100755 resources/mimetypes/big/doc-alt.png create mode 100755 resources/mimetypes/big/doc-alt2.png create mode 100755 resources/mimetypes/big/doc.png create mode 100755 resources/mimetypes/big/dvi.png create mode 100755 resources/mimetypes/big/exe.png create mode 100755 resources/mimetypes/big/f.png create mode 100755 resources/mimetypes/big/generic/pres.png create mode 100755 resources/mimetypes/big/generic/sound.png create mode 100755 resources/mimetypes/big/generic/source.png create mode 100755 resources/mimetypes/big/generic/text.png create mode 100755 resources/mimetypes/big/generic/video.png create mode 100755 resources/mimetypes/big/generic/wordprocessing.png create mode 100755 resources/mimetypes/big/h.png create mode 100755 resources/mimetypes/big/html.png create mode 100755 resources/mimetypes/big/image.png create mode 100755 resources/mimetypes/big/iso.png create mode 100755 resources/mimetypes/big/j.png create mode 100755 resources/mimetypes/big/jar.png create mode 100755 resources/mimetypes/big/java.png create mode 100755 resources/mimetypes/big/l.png create mode 100755 resources/mimetypes/big/mid.png create mode 100755 resources/mimetypes/big/midi.png create mode 100755 resources/mimetypes/big/mov.png create mode 100755 resources/mimetypes/big/o.png create mode 100755 resources/mimetypes/big/ogg.png create mode 100755 resources/mimetypes/big/p.png create mode 100755 resources/mimetypes/big/pdf.png create mode 100755 resources/mimetypes/big/pl.png create mode 100755 resources/mimetypes/big/pps.png create mode 100755 resources/mimetypes/big/ppt.png create mode 100755 resources/mimetypes/big/ps.png create mode 100755 resources/mimetypes/big/py.png create mode 100755 resources/mimetypes/big/rm.png create mode 100755 resources/mimetypes/big/rpm.png create mode 100755 resources/mimetypes/big/s.png create mode 100755 resources/mimetypes/big/source.png create mode 100755 resources/mimetypes/big/spreadsheet.png create mode 100755 resources/mimetypes/big/svg.png create mode 100755 resources/mimetypes/big/tar.png create mode 100755 resources/mimetypes/big/tex.png create mode 100755 resources/mimetypes/big/text.png create mode 100755 resources/mimetypes/big/tgz.png create mode 100755 resources/mimetypes/big/ttf.png create mode 100755 resources/mimetypes/big/txt.png create mode 100755 resources/mimetypes/big/vcal.png create mode 100755 resources/mimetypes/big/vcard.png create mode 100755 resources/mimetypes/big/wmv.png create mode 100755 resources/mimetypes/big/xls.png create mode 100755 resources/mimetypes/big/y.png diff --git a/config/config.ini b/config/config.ini index 6a6b2e7..604cb72 100644 --- a/config/config.ini +++ b/config/config.ini @@ -279,10 +279,20 @@ df = df ; defaults to 25 resultsPerPage = default +; The format in which to display the results +; options are searchengine or browseview +; defaults to searchengine +resultsDisplayFormat = default + ; The date format used when making queries using widgets ; defaults to Y-m-d dateFormat = default +[browse] +; The document info box / preview is activated by mousing over or clicking on the icon +; Options: mouse-over (default); onclick +previewActivation = default + [indexer] ; The core indexing class ;coreClass=PHPLuceneIndexer diff --git a/config/dmsDefaults.php b/config/dmsDefaults.php index 015e810..ea06064 100644 --- a/config/dmsDefaults.php +++ b/config/dmsDefaults.php @@ -489,13 +489,20 @@ function catchFatalErrors($p_OnOff='On'){ $oKTConfig->setdefaultns('KnowledgeTree', 'execSearchPath', $_SERVER['PATH']); $oKTConfig->setdefaultns('KnowledgeTree', 'pathInfoSupport', false); $oKTConfig->setdefaultns('KnowledgeTree', 'magicDatabase', KTInit::detectMagicFile()); - + $oKTConfig->setdefaultns('KnowledgeTree', 'schedulerInterval', 30); + $oKTConfig->setdefaultns('dashboard', 'alwaysShowYCOD', true); $oKTConfig->setdefaultns('storage', 'manager', 'KTOnDiskHashedStorageManager'); $oKTConfig->setdefaultns('config', 'useDatabaseConfiguration', false); + $oKTConfig->setdefaultns('urls', 'varDirectory', '${fileSystemRoot}/var'); + $oKTConfig->setdefaultns('urls', 'logDirectory', '${varDirectory}/log'); + $oKTConfig->setdefaultns('urls', 'documentRoot', '${varDirectory}/Documents'); + $oKTConfig->setdefaultns('urls', 'uiDirectory', '${fileSystemRoot}/presentation/lookAndFeel/knowledgeTree'); $oKTConfig->setdefaultns('urls', 'tmpDirectory', '${varDirectory}/tmp'); + $oKTConfig->setdefaultns('urls', 'graphicsUrl', '${rootUrl}/graphics'); + $oKTConfig->setdefaultns('urls', 'uiUrl', '${rootUrl}/presentation/lookAndFeel/knowledgeTree'); $oKTConfig->setdefaultns('urls', 'stopwordsFile', '${fileSystemRoot}/config/stopwords.txt'); $oKTConfig->setdefaultns('tweaks', 'browseToUnitFolder', false); @@ -503,27 +510,74 @@ function catchFatalErrors($p_OnOff='On'){ $oKTConfig->setdefaultns('tweaks', 'phpErrorLogFile', false); $oKTConfig->setdefaultns('tweaks', 'developmentWindowLog', false); $oKTConfig->setdefaultns('tweaks', 'noisyBulkOperations', false); + + $oKTConfig->setdefaultns('email', 'emailServer', 'none'); + $oKTConfig->setdefaultns('email', 'emailPort', ''); + $oKTConfig->setdefaultns('email', 'emailAuthentication', false); + $oKTConfig->setdefaultns('email', 'emailUsername', 'username'); + $oKTConfig->setdefaultns('email', 'emailPassword', 'password'); + $oKTConfig->setdefaultns('email', 'emailFrom', 'kt@example.org'); + $oKTConfig->setdefaultns('email', 'emailFromName', 'KnowledgeTree Document Management System'); + $oKTConfig->setdefaultns('email', 'allowAttachment', false); + $oKTConfig->setdefaultns('email', 'allowEmailAddresses', false); + $oKTConfig->setdefaultns('email', 'sendAsSystem', false); + $oKTConfig->setdefaultns('email', 'onlyOwnGroups', false); $oKTConfig->setdefaultns('user_prefs', 'passwordLength', 6); $oKTConfig->setdefaultns('user_prefs', 'restrictAdminPasswords', false); + $oKTConfig->setdefaultns('user_prefs', 'restrictPreferences', false); + $oKTConfig->setdefaultns('session', 'sessionTimeout', 1200); $oKTConfig->setdefaultns('session', 'allowAnonymousLogin', false); + $oKTConfig->setdefaultns('ui', 'companyLogo', '${rootUrl}/resources/companylogo.png'); + $oKTConfig->setdefaultns('ui', 'companyLogoWidth', '313px'); + $oKTConfig->setdefaultns('ui', 'companyLogoTitle', 'ACME Corporation'); $oKTConfig->setdefaultns('ui', 'ieGIF', true); $oKTConfig->setdefaultns('ui', 'alwaysShowAll', false); + $oKTConfig->setdefaultns('ui', 'automaticRefresh', false); $oKTConfig->setdefaultns('ui', 'condensedAdminUI', false); + $oKTConfig->setdefaultns('ui', 'fakeMimetype', false); + $oKTConfig->setdefaultns('ui', 'dot', 'dot'); + $oKTConfig->setdefaultns('ui', 'metadata_sort', true); + + $oKTConfig->setdefaultns('i18n', 'useLike', false); $oKTConfig->setdefaultns(null, 'logLevel', 'INFO'); $oKTConfig->setdefaultns('import', 'unzip', 'unzip'); + $oKTConfig->setdefaultns('export', 'zip', 'zip'); + $oKTConfig->setdefaultns('export', 'encoding', 'UTF-8'); + + $oKTConfig->setdefaultns('externalBinary', 'xls2csv', 'xls2csv'); + $oKTConfig->setdefaultns('externalBinary', 'pdftotext', 'pdftotext'); + $oKTConfig->setdefaultns('externalBinary', 'catppt', 'catppt'); + $oKTConfig->setdefaultns('externalBinary', 'pstotext', 'pstotext'); + $oKTConfig->setdefaultns('externalBinary', 'catdoc', 'catdoc'); + $oKTConfig->setdefaultns('externalBinary', 'antiword', 'antiword'); + $oKTConfig->setdefaultns('externalBinary', 'python', 'python'); + $oKTConfig->setdefaultns('externalBinary', 'java', 'java'); + $oKTConfig->setdefaultns('externalBinary', 'php', 'php'); + $oKTConfig->setdefaultns('externalBinary', 'df', 'df'); + $oKTConfig->setdefaultns('cache', 'cacheDirectory', '${varDirectory}/cache'); $oKTConfig->setdefaultns('cache', 'cacheEnabled', 'false'); $oKTConfig->setdefaultns('cache', 'proxyCacheDirectory', '${varDirectory}/proxies'); $oKTConfig->setdefaultns('cache', 'proxyCacheEnabled', 'true'); - - $oKTConfig->setdefaultns('search', 'searchBasePath', '${fileSystemRoot}/search2'); + $oKTConfig->setdefaultns('cache', 'cachePlugins', 'true'); + + $oKTConfig->setdefaultns('KTWebDAVSettings', 'debug', 'off'); + $oKTConfig->setdefaultns('KTWebDAVSettings', 'safemode', 'on'); + + $oKTConfig->setdefaultns('BaobabSettings', 'debug', 'off'); + $oKTConfig->setdefaultns('BaobabSettings', 'safemode', 'on'); + + $oKTConfig->setdefaultns('search', 'searchBasePath', KT_DIR . '/search2'); $oKTConfig->setdefaultns('search', 'fieldsPath', '${searchBasePath}/search/fields'); + $oKTConfig->setdefaultns('search', 'resultsDisplayFormat', 'searchengine'); $oKTConfig->setdefaultns('search', 'resultsPerPage', 25); $oKTConfig->setdefaultns('search', 'dateFormat', 'Y-m-d'); + + $oKTConfig->setdefaultns('browse', 'previewActivation', 'mouse-over'); $oKTConfig->setdefaultns('indexer', 'coreClass', 'JavaXMLRPCLuceneIndexer'); $oKTConfig->setdefaultns('indexer', 'batchDocuments', 20); @@ -542,6 +596,8 @@ function catchFatalErrors($p_OnOff='On'){ $oKTConfig->setdefaultns('webservice', 'uploadExpiry', '30'); $oKTConfig->setdefaultns('webservice', 'downloadExpiry', '30'); $oKTConfig->setdefaultns('webservice', 'randomKeyText', 'bkdfjhg23yskjdhf2iu'); + $oKTConfig->setdefaultns('webservice', 'validateSessionCount', false); + $oKTConfig->setdefaultns('webservice', 'useDefaultDocumentTypeIfInvalid', true); $oKTConfig->setdefaultns('webservice', 'debug', false); $oKTConfig->setdefaultns('clientToolPolicies', 'explorerMetadataCapture', true); @@ -552,9 +608,11 @@ function catchFatalErrors($p_OnOff='On'){ $oKTConfig->setdefaultns('clientToolPolicies', 'captureReasonsCancelCheckout', true); $oKTConfig->setdefaultns('clientToolPolicies', 'captureReasonsCopyInKT', true); $oKTConfig->setdefaultns('clientToolPolicies', 'captureReasonsMoveInKT', true); - $oKTConfig->setdefaultns('clientToolPolicies', 'allowRememberPassword', true); + $oKTConfig->setdefaultns('DiskUsage', 'warningThreshold', 10); + $oKTConfig->setdefaultns('DiskUsage', 'urgentThreshold', 5); + $res = $this->readConfig(); if (PEAR::isError($res)) { return $res; } @@ -645,7 +703,7 @@ require_once(KT_LIB_DIR . '/util/ktutil.inc'); require_once(KT_LIB_DIR . '/ktentity.inc'); -$KTInit->catchFatalErrors(); +//$KTInit->catchFatalErrors(); if (phpversion()<5){ diff --git a/lib/documentmanagement/documentutil.inc.php b/lib/documentmanagement/documentutil.inc.php index d3111a1..c83d8ac 100644 --- a/lib/documentmanagement/documentutil.inc.php +++ b/lib/documentmanagement/documentutil.inc.php @@ -237,7 +237,13 @@ class KTDocumentUtil { //$oContents = KTUtil::arrayGet($aOptions, 'contents'); $aMetadata = KTUtil::arrayGet($aOptions, 'metadata', null, false); $oDocumentType = KTUtil::arrayGet($aOptions, 'documenttype'); - $sDescription = KTUtil::arrayGet($aOptions, 'description', $sFilename); + $sDescription = KTUtil::arrayGet($aOptions, 'description', ''); + + if(empty($sDescription)){ + // If no document name is provided use the filename minus the extension + $aFile = pathinfo($sFilename); + $sDescription = (isset($aFile['filename']) && !empty($aFile['filename'])) ? $aFile['filename'] : $sFilename; + } $oUploadChannel =& KTUploadChannel::getSingleton(); diff --git a/lib/triggers/triggerregistry.inc.php b/lib/triggers/triggerregistry.inc.php index c40388c..cf87215 100644 --- a/lib/triggers/triggerregistry.inc.php +++ b/lib/triggers/triggerregistry.inc.php @@ -74,7 +74,8 @@ class KTTriggerRegistry { { if (!class_exists($trigger[0])) { - require_once($trigger[1]); + $sPath = (KTUtil::isAbsolutePath($trigger[1])) ? $trigger[1] : KT_DIR.'/'.$trigger[1]; + require_once($sPath); if (!class_exists($trigger[0])) { global $default; diff --git a/login.php b/login.php index 2791800..07de6fd 100644 --- a/login.php +++ b/login.php @@ -166,12 +166,8 @@ class LoginPageDispatcher extends KTDispatcher { $aLanguageNames = $oReg->getLanguages('knowledgeTree'); $aRegisteredLanguageNames = array(); - if(empty($aRegisteredLangs)) { - $query = "DELETE FROM plugin_helper"; - DBUtil::runQuery($query); - redirect($_SERVER['REQUEST_URI']); - exit; - } else { + if(!empty($aRegisteredLangs)) + { foreach (array_keys($aRegisteredLangs) as $sLang) { $aRegisteredLanguageNames[$sLang] = $aLanguageNames[$sLang]; } diff --git a/resources/css/kt-framing.css b/resources/css/kt-framing.css index 0f3da0c..bb5b305 100644 --- a/resources/css/kt-framing.css +++ b/resources/css/kt-framing.css @@ -1,13 +1,13 @@ /* ------------------ generic ------------------ */ -html { +html { height: 100%; } body { padding: 1em ; border: 0; margin: 0; - font-size: smaller; + font-size: smaller; font-family: sans-serif; } @@ -38,7 +38,7 @@ body width: 80%; min-height: 200px; position: relative; - top:100; + top:100; left:100; } @@ -151,14 +151,14 @@ body height: 1.4em; } -#navbar ul li a +#navbar ul li a { color: white; text-decoration: none; border-bottom: 1px transparent; } -#navbar ul li a:hover +#navbar ul li a:hover { border-bottom: 1px solid white; } @@ -188,7 +188,7 @@ a.main_nav_item { /* ------------------ breadcrumbs -------------- */ -#breadcrumbs +#breadcrumbs { margin-top: 0.5em; margin-bottom: 1em; @@ -197,7 +197,7 @@ a.main_nav_item { text-transform: lowercase; } -#breadcrumbs .primary +#breadcrumbs .primary { font-weight: bold; } @@ -221,7 +221,7 @@ a.main_nav_item { text-decoration: none; border-bottom: 1px solid #9d0a0a; } - + /* ------------------ portlets ----------------- */ #portletbar @@ -254,7 +254,7 @@ a.main_nav_item { left: 30px; height: 30px; width: 80%; - z-index: -1; + z-index: -1; border:0; } @@ -265,13 +265,13 @@ a.main_nav_item { right: 0px; height: 30px; width: 60%; - z-index: -1; + z-index: -1; border: 0; } #portletbar .portlet.expanded { position: relative; - margin: 0 0 1.5em 0; + margin: 0 0 1.5em 0; padding: 0 0 0 0; background: url(../../resources/graphics/portlet_corner_topleft.png) top left no-repeat; border: 0; @@ -285,7 +285,7 @@ a.main_nav_item { left: 30px; height: 28px; width: 80%; - z-index: -1; + z-index: -1; border: 0; } @@ -296,7 +296,7 @@ a.main_nav_item { right: 0px; height: 28px; width: 60%; - z-index: -1; + z-index: -1; border: 0; } @@ -308,7 +308,7 @@ a.main_nav_item { border-bottom: 1px solid #ccc; border-left: 1px solid #ccc; width: 99%; - height: 100%; + height: 100%; } /* Attempt to contain side portlet containers in MORE containers*/ @@ -343,7 +343,7 @@ a.main_nav_item { /* Bottom Portlet borders */ /* #portletbar .portlet .portletbodyBottomLeft { - position: absolute; + position: absolute; bottom: 0px; left: 0px; width: 10px; @@ -352,7 +352,7 @@ a.main_nav_item { } #portletbar .portlet .portletbodyBottomRight { - position: absolute; + position: absolute; bottom: 0px; right: 0px; width: 10px; @@ -361,7 +361,7 @@ a.main_nav_item { } #portletbar .portlet .portletbodyBottom { - position: absolute; + position: absolute; bottom: 0px; left: 5px; height: 3px; @@ -372,7 +372,7 @@ a.main_nav_item { /* Right-hand side portlet borders */ /* #portletbar .portlet .portletbodyRightTop { - position: absolute; + position: absolute; background: url(../../resources/graphics/portlet_borderright.png) top right repeat-y; top: 0px; right: 0px; @@ -381,7 +381,7 @@ a.main_nav_item { } #portletbar .portlet .portletbodyRightBottom { - position: absolute; + position: absolute; background: url(../../resources/graphics/portlet_borderright.png) top right repeat-y; bottom: 0px; right: 0px; @@ -391,7 +391,7 @@ a.main_nav_item { #portletbar .portlet .portletbodyRightMiddleTop { - position: absolute; + position: absolute; background: url(../../resources/graphics/portlet_borderright.png) top right repeat-y; top: 50%; right: 0px; @@ -400,7 +400,7 @@ a.main_nav_item { } #portletbar .portlet .portletbodyRightMiddleBottom { - position: absolute; + position: absolute; background: url(../../resources/graphics/portlet_borderright.png) top right repeat-y; bottom: 50%; right: 0px; @@ -409,7 +409,7 @@ a.main_nav_item { } #portletbar .portlet .portletbodyRightQuartTop { - position: absolute; + position: absolute; background: url(../../resources/graphics/portlet_borderright.png) top right repeat-y; top: 15%; right: 0px; @@ -418,7 +418,7 @@ a.main_nav_item { } #portletbar .portlet .portletbodyRightQuartBottom { - position: absolute; + position: absolute; background: url(../../resources/graphics/portlet_borderright.png) top right repeat-y; bottom: 25%; right: 0px; @@ -539,8 +539,8 @@ a.main_nav_item { #portletbar .portlet .actionlist li { display: block; - padding: 0 0 0 10px; - margin: 0.5em 0.5em 0.15em 0; + padding: 0 0 0 10px; + margin: 0.5em 0.5em 0.15em 0; text-align:left; background: transparent url(../graphics/leftbullet.png) center left no-repeat; } @@ -553,10 +553,10 @@ a.main_nav_item { top: 0; z-index: 1; width:auto; - /*padding: 0 2em 1em 0; - overflow: auto;*/ - padding: 0.25em 2em 0em 0em; - overflow: hidden; + /*padding: 0 2em 1em 0; + overflow: auto;*/ + padding: 0.25em 2em 0em 0em; + overflow: hidden; min-height: 600px; } @@ -573,7 +573,7 @@ a.main_nav_item { display: none; } -#content +#content { line-height: 1.6em; } @@ -595,7 +595,7 @@ a.main_nav_item { border-bottom: 1px solid #9d0a0a; } -#content .descriptiveText +#content .descriptiveText { color: #666; } @@ -656,15 +656,15 @@ a.main_nav_item { } /* unframed (single button) forms */ -#content .noframe fieldset -{ +#content .noframe fieldset +{ border-width: 0px; padding: 0; } #content .noframe .form_actions -{ - margin-top: 0; +{ + margin-top: 0; } /* old cancel style */ @@ -708,7 +708,7 @@ a.main_nav_item { color: #ffdd80; } -#content .field label +#content .field label { display: block; font-weight: bold; @@ -729,7 +729,7 @@ a.main_nav_item { background: transparent url(../../resources/graphics/required.png) center left no-repeat; } -.errorMessage +.errorMessage { font-weight: bold; } @@ -767,7 +767,7 @@ a.main_nav_item { font-weight: bold; } -#content .actionmessage +#content .actionmessage { padding-bottom: 0.5em; border-bottom: 1px dashed #ccc; @@ -786,7 +786,7 @@ a.main_nav_item { } .metadata.versioned dd div { - + padding: 0.2em 0.5em; border-style: solid; border-color: #ccc; @@ -807,7 +807,7 @@ a.main_nav_item { } .metadata.versioned dd .current.different { background-color: #fff2b8; -/* +/* padding-left: 25px; background: transparent url(../../thirdparty/icon-theme/16x16/status/dialog-information.png) center left no-repeat; */ @@ -815,7 +815,7 @@ a.main_nav_item { .metadata.versioned dd .previous.different { background-color: #e9dda8; -/* +/* padding-left: 25px; background: transparent url(../../thirdparty/icon-theme/16x16/status/dialog-information.png) center left no-repeat; */ @@ -851,8 +851,8 @@ a.main_nav_item { .metadatatable td { border-bottom: 1px dotted #ccc; - vertical-align: top; - padding: 0.5em; + vertical-align: top; + padding: 0.5em; font-weight: bold; } @@ -1090,7 +1090,7 @@ a.main_nav_item { margin-bottom: 20px; } -/* ========== kt actions +/* ========== kt actions These are used to mark up various different "actions" (e.g. cut, copy, delete). Use them as follows: @@ -1102,7 +1102,7 @@ The text will be hidden for screen view. The generic fahrner-ish approach comes */ -.ktAction { +.ktAction { display: block; text-decoration: none; overflow: hidden; @@ -1115,12 +1115,12 @@ The text will be hidden for screen view. The generic fahrner-ish approach comes width: 16px; background-position: top left; background-repeat: no-repeat; - background-color: transparent; + background-color: transparent; } .ktActionDescribed { float: left; - margin-right: 0.5em; + margin-right: 0.5em; } @@ -1132,12 +1132,12 @@ The text will be hidden for screen view. The generic fahrner-ish approach comes } .ktAction.ktInline { - float: left; + float: left; padding-right: 0.5em; background-position: top left; } -.ktHelp { +.ktHelp { background: transparent url(../../thirdparty/icon-theme/16x16/apps/help-browser.png) top left no-repeat; float: right; display: block; @@ -1164,6 +1164,7 @@ The text will be hidden for screen view. The generic fahrner-ish approach comes .ktActionLink.ktDenied, .ktAction.ktDenied { background-image: url(../../resources/graphics/denied.png); } .ktActionLink.ktMoveUp, .ktAction.ktMoveUp { background-image: url(../../thirdparty/icon-theme/16x16/actions/move-up.png); } .ktActionLink.ktMoveDown, .ktAction.ktMoveDown { background-image: url(../../thirdparty/icon-theme/16x16/actions/move-down.png); } +.ktActionLink.ktPreview, .ktAction.ktPreview { background-image: url(../../resources/tango-icons/system-search.png); } /* this is sometimes used separately to get the auto-delete help. */ .ktDelete { } @@ -1188,7 +1189,7 @@ The text will be hidden for screen view. The generic fahrner-ish approach comes /* dashboard blocks. */ -#dashboard-container-left { +#dashboard-container-left { clear: left; width: 47%; margin-top: 0; @@ -1319,22 +1320,22 @@ The text will be hidden for screen view. The generic fahrner-ish approach comes } .dashboard_block.rolled-up .dashboard_block_rightrepeat_top -{ +{ display: none; } .dashboard_block.rolled-up .dashboard_block_rightrepeat_bottom -{ +{ display: none; } .dashboard_block.rolled-up .dashboard_block_leftrepeat_top -{ +{ display: none; } .dashboard_block.rolled-up .dashboard_block_leftrepeat_bottom -{ +{ display: none; } @@ -1509,32 +1510,32 @@ The text will be hidden for screen view. The generic fahrner-ish approach comes } .dashboard_block.rolled-up .error_dashlet_toprepeat -{ +{ height: 38px; } .dashboard_block.rolled-up .error_dashlet_bottomrepeat -{ +{ height: 20px; } .dashboard_block.rolled-up .error_dashlet_rightrepeat_top -{ +{ display: none; } .dashboard_block.rolled-up .error_dashlet_rightrepeat_bottom -{ +{ display: none; } .dashboard_block.rolled-up .error_dashlet_leftrepeat_top -{ +{ display: none; } .dashboard_block.rolled-up .error_dashlet_leftrepeat_bottom -{ +{ display: none; } @@ -1709,32 +1710,32 @@ The text will be hidden for screen view. The generic fahrner-ish approach comes } .dashboard_block.rolled-up .info_dashlet_toprepeat -{ +{ height: 38px; } .dashboard_block.rolled-up .info_dashlet_bottomrepeat -{ +{ height: 20px; } .dashboard_block.rolled-up .info_dashlet_rightrepeat_top -{ +{ display: none; } .dashboard_block.rolled-up .info_dashlet_rightrepeat_bottom -{ +{ display: none; } .dashboard_block.rolled-up .info_dashlet_leftrepeat_top -{ +{ display: none; } .dashboard_block.rolled-up .info_dashlet_leftrepeat_bottom -{ +{ display: none; } @@ -1813,7 +1814,7 @@ hr { #document-views .downloadbox ul li { padding-left: 25px; padding-top: 0.25em; - padding-bottom: 0.25em; + padding-bottom: 0.25em; background-repeat: no-repeat; background-position: center left; } @@ -1829,8 +1830,8 @@ hr { #document-views .viewlet .actionlist li { display: block; - padding: 0 0 0 10px; - margin: 0.5em 0.5em 0.15em 0; + padding: 0 0 0 10px; + margin: 0.5em 0.5em 0.15em 0; text-align: left; background: transparent url(../graphics/leftbullet.png) center left no-repeat; border: 0; @@ -1889,7 +1890,7 @@ hr { border-left: 1px solid white; border-top: 1px solid white; border-right: 1px solid white; - border-bottom: 1px solid white; + border-bottom: 1px solid white; padding: 0 0 0.5em; } @@ -1939,7 +1940,7 @@ hr { /* -------------------------- iframe browse ------------------------ */ -.browse-frame { +.browse-frame { width: 100%; height: 55em; border-width: 0px; @@ -1947,14 +1948,14 @@ hr { margin: 0; } -.browse_body { +.browse_body { padding: 0; } /* -------------------------- dashboard ------------------------ */ .dashboard_block_icons -{ +{ position: absolute; top: 0px; right: 10px; @@ -1970,12 +1971,12 @@ hr { } .dashboard_block.rolled-up .dashboard_block_body -{ +{ display: none; } .ktBlock .dashboard_block_body -{ +{ z-index:99; margin: 8px 0 10px 0; background-color:#FFFFFF; @@ -1998,8 +1999,8 @@ hr { overflow: auto; } -.dashboard_block .dashboard_block_body .edit_action -{ +.dashboard_block .dashboard_block_body .edit_action +{ z-index:99; background-color:#FFFFFF; } @@ -2007,7 +2008,7 @@ hr { /* actions */ #content .dashboard_block .action -{ +{ padding: 1em 0.5em; border-bottom-width: 0px; background-repeat: no-repeat; @@ -2015,46 +2016,46 @@ hr { } #content .dashboard_block .action:hover -{ +{ border-bottom-width: 0px; } -#content .dashboard_block .action_rollup -{ +#content .dashboard_block .action_rollup +{ background-image: url(../graphics/bullet_toggle_minus.png); } -#content .dashboard_block.rolled-up .action_rollup -{ +#content .dashboard_block.rolled-up .action_rollup +{ background-image: url(../graphics/bullet_toggle_plus.png); } -#content .dashboard_block .action_close -{ +#content .dashboard_block .action_close +{ background-image: url(../graphics/bullet_toggle_close.png); } /* action effects */ -#content .dashboard_block.rolled-up h2 -{ +#content .dashboard_block.rolled-up h2 +{ border-bottom-width: 0px; padding-bottom: 10px; } -#content .ktBlock h2 -{ +#content .ktBlock h2 +{ border-bottom-width: 0px; color: #FFFFFF; font-size: small; } -#content .dashboard_block.closed -{ +#content .dashboard_block.closed +{ display: none; } .addDialogScreen -{ +{ position: absolute; display: block; top: 0px; @@ -2068,7 +2069,7 @@ hr { } .addDialog -{ +{ display: block; border: 1px solid #ccc; background-color: white; @@ -2081,18 +2082,18 @@ hr { .addDialog .dashletLink -{ +{ color: #666; text-decoration: none; display: block; } body #content #add_dashlet -{ +{ display: none; text-decoration: none; border-width: 0px; - + } #add_dashlet diff --git a/resources/js/search2widget.js b/resources/js/search2widget.js index e0756fe..6c304f3 100644 --- a/resources/js/search2widget.js +++ b/resources/js/search2widget.js @@ -26,6 +26,18 @@ function onMetadataClick() Ext.example.msg(sSearchTranslations[0], sSearchTranslations[2]); /* Quick Search Options, Searches will now only search metadata */ } +function onSearchEngineFormatClick() +{ + bResultsFormatSearchEngine = true; + document.location=rootURL + "/search2.php?action=searchResults&format=searchengine"; +} + +function onBrowseFormatClick() +{ + bResultsFormatSearchEngine = false; + document.location=rootURL + "/search2.php?action=searchResults&format=browseview"; +} + function onSavedSearchClick(item) { id = item.id.substr(11); @@ -135,6 +147,27 @@ function createSearchBar(div, suffix) }) ] } + }, + { + text: sSearchTranslations[13] , /*Toggle results format*/ + menu: { + items: [ + new Ext.menu.CheckItem({ + text: sSearchTranslations[14], /* search engine format */ + id: 'cbResultsFormatSearchEngine' + suffix, + checked: bResultsFormatSearchEngine, + group: 'options', + handler: onSearchEngineFormatClick + }), + new Ext.menu.CheckItem({ + text: sSearchTranslations[15], /* browse view format */ + id: 'cbBrowseSearchEngine' + suffix, + checked: !bResultsFormatSearchEngine, + group: 'options', + handler: onBrowseFormatClick + }) + ] + } } ] }); diff --git a/resources/mimetypes/big/avi.png b/resources/mimetypes/big/avi.png new file mode 100755 index 0000000..54f0deb Binary files /dev/null and b/resources/mimetypes/big/avi.png differ diff --git a/resources/mimetypes/big/c.png b/resources/mimetypes/big/c.png new file mode 100755 index 0000000..778a2a3 Binary files /dev/null and b/resources/mimetypes/big/c.png differ diff --git a/resources/mimetypes/big/compressed.png b/resources/mimetypes/big/compressed.png new file mode 100755 index 0000000..9cf0b1f Binary files /dev/null and b/resources/mimetypes/big/compressed.png differ diff --git a/resources/mimetypes/big/cpp.png b/resources/mimetypes/big/cpp.png new file mode 100755 index 0000000..0ed38cc Binary files /dev/null and b/resources/mimetypes/big/cpp.png differ diff --git a/resources/mimetypes/big/css.png b/resources/mimetypes/big/css.png new file mode 100755 index 0000000..182f756 Binary files /dev/null and b/resources/mimetypes/big/css.png differ diff --git a/resources/mimetypes/big/deb.png b/resources/mimetypes/big/deb.png new file mode 100755 index 0000000..8827df3 Binary files /dev/null and b/resources/mimetypes/big/deb.png differ diff --git a/resources/mimetypes/big/default.png b/resources/mimetypes/big/default.png new file mode 100755 index 0000000..505cdbf Binary files /dev/null and b/resources/mimetypes/big/default.png differ diff --git a/resources/mimetypes/big/djvu.png b/resources/mimetypes/big/djvu.png new file mode 100755 index 0000000..90f6342 Binary files /dev/null and b/resources/mimetypes/big/djvu.png differ diff --git a/resources/mimetypes/big/doc-alt.png b/resources/mimetypes/big/doc-alt.png new file mode 100755 index 0000000..fc09149 Binary files /dev/null and b/resources/mimetypes/big/doc-alt.png differ diff --git a/resources/mimetypes/big/doc-alt2.png b/resources/mimetypes/big/doc-alt2.png new file mode 100755 index 0000000..3f8f0e4 Binary files /dev/null and b/resources/mimetypes/big/doc-alt2.png differ diff --git a/resources/mimetypes/big/doc.png b/resources/mimetypes/big/doc.png new file mode 100755 index 0000000..395c436 Binary files /dev/null and b/resources/mimetypes/big/doc.png differ diff --git a/resources/mimetypes/big/dvi.png b/resources/mimetypes/big/dvi.png new file mode 100755 index 0000000..40a300e Binary files /dev/null and b/resources/mimetypes/big/dvi.png differ diff --git a/resources/mimetypes/big/exe.png b/resources/mimetypes/big/exe.png new file mode 100755 index 0000000..e98072a Binary files /dev/null and b/resources/mimetypes/big/exe.png differ diff --git a/resources/mimetypes/big/f.png b/resources/mimetypes/big/f.png new file mode 100755 index 0000000..aed6bed Binary files /dev/null and b/resources/mimetypes/big/f.png differ diff --git a/resources/mimetypes/big/generic/pres.png b/resources/mimetypes/big/generic/pres.png new file mode 100755 index 0000000..28b1a50 Binary files /dev/null and b/resources/mimetypes/big/generic/pres.png differ diff --git a/resources/mimetypes/big/generic/sound.png b/resources/mimetypes/big/generic/sound.png new file mode 100755 index 0000000..26de7e6 Binary files /dev/null and b/resources/mimetypes/big/generic/sound.png differ diff --git a/resources/mimetypes/big/generic/source.png b/resources/mimetypes/big/generic/source.png new file mode 100755 index 0000000..a6ec5ce Binary files /dev/null and b/resources/mimetypes/big/generic/source.png differ diff --git a/resources/mimetypes/big/generic/text.png b/resources/mimetypes/big/generic/text.png new file mode 100755 index 0000000..25f4c20 Binary files /dev/null and b/resources/mimetypes/big/generic/text.png differ diff --git a/resources/mimetypes/big/generic/video.png b/resources/mimetypes/big/generic/video.png new file mode 100755 index 0000000..d111f8c Binary files /dev/null and b/resources/mimetypes/big/generic/video.png differ diff --git a/resources/mimetypes/big/generic/wordprocessing.png b/resources/mimetypes/big/generic/wordprocessing.png new file mode 100755 index 0000000..ce0d39d Binary files /dev/null and b/resources/mimetypes/big/generic/wordprocessing.png differ diff --git a/resources/mimetypes/big/h.png b/resources/mimetypes/big/h.png new file mode 100755 index 0000000..ed159d8 Binary files /dev/null and b/resources/mimetypes/big/h.png differ diff --git a/resources/mimetypes/big/html.png b/resources/mimetypes/big/html.png new file mode 100755 index 0000000..83abca6 Binary files /dev/null and b/resources/mimetypes/big/html.png differ diff --git a/resources/mimetypes/big/image.png b/resources/mimetypes/big/image.png new file mode 100755 index 0000000..2df8397 Binary files /dev/null and b/resources/mimetypes/big/image.png differ diff --git a/resources/mimetypes/big/iso.png b/resources/mimetypes/big/iso.png new file mode 100755 index 0000000..fa0e4a6 Binary files /dev/null and b/resources/mimetypes/big/iso.png differ diff --git a/resources/mimetypes/big/j.png b/resources/mimetypes/big/j.png new file mode 100755 index 0000000..69d12a9 Binary files /dev/null and b/resources/mimetypes/big/j.png differ diff --git a/resources/mimetypes/big/jar.png b/resources/mimetypes/big/jar.png new file mode 100755 index 0000000..5fbc008 Binary files /dev/null and b/resources/mimetypes/big/jar.png differ diff --git a/resources/mimetypes/big/java.png b/resources/mimetypes/big/java.png new file mode 100755 index 0000000..f55b52f Binary files /dev/null and b/resources/mimetypes/big/java.png differ diff --git a/resources/mimetypes/big/l.png b/resources/mimetypes/big/l.png new file mode 100755 index 0000000..6e32542 Binary files /dev/null and b/resources/mimetypes/big/l.png differ diff --git a/resources/mimetypes/big/mid.png b/resources/mimetypes/big/mid.png new file mode 100755 index 0000000..c6c9919 Binary files /dev/null and b/resources/mimetypes/big/mid.png differ diff --git a/resources/mimetypes/big/midi.png b/resources/mimetypes/big/midi.png new file mode 100755 index 0000000..c6c9919 Binary files /dev/null and b/resources/mimetypes/big/midi.png differ diff --git a/resources/mimetypes/big/mov.png b/resources/mimetypes/big/mov.png new file mode 100755 index 0000000..9c1e102 Binary files /dev/null and b/resources/mimetypes/big/mov.png differ diff --git a/resources/mimetypes/big/o.png b/resources/mimetypes/big/o.png new file mode 100755 index 0000000..23bb51a Binary files /dev/null and b/resources/mimetypes/big/o.png differ diff --git a/resources/mimetypes/big/ogg.png b/resources/mimetypes/big/ogg.png new file mode 100755 index 0000000..42413db Binary files /dev/null and b/resources/mimetypes/big/ogg.png differ diff --git a/resources/mimetypes/big/p.png b/resources/mimetypes/big/p.png new file mode 100755 index 0000000..dc081ea Binary files /dev/null and b/resources/mimetypes/big/p.png differ diff --git a/resources/mimetypes/big/pdf.png b/resources/mimetypes/big/pdf.png new file mode 100755 index 0000000..eed02a5 Binary files /dev/null and b/resources/mimetypes/big/pdf.png differ diff --git a/resources/mimetypes/big/pl.png b/resources/mimetypes/big/pl.png new file mode 100755 index 0000000..67f07ed Binary files /dev/null and b/resources/mimetypes/big/pl.png differ diff --git a/resources/mimetypes/big/pps.png b/resources/mimetypes/big/pps.png new file mode 100755 index 0000000..ce66170 Binary files /dev/null and b/resources/mimetypes/big/pps.png differ diff --git a/resources/mimetypes/big/ppt.png b/resources/mimetypes/big/ppt.png new file mode 100755 index 0000000..ce66170 Binary files /dev/null and b/resources/mimetypes/big/ppt.png differ diff --git a/resources/mimetypes/big/ps.png b/resources/mimetypes/big/ps.png new file mode 100755 index 0000000..7fac35f Binary files /dev/null and b/resources/mimetypes/big/ps.png differ diff --git a/resources/mimetypes/big/py.png b/resources/mimetypes/big/py.png new file mode 100755 index 0000000..e19f52e Binary files /dev/null and b/resources/mimetypes/big/py.png differ diff --git a/resources/mimetypes/big/rm.png b/resources/mimetypes/big/rm.png new file mode 100755 index 0000000..43f1448 Binary files /dev/null and b/resources/mimetypes/big/rm.png differ diff --git a/resources/mimetypes/big/rpm.png b/resources/mimetypes/big/rpm.png new file mode 100755 index 0000000..b86bcec Binary files /dev/null and b/resources/mimetypes/big/rpm.png differ diff --git a/resources/mimetypes/big/s.png b/resources/mimetypes/big/s.png new file mode 100755 index 0000000..ed63ddd Binary files /dev/null and b/resources/mimetypes/big/s.png differ diff --git a/resources/mimetypes/big/source.png b/resources/mimetypes/big/source.png new file mode 100755 index 0000000..a6ec5ce Binary files /dev/null and b/resources/mimetypes/big/source.png differ diff --git a/resources/mimetypes/big/spreadsheet.png b/resources/mimetypes/big/spreadsheet.png new file mode 100755 index 0000000..559d8e5 Binary files /dev/null and b/resources/mimetypes/big/spreadsheet.png differ diff --git a/resources/mimetypes/big/svg.png b/resources/mimetypes/big/svg.png new file mode 100755 index 0000000..eb8fd33 Binary files /dev/null and b/resources/mimetypes/big/svg.png differ diff --git a/resources/mimetypes/big/tar.png b/resources/mimetypes/big/tar.png new file mode 100755 index 0000000..9cf0b1f Binary files /dev/null and b/resources/mimetypes/big/tar.png differ diff --git a/resources/mimetypes/big/tex.png b/resources/mimetypes/big/tex.png new file mode 100755 index 0000000..738b2f3 Binary files /dev/null and b/resources/mimetypes/big/tex.png differ diff --git a/resources/mimetypes/big/text.png b/resources/mimetypes/big/text.png new file mode 100755 index 0000000..25f4c20 Binary files /dev/null and b/resources/mimetypes/big/text.png differ diff --git a/resources/mimetypes/big/tgz.png b/resources/mimetypes/big/tgz.png new file mode 100755 index 0000000..a6f7b86 Binary files /dev/null and b/resources/mimetypes/big/tgz.png differ diff --git a/resources/mimetypes/big/ttf.png b/resources/mimetypes/big/ttf.png new file mode 100755 index 0000000..eb113d5 Binary files /dev/null and b/resources/mimetypes/big/ttf.png differ diff --git a/resources/mimetypes/big/txt.png b/resources/mimetypes/big/txt.png new file mode 100755 index 0000000..25f4c20 Binary files /dev/null and b/resources/mimetypes/big/txt.png differ diff --git a/resources/mimetypes/big/vcal.png b/resources/mimetypes/big/vcal.png new file mode 100755 index 0000000..efe71c8 Binary files /dev/null and b/resources/mimetypes/big/vcal.png differ diff --git a/resources/mimetypes/big/vcard.png b/resources/mimetypes/big/vcard.png new file mode 100755 index 0000000..94441ed Binary files /dev/null and b/resources/mimetypes/big/vcard.png differ diff --git a/resources/mimetypes/big/wmv.png b/resources/mimetypes/big/wmv.png new file mode 100755 index 0000000..40b77d3 Binary files /dev/null and b/resources/mimetypes/big/wmv.png differ diff --git a/resources/mimetypes/big/xls.png b/resources/mimetypes/big/xls.png new file mode 100755 index 0000000..5e88884 Binary files /dev/null and b/resources/mimetypes/big/xls.png differ diff --git a/resources/mimetypes/big/y.png b/resources/mimetypes/big/y.png new file mode 100755 index 0000000..2b7a9e2 Binary files /dev/null and b/resources/mimetypes/big/y.png differ diff --git a/search2.php b/search2.php index 8d42da2..42ad6da 100644 --- a/search2.php +++ b/search2.php @@ -11,6 +11,122 @@ require_once(KT_LIB_DIR . "/actions/bulkaction.php"); require_once(KT_DIR . '/search2/search/search.inc.php'); require_once(KT_LIB_DIR . '/documentmanagement/Document.inc'); +function search2queryCompare($a, $b) +{ + global $search2queryColumn, $search2queryOrder; + + + if ($a->$search2queryColumn == $b->$search2queryColumn) + { + return 0; + } + + $result = ($a->$search2queryColumn < $b->$search2queryColumn)?-1:1; + + if ($search2queryOrder == 'asc') + return $result; + else + return - $result; +} + + +/** + * Assists with old browse search results + * + * @param unknown_type $sSortColumn + * @param unknown_type $sSortOrder + */ + +function search2QuerySort($sSortColumn, $sSortOrder) +{ + $defaultSortColumn = $_SESSION['search2_sort_column']; + $defaultSortOrder = $_SESSION['search2_sort_order']; + + if (($defaultSortColumn == $sSortColumn) && ($defaultSortOrder == $sSortOrder)) + { + return; + } + + global $search2queryColumn, $search2queryOrder; + + $search2queryOrder = strtolower($sSortOrder); + + switch(strtolower($sSortColumn)) + { + case 'ktcore.columns.title': + $search2queryColumn = 'Title'; + break; + case 'ktcore.columns.workflow_state': + $search2queryColumn = 'WorkflowAndState'; + break; + case 'ktcore.columns.checkedout_by': + $search2queryColumn = 'CheckedOutBy'; + break; + case 'ktcore.columns.creationdate': + $search2queryColumn = 'DateCreated'; + break; + case 'ktcore.columns.modificationdate': + $search2queryColumn = 'DateModified'; + break; + case 'ktcore.columns.creator': + $search2queryColumn = 'CreatedBy'; + break; + case 'ktcore.columns.docid': + $search2queryColumn = 'DocumentID'; + break; + case 'ktcore.columns.document_type': + $search2queryColumn = 'DocumentType'; + break; + default: + return; + } + + + $results = unserialize($_SESSION['search2_results']); + + usort($results, 'search2queryCompare'); + + $_SESSION['search2_results'] = serialize($results); + +} + +/** + * Search2Query is used to provide allow the old browse search to work + * + */ +class Search2Query extends PartialQuery +{ + function getFolderCount() { return 0; } + function getDocumentCount() + { + return count(unserialize($_SESSION['search2_results'])); + } + + function getFolders($iBatchSize, $iBatchStart, $sSortColumn, $sSortOrder, $sJoinClause = null, $aJoinParams = null) + { + return array(); + } + + function getDocuments($iBatchSize, $iBatchStart, $sSortColumn, $sSortOrder, $sJoinClause = null, $aJoinParams = null) + { + search2QuerySort($_GET['sort_on'], $_GET['sort_order']); + $results = unserialize($_SESSION['search2_results']); + + $batch = array(); + + $no_results = count($results); + for($i=0;$i<$no_results;$i++) + { + if ($i < $iBatchStart) continue; + if ($i > $iBatchStart + $iBatchSize) continue; + + $batch[] = array('id'=>$results[$i]->DocumentID); + } + + return $batch; + } +} + class SearchDispatcher extends KTStandardDispatcher { @@ -157,6 +273,56 @@ class SearchDispatcher extends KTStandardDispatcher { $this->processQuery($expr); } + function do_oldSearchResults() + { + $this->oPage->setBreadcrumbDetails(_kt("Search Results")); + $this->oPage->title = _kt("Search Results"); + + $collection = new AdvancedCollection; + $oColumnRegistry = KTColumnRegistry::getSingleton(); + $aColumns = $oColumnRegistry->getColumnsForView('ktcore.views.search'); + $collection->addColumns($aColumns); + + // set a view option + $aTitleOptions = array( + 'documenturl' => $GLOBALS['KTRootUrl'] . '/view.php', + 'direct_folder' => true, + ); + $collection->setColumnOptions('ktcore.columns.title', $aTitleOptions); + + // set the selection options + $collection->setColumnOptions('ktcore.columns.selection', array( + 'rangename' => 'selection', + 'show_folders' => true, + 'show_documents' => true, + )); + + + $aOptions = $collection->getEnvironOptions(); // extract data from the environment + + $aOptions['empty_message'] = _kt("No documents or folders match this query."); + $aOptions['is_browse'] = true; + $aOptions['return_url'] = KTUtil::addQueryStringSelf("action=oldSearchResults"); + + + $collection->setOptions($aOptions); + $collection->setQueryObject(new Search2Query()); + + $oTemplating =& KTTemplating::getSingleton(); + $oTemplate = $oTemplating->loadTemplate("kt3/browse"); + $aTemplateData = array( + "context" => $this, + "collection" => $collection, + 'isEditable' => true, + 'bulkactions' => KTBulkActionUtil::getAllBulkActions(), + 'browseutil' => new KTBrowseUtil(), + 'returnaction' => 'search2', + ); + return $oTemplate->render($aTemplateData); + } + + + /** * Renders the search results. * @@ -164,7 +330,32 @@ class SearchDispatcher extends KTStandardDispatcher { */ function do_searchResults() { - $this->oPage->setBreadcrumbDetails(_kt("Search Results")); + if (array_key_exists('format', $_GET)) + { + switch ($_GET['format']){ + case 'searchengine': + $_SESSION['search2resultFormat'] = 'searchengine'; + break; + case 'browseview': + $_SESSION['search2resultFormat'] = 'browseview'; + break; + } + } + else + { + if(!array_key_exists('search2resultFormat', $_SESSION)){ + global $default; + $_SESSION['search2resultFormat'] = $default->resultsDisplayFormat; + } + } + + if ($_SESSION['search2resultFormat'] == 'browseview') + { + $this->redirectTo('oldSearchResults'); + + } + + $this->oPage->setBreadcrumbDetails(_kt("Search Results")); $this->oPage->title = _kt("Search Results"); $oTemplating =& KTTemplating::getSingleton(); diff --git a/search2/indexing/indexers/JavaXMLRPCLuceneIndexer.inc.php b/search2/indexing/indexers/JavaXMLRPCLuceneIndexer.inc.php index 49612bb..95708b9 100644 --- a/search2/indexing/indexers/JavaXMLRPCLuceneIndexer.inc.php +++ b/search2/indexing/indexers/JavaXMLRPCLuceneIndexer.inc.php @@ -182,7 +182,7 @@ class JavaXMLRPCLuceneIndexer extends Indexer $document_id = $hit->DocumentID; // avoid adding duplicates. If it is in already, it has higher priority. - if (!array_key_exists($document_id, $results) || $score > $results[$document_id]->Score) + if (!array_key_exists($document_id, $results) || $score > $results[$document_id]->Rank) { try { diff --git a/templates/kt3/standard_page.smarty b/templates/kt3/standard_page.smarty index d795443..d6a9d5e 100644 --- a/templates/kt3/standard_page.smarty +++ b/templates/kt3/standard_page.smarty @@ -112,7 +112,10 @@ /* 9 */ "{i18n}content and metadata{/i18n}", /* 10 */ "{i18n}metadata{/i18n}", /* 11 */ "{i18n}search{/i18n}", - /* 12 */ "{i18n}Enter search criteria...{/i18n}" + /* 12 */ "{i18n}Enter search criteria...{/i18n}", + /* 13 */ "{i18n}Toggle search results format{/i18n}", + /* 14 */ "{i18n}Search engine format{/i18n}", + /* 15 */ "{i18n}Browse view format{/i18n}" ]; @@ -124,6 +127,12 @@ {assign var=count value=$count+1} {/foreach} ]; + + {if $smarty.session.search2resultFormat != 'searchengine'} + var bResultsFormatSearchEngine = false; + {else} + var bResultsFormatSearchEngine = true; + {/if} {literal} -- libgit2 0.21.4