Commit 1635e58b17ccaa5a82a61d07eab355a83bea6b3f

Authored by Jalaloedien
1 parent 4132ebb8

KTS-1628

"Alter information to be displayed inside of rss feed body."
Implemented.

Reviewed By: Conrad

git-svn-id: https://kt-dms.svn.sourceforge.net/svnroot/kt-dms/trunk@6175 c91229c3-7414-0410-bfa2-8a42b809f60b
plugins/rssplugin/KTrss.inc.php
@@ -86,19 +86,9 @@ class KTrss{ @@ -86,19 +86,9 @@ class KTrss{
86 $aDList = KTrss::getDocumentList($iUserId); 86 $aDList = KTrss::getDocumentList($iUserId);
87 if($aDList){ 87 if($aDList){
88 foreach($aDList as $document_id){ 88 foreach($aDList as $document_id){
89 - $sQuery = "SELECT dt.document_id AS id, dt.datetime AS date, dt.comment AS transaction, dmv.name AS name " .  
90 - "FROM document_metadata_version AS dmv, document_subscriptions AS ds, document_transactions AS dt " .  
91 - "WHERE dmv.document_id = ds.document_id " .  
92 - "AND dt.document_id = ds.document_id " .  
93 - "AND ds.document_id = ? " .  
94 - "AND ds.user_id = ? " .  
95 - "ORDER BY date DESC " .  
96 - "LIMIT 1";  
97 - $aParams = array($document_id, $iUserId);  
98 - $aDocumentsInfo = DBUtil::getResultArray(array($sQuery, $aParams));  
99 - $aDocumentsInfo['itemType'] = 'document';  
100 - if($aDocumentsInfo){  
101 - $aDocuments[] = $aDocumentsInfo; 89 + $document = KTrss::getOneDocument($document_id, $iUserId);
  90 + if($document){
  91 + $aDocuments[] = $document;
102 } 92 }
103 } 93 }
104 } 94 }
@@ -116,19 +106,9 @@ class KTrss{ @@ -116,19 +106,9 @@ class KTrss{
116 $aFList = KTrss::getFolderList($iUserId); 106 $aFList = KTrss::getFolderList($iUserId);
117 if($aFList){ 107 if($aFList){
118 foreach($aFList as $folder_id){ 108 foreach($aFList as $folder_id){
119 - $sQuery = "SELECT ft.folder_id AS id, ft.datetime AS date, ft.comment AS transaction, f.name AS name " .  
120 - "FROM folders AS f, folder_subscriptions AS fs, folder_transactions AS ft " .  
121 - "WHERE f.id = fs.folder_id " .  
122 - "AND ft.folder_id = fs.folder_id " .  
123 - "AND fs.folder_id = ? " .  
124 - "AND fs.user_id = ? " .  
125 - "ORDER BY date DESC " .  
126 - "LIMIT 1";  
127 - $aParams = array($folder_id, $iUserId);  
128 - $aFoldersInfo = DBUtil::getResultArray(array($sQuery, $aParams));  
129 - $aFoldersInfo['itemType'] = 'folder';  
130 - if($aFoldersInfo){  
131 - $aFolders[] = $aFoldersInfo; 109 + $folder = KTrss::getOneFolder($folder_id, $iUserId);
  110 + if($folder){
  111 + $aFolders[] = $folder;
132 } 112 }
133 } 113 }
134 } 114 }
@@ -141,43 +121,49 @@ class KTrss{ @@ -141,43 +121,49 @@ class KTrss{
141 } 121 }
142 } 122 }
143 123
144 - function getOneDocument($iDocumentId){  
145 - $sQuery = "SELECT dt.document_id AS id, dt.datetime AS date, dt.comment AS transaction, dmv.name AS name " .  
146 - "FROM document_metadata_version AS dmv, document_transactions AS dt " .  
147 - "WHERE dmv.document_id = dt.document_id " .  
148 - "AND dt.document_id = ? " .  
149 - "ORDER BY date DESC ";  
150 - $aParams = array($iDocumentId);  
151 - $aDocumentInfo = DBUtil::getResultArray(array($sQuery, $aParams));  
152 - if($aDocumentInfo){  
153 - $aDocuments[] = $aDocumentInfo; 124 + // get information on document
  125 + function getOneDocument($iDocumentId, $iUserId){
  126 + $aDData = KTrss::getDocumentData($iUserId, $iDocumentId);
  127 + $aDTransactions = KTrss::getDocumentTransactions($iDocumentId);
  128 + if($aDData){
  129 + $aDData['itemType'] = 'document';
  130 +
  131 + // create mime info
  132 + $aMimeInfo = KTrss::getMimeTypeInfo($iUserId, $iDocumentId);
  133 + $aDData['mimeTypeFName'] = $aMimeInfo['typeFName'];
  134 + $aDData['mimeTypeIcon'] = $aMimeInfo['typeIcon'];
  135 +
  136 + $aDocument[] = $aDData;
  137 + $aDocument[] = $aDTransactions;
154 } 138 }
155 - if (PEAR::isError($aDocumentInfo)) { 139 + if (PEAR::isError($aDData)) {
156 return false; 140 return false;
157 } 141 }
158 - if ($aDocuments){  
159 - return $aDocuments; 142 + if ($aDocument){
  143 + return $aDocument;
160 } 144 }
161 } 145 }
162 146
  147 + // get information for folder
163 function getOneFolder($iFolderId){ 148 function getOneFolder($iFolderId){
164 - $sQuery = "SELECT ft.folder_id AS id, ft.datetime AS date, ft.comment AS transaction, f.name AS name " .  
165 - "FROM folders AS f, folder_transactions AS ft " .  
166 - "WHERE ft.folder_id = f.id " .  
167 - "AND f.id = ? " .  
168 - "ORDER BY date DESC " .  
169 - "LIMIT 1";  
170 - $aParams = array($iFolderId);  
171 - $aFoldersInfo = DBUtil::getResultArray(array($sQuery, $aParams));  
172 - if($aFoldersInfo){  
173 - $aFolders[] = $aFoldersInfo; 149 + $aFData = KTrss::getFolderData($iFolderId);
  150 + $aFTransactions = KTrss::getFolderTransactions($iFolderId);
  151 + if($aFData){
  152 + $aFData['itemType'] = 'folder';
  153 +
  154 + // create mime info
  155 + $aFData['mimeTypeFName'] = 'Folder';
  156 + $aFData['mimeTypeIcon'] = KTrss::getFolderIcon();
  157 +
  158 + $aFolder[] = $aFData;
  159 + $aFolder[] = $aFTransactions;
  160 + $aFolderBox[] = $aFolder;
174 } 161 }
175 - if (PEAR::isError($aFoldersInfo)) {  
176 - // XXX: log error 162 + if (PEAR::isError($aFData)) {
177 return false; 163 return false;
178 } 164 }
179 - if ($aFolders){  
180 - return $aFolders; 165 + if ($aFolder){
  166 + return $aFolder;
181 } 167 }
182 } 168 }
183 169
@@ -200,16 +186,79 @@ class KTrss{ @@ -200,16 +186,79 @@ class KTrss{
200 "<link>".$hostPath."knowledgeTree/</link>\n". 186 "<link>".$hostPath."knowledgeTree/</link>\n".
201 "<url>".$hostPath."resources/graphics/ktlogo_rss.png</url>\n". 187 "<url>".$hostPath."resources/graphics/ktlogo_rss.png</url>\n".
202 "</image>\n"; 188 "</image>\n";
203 - foreach($aItems as $item){  
204 - if($item['itemType'] == 'folder'){ 189 + foreach($aItems as $aItems){
  190 + if($aItems[0][itemType] == 'folder'){
205 $sTypeSelect = 'folder.transactions&amp;fFolderId'; 191 $sTypeSelect = 'folder.transactions&amp;fFolderId';
206 - }elseif($item['itemType'] == 'document'){ 192 + }elseif($aItems[0][itemType] == 'document'){
207 $sTypeSelect = 'document.transactionhistory&amp;fDocumentId'; 193 $sTypeSelect = 'document.transactionhistory&amp;fDocumentId';
208 } 194 }
209 $feed .= "<item>\n" . 195 $feed .= "<item>\n" .
210 - "<title>".$item[0]['name']."</title>\n" .  
211 - "<link>".$hostPath."action.php?kt_path_info=ktcore.actions.".$sTypeSelect."=".$item[0]['id']."</link>\n" .  
212 - "<description>".$item[0]['transaction']."</description>\n". 196 + "<title>".$aItems[0][0][name]."</title>\n" .
  197 + "<link>".$hostPath."action.php?kt_path_info=ktcore.actions.".$sTypeSelect."=".$aItems[0][0]['id']."</link>\n" .
  198 + "<description>\n" .
  199 + "&lt;table border='0' width='90%'&gt;\n".
  200 + "&lt;tr&gt;\n".
  201 + "&lt;td width='5%' height='16px'&gt;" .
  202 + "&lt;a href='".$hostPath."action.php?kt_path_info=ktcore.actions.".$sTypeSelect."=".$aItems[0][0][id]."' &gt;&lt;img src='".$aItems[0][mimeTypeIcon]."' align='left' height='16px' width='16px' alt='' border='0' /&gt;&lt;/a&gt;" .
  203 + "&lt;/td&gt;\n".
  204 + "&lt;td align='left'&gt; ".$aItems[0][mimeTypeFName]."&lt;/td&gt;\n".
  205 + "&lt;/tr&gt;\n".
  206 + "&lt;tr&gt;\n".
  207 + "&lt;td colspan='2'&gt;\n".
  208 + ucfirst($aItems[0]['itemType'])." Information (ID: ".$aItems[0][0][id].")&lt;/&gt;\n".
  209 + "&lt;hr&gt;\n".
  210 + "&lt;table width='95%'&gt;\n".
  211 + "&lt;tr&gt;\n".
  212 + "&lt;td&gt;Filename: ".$aItems[0][0][filename]."&lt;/td&gt;\n".
  213 + "&lt;td&gt;\n".
  214 + "&lt;/tr&gt;\n".
  215 + "&lt;tr&gt;\n".
  216 + "&lt;td&gt;Author: ".$aItems[0][0][author]."&lt;/td&gt;\n".
  217 + "&lt;td&gt;\n".
  218 + "&lt;/tr&gt;\n".
  219 + "&lt;tr&gt;\n".
  220 + "&lt;td&gt;Owner: ";if($aItems[0][0][owner]){$feed .= $aItems[0][0][owner];}else{$feed .= "None";}
  221 + $feed .= "&lt;/td&gt;\n".
  222 + "&lt;td&gt;&lt;/td&gt;\n".
  223 + "&lt;/tr&gt;\n".
  224 + "&lt;tr&gt;\n";if($aItems[0][0][type]){
  225 + $feed .= "&lt;td&gt;Document type: ".$aItems[0][0][type]."&lt;/td&gt;\n".
  226 + "&lt;td&gt;&lt;/td&gt;\n";}
  227 + $feed .= "&lt;/tr&gt;\n".
  228 + "&lt;tr&gt;\n".
  229 + "&lt;td&gt;Workflow status: ";if($aItems[0][0][workflow_status]){$feed .= $aItems[0][0][workflow_status];}else{$feed .= "No Workflow";}
  230 + $feed .= "&lt;/td&gt;\n".
  231 + "&lt;td&gt;&lt;/td&gt;\n".
  232 + "&lt;/tr&gt;\n".
  233 + "&lt;/table&gt;&lt;br&gt;\n".
  234 + "Transaction Summary (Last 3)\n".
  235 + "&lt;hr&gt;\n".
  236 + "&lt;table width='100%'&gt;\n";
  237 + foreach($aItems[1] as $item){
  238 + $feed .= "&lt;tr&gt;\n".
  239 + "&lt;td&gt;Description:&lt;/td&gt;\n".
  240 + "&lt;td&gt;".$item[comment]."&lt;/td&gt;\n".
  241 + "&lt;/tr&gt;\n".
  242 + "&lt;tr&gt;\n";if($item[version]){
  243 + $feed .= "&lt;td&gt;Version:&lt;/td&gt;\n".
  244 + "&lt;td&gt;".$item[version]."&lt;/td&gt;\n";}
  245 + $feed .= "&lt;/tr&gt;\n".
  246 + "&lt;tr&gt;\n".
  247 + "&lt;td&gt;Date:&lt;/td&gt;\n".
  248 + "&lt;td&gt;".$item[datetime]."&lt;/td&gt;\n".
  249 + "&lt;/tr&gt;\n".
  250 + "&lt;tr&gt;\n".
  251 + "&lt;td&gt;User:&lt;/td&gt;\n".
  252 + "&lt;td&gt;".$item[user_name]."&lt;/td&gt;\n".
  253 + "&lt;/tr&gt;\n".
  254 + "&lt;tr&gt;\n".
  255 + "&lt;td colspan='2'&gt;&lt;hr width='100' align='left'&gt;&lt;/td&gt;\n".
  256 + "&lt;/tr&gt;\n";}
  257 + $feed .= "&lt;/table&gt;\n".
  258 + "&lt;/td&gt;\n".
  259 + "&lt;/tr&gt;\n".
  260 + "&lt;/table&gt;".
  261 + "</description>\n".
213 "</item>\n"; 262 "</item>\n";
214 } 263 }
215 $feed .= "</channel>\n" . 264 $feed .= "</channel>\n" .
@@ -303,36 +352,6 @@ class KTrss{ @@ -303,36 +352,6 @@ class KTrss{
303 return $res; 352 return $res;
304 } 353 }
305 354
306 - // Should be removed...not being used anywhere  
307 - function authenticateFolder($iUserId, $iFolderId){  
308 - $aFList = KTrss::getFolderList($iUserId);  
309 - $result = false;  
310 - if($aFList){  
311 - foreach($aFList as $folder_id){  
312 - if($folder_id == $iFolderId){  
313 - $result = true;  
314 - }  
315 - }  
316 - }  
317 -  
318 - return $result;  
319 - }  
320 -  
321 - // Should be removed...not being used anywhere  
322 - function authenticateDocument($iUserId ,$iDocumentId){  
323 - $aDList = KTrss::getDocumentList($iUserId);  
324 - $result = false;  
325 - if($aDList){  
326 - foreach($aDList as $document_id){  
327 - if($document_id == $iDocumentId){  
328 - $result = true;  
329 - }  
330 - }  
331 - }  
332 -  
333 - return $result;  
334 - }  
335 -  
336 // Function to validate that a user has permissions for a specific document 355 // Function to validate that a user has permissions for a specific document
337 function validateDocumentPermissions($iUserId, $iDocumentId){ 356 function validateDocumentPermissions($iUserId, $iDocumentId){
338 // check if user id is in session. If not, set it 357 // check if user id is in session. If not, set it
@@ -373,6 +392,7 @@ class KTrss{ @@ -373,6 +392,7 @@ class KTrss{
373 } 392 }
374 } 393 }
375 394
  395 + // get icon link for rss
376 function getRssLinkIcon(){ 396 function getRssLinkIcon(){
377 // built server path 397 // built server path
378 $sHostPath = "http://".$_SERVER['HTTP_HOST']."/".$GLOBALS['KTRootUrl']."/"; 398 $sHostPath = "http://".$_SERVER['HTTP_HOST']."/".$GLOBALS['KTRootUrl']."/";
@@ -383,6 +403,7 @@ class KTrss{ @@ -383,6 +403,7 @@ class KTrss{
383 return $icon; 403 return $icon;
384 } 404 }
385 405
  406 + // get rss link for a document/folder
386 function getRssLink($iItemId, $sItemType){ 407 function getRssLink($iItemId, $sItemType){
387 $item = strToLower($sItemType); 408 $item = strToLower($sItemType);
388 if($item == 'folder'){ 409 if($item == 'folder'){
@@ -400,8 +421,115 @@ class KTrss{ @@ -400,8 +421,115 @@ class KTrss{
400 return $sLink; 421 return $sLink;
401 } 422 }
402 423
  424 + // get rss icon link
403 function getImageLink($iItemId, $sItemType){ 425 function getImageLink($iItemId, $sItemType){
404 return "<a href='".KTrss::getRssLink($iItemId, $sItemType)."' target='_blank'>".KTrss::getRssLinkIcon()."</a>"; 426 return "<a href='".KTrss::getRssLink($iItemId, $sItemType)."' target='_blank'>".KTrss::getRssLinkIcon()."</a>";
405 } 427 }
  428 +
  429 + // get the mime type id for a document
  430 + function getDocumentMimeTypeId($iUserId, $iDocumentId){
  431 + if(!isset($_SESSION["userID"])){
  432 + $_SESSION['userID'] = $iUserId;
  433 + }
  434 + // get document object
  435 + $oDocument =& Document::get($iDocumentId);
  436 +
  437 + $docMime = $oDocument->getMimeTypeID();
  438 + return $docMime;
  439 + }
  440 +
  441 + // get mime information for a document
  442 + function getMimeTypeInfo($iUserId, $iDocumentId){
  443 + $mimeinfo['typeId'] = KTrss::getDocumentMimeTypeId($iUserId, $iDocumentId); // mime type id
  444 + $mimeinfo['typeName'] = KTMime::getMimeTypeName($mimeinfo['typeId']); // mime type name
  445 + $mimeinfo['typeFName'] = KTMime::getFriendlyNameForString($mimeinfo['typeName']); // mime type friendly name
  446 + $mimeinfo['typeIcon'] = "http://".$_SERVER['HTTP_HOST']."/".$GLOBALS['KTRootUrl']."/resources/mimetypes/".KTMime::getIconPath($mimeinfo['typeId']).".png"; //icon path
  447 +
  448 + return $mimeinfo;
  449 + }
  450 +
  451 + // get the default folder icon
  452 + function getFolderIcon(){
  453 + return $mimeinfo['typeIcon'] = "http://".$_SERVER['HTTP_HOST']."/".$GLOBALS['KTRootUrl']."/thirdparty/icon-theme/16x16/mimetypes/x-directory-normal.png"; //icon path
  454 + }
  455 +
  456 + // get a document information
  457 + function getDocumentData($iUserId, $iDocumentId){
  458 + if(!isset($_SESSION["userID"])){
  459 + $_SESSION['userID'] = $iUserId;
  460 + }
  461 + // get document object
  462 + $oDocument =& Document::get($iDocumentId);
  463 +
  464 + $cv = $oDocument->getContentVersionId();
  465 + $mv = $oDocument->getMetadataVersionId();
  466 +
  467 + $sQuery = "SELECT dcv.document_id AS id, dmver.name AS name, dcv.filename AS filename, c.name AS author, o.name AS owner, dtl.name AS type, dwfs.name AS workflow_status " .
  468 + "FROM documents AS d LEFT JOIN document_content_version AS dcv ON d.id = dcv.document_id " .
  469 + "LEFT JOIN users AS o ON d.owner_id = o.id " .
  470 + "LEFT JOIN users AS c ON d.creator_id = c.id " .
  471 + "LEFT JOIN document_metadata_version AS dmv ON d.id = dmv.document_id " .
  472 + "LEFT JOIN document_types_lookup AS dtl ON dmv.document_type_id = dtl.id " .
  473 + "LEFT JOIN document_metadata_version AS dmver ON d.id = dmver.document_id " .
  474 + "LEFT JOIN workflow_states AS dwfs ON dmver.workflow_state_id = dwfs.id " .
  475 + "WHERE d.id = ? " .
  476 + "AND dmver.id = ? " .
  477 + "AND dcv.id = ? " .
  478 + "LIMIT 1";
  479 +
  480 + $aParams = array($iDocumentId, $mv, $cv);
  481 + $aDocumentData = DBUtil::getResultArray(array($sQuery, $aParams));
  482 + if($aDocumentData){
  483 + return $aDocumentData;
  484 + }
  485 + }
  486 +
  487 + // get a folder information
  488 + function getFolderData($iFolderId){
  489 + $sQuery = "SELECT f.id AS id, f.name AS name, f.name AS filename, c.name AS author, o.name AS owner, f.description AS description " .
  490 + "FROM folders AS f " .
  491 + "LEFT JOIN users AS o ON f.owner_id = o.id " .
  492 + "LEFT JOIN users AS c ON f.creator_id = c.id " .
  493 + "WHERE f.id = ? " .
  494 + "LIMIT 1";
  495 +
  496 + $aParams = array($iFolderId);
  497 + $aFolderData = DBUtil::getResultArray(array($sQuery, $aParams));
  498 + if($aFolderData){
  499 + return $aFolderData;
  500 + }
  501 + }
  502 +
  503 + // get a listing of the latest 3 transactions for a document
  504 + function getDocumentTransactions($iDocumentId){
  505 + $sQuery = "SELECT DTT.name AS transaction_name, U.name AS user_name, DT.version AS version, DT.comment AS comment, DT.datetime AS datetime " .
  506 + "FROM document_transactions AS DT INNER JOIN users AS U ON DT.user_id = U.id " .
  507 + "INNER JOIN document_transaction_types_lookup AS DTT ON DTT.namespace = DT.transaction_namespace " .
  508 + "WHERE DT.document_id = ? " .
  509 + "ORDER BY DT.datetime DESC " .
  510 + "LIMIT 3";
  511 +
  512 + $aParams = array($iDocumentId);
  513 + $aDocumentTransactions = DBUtil::getResultArray(array($sQuery, $aParams));
  514 + if($aDocumentTransactions){
  515 + return $aDocumentTransactions;
  516 + }
  517 + }
  518 +
  519 + // Get a listing of the latest 3 transactions for a folder
  520 + function getFolderTransactions($iFolderId){
  521 + $sQuery = "SELECT DTT.name AS transaction_name, U.name AS user_name, FT.comment AS comment, FT.datetime AS datetime " .
  522 + "FROM folder_transactions AS FT LEFT JOIN users AS U ON FT.user_id = U.id " .
  523 + "LEFT JOIN document_transaction_types_lookup AS DTT ON DTT.namespace = FT.transaction_namespace " .
  524 + "WHERE FT.folder_id = ? " .
  525 + "ORDER BY FT.datetime DESC " .
  526 + "LIMIT 3";
  527 +
  528 + $aParams = array($iFolderId);
  529 + $aFolderTransactions = DBUtil::getResultArray(array($sQuery, $aParams));
  530 + if($iFolderId){
  531 + return $aFolderTransactions;
  532 + }
  533 + }
406 } 534 }
407 ?> 535 ?>
plugins/rssplugin/loadFeed.inc.php
@@ -24,19 +24,15 @@ @@ -24,19 +24,15 @@
24 // Prepare response data to be passed back to page 24 // Prepare response data to be passed back to page
25 $reposonse = "<h3>".$aRSSArray[channel][title]."</h3>" . 25 $reposonse = "<h3>".$aRSSArray[channel][title]."</h3>" .
26 "<div class='outerContainer' id='outerContainer'>" . 26 "<div class='outerContainer' id='outerContainer'>" .
27 - "<table width='80%'>"; 27 + "<table width='90%'>";
28 for($i=0;$i<count($aRSSArray[items]);$i++){ 28 for($i=0;$i<count($aRSSArray[items]);$i++){
29 $reposonse .= "<tr> 29 $reposonse .= "<tr>
30 - <td colspan='2'><strong>".$aRSSArray[items][$i][title]."<strong></td> 30 + <td colspan='2'><strong><a href='".$aRSSArray[items][$i][link]."' target='_blank'>".$aRSSArray[items][$i][title]."</a><strong></td>
31 </tr> 31 </tr>
32 <tr> 32 <tr>
33 <td>".$aRSSArray[items][$i][description]."</td> 33 <td>".$aRSSArray[items][$i][description]."</td>
34 - <td>".$aRSSArray[items][$i][pubDate]."</td>  
35 </tr> 34 </tr>
36 - <tr>  
37 - <td colspan='2'><a href='".$aRSSArray[items][$i][link]."' target='_blank'>... read more</a></td>  
38 - </tr>  
39 - <tr><td colspan='2'><hr><br></td></tr>"; 35 + <tr><td colspan='2'><br></td></tr>";
40 } 36 }
41 $reposonse .= "</table></div>"; 37 $reposonse .= "</table></div>";
42 38
plugins/rssplugin/templates/RSSPlugin/dashlet.smarty
@@ -65,19 +65,15 @@ @@ -65,19 +65,15 @@
65 {if ($internalrss)} 65 {if ($internalrss)}
66 <h3>{$internalrss.channel.title}</h3> 66 <h3>{$internalrss.channel.title}</h3>
67 <div class='outerContainer' id='outerContainer'> 67 <div class='outerContainer' id='outerContainer'>
68 - <table width='80%'> 68 + <table width='90%'>
69 {section name=i start=0 loop=$itemcount} 69 {section name=i start=0 loop=$itemcount}
70 <tr> 70 <tr>
71 - <td colspan='2'><strong>{$internalrss.items[i].title}<strong></td> 71 + <td><strong><a href='{$internalrss.items[i].link}'>{$internalrss.items[i].title}</a><strong></td>
72 </tr> 72 </tr>
73 <tr> 73 <tr>
74 <td>{$internalrss.items[i].description}</td> 74 <td>{$internalrss.items[i].description}</td>
75 - <td>{$internalrss.items[i].pubDate}</td>  
76 </tr> 75 </tr>
77 - <tr>  
78 - <td colspan='2'><a href='{$internalrss.items[i].link}'>...read more story</a></td>  
79 - </tr>  
80 - <tr><td colspan='2'><hr><br></td></tr> 76 + <tr><td><br></td></tr>
81 {/section} 77 {/section}
82 </table> 78 </table>
83 </div> 79 </div>
@@ -17,6 +17,8 @@ require_once(KT_LIB_DIR . &quot;/widgets/FieldsetDisplayRegistry.inc.php&quot;); @@ -17,6 +17,8 @@ require_once(KT_LIB_DIR . &quot;/widgets/FieldsetDisplayRegistry.inc.php&quot;);
17 require_once(KT_LIB_DIR . "/actions/documentaction.inc.php"); 17 require_once(KT_LIB_DIR . "/actions/documentaction.inc.php");
18 require_once(KT_LIB_DIR . "/browse/browseutil.inc.php"); 18 require_once(KT_LIB_DIR . "/browse/browseutil.inc.php");
19 19
  20 +require_once(KT_LIB_DIR . '/mime.inc.php');
  21 +
20 if (!validateUser($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW'])) { 22 if (!validateUser($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW'])) {
21 header('WWW-Authenticate: Basic realm="KnowledgeTree DMS"'); 23 header('WWW-Authenticate: Basic realm="KnowledgeTree DMS"');
22 header('HTTP/1.0 401 Unauthorized'); 24 header('HTTP/1.0 401 Unauthorized');
@@ -33,9 +35,9 @@ if (!validateUser($_SERVER[&#39;PHP_AUTH_USER&#39;], $_SERVER[&#39;PHP_AUTH_PW&#39;])) { @@ -33,9 +35,9 @@ if (!validateUser($_SERVER[&#39;PHP_AUTH_USER&#39;], $_SERVER[&#39;PHP_AUTH_PW&#39;])) {
33 35
34 if(KTrss::validateDocumentPermissions($id, $iDocumentId)){ // if document passes validation check 36 if(KTrss::validateDocumentPermissions($id, $iDocumentId)){ // if document passes validation check
35 // get document info 37 // get document info
36 - $aDocumentInfo = KTrss::getOneDocument($iDocumentId); 38 + $aDocumentInfo[] = KTrss::getOneDocument($iDocumentId, $id);
37 39
38 - if($aDocumentInfo){ 40 + if($aDocumentInfo){
39 // create rss xml for document 41 // create rss xml for document
40 $documentFeed = KTrss::arrayToXML($aDocumentInfo); 42 $documentFeed = KTrss::arrayToXML($aDocumentInfo);
41 }else{ 43 }else{
@@ -58,7 +60,7 @@ if (!validateUser($_SERVER[&#39;PHP_AUTH_USER&#39;], $_SERVER[&#39;PHP_AUTH_PW&#39;])) { @@ -58,7 +60,7 @@ if (!validateUser($_SERVER[&#39;PHP_AUTH_USER&#39;], $_SERVER[&#39;PHP_AUTH_PW&#39;])) {
58 60
59 if(KTrss::validateFolderPermissions($id, $iFolderId)){ // if folder passes validation check 61 if(KTrss::validateFolderPermissions($id, $iFolderId)){ // if folder passes validation check
60 // get folder info 62 // get folder info
61 - $aFolderInfo = KTrss::getOneFolder($iFolderId); 63 + $aFolderInfo[] = KTrss::getOneFolder($iFolderId);
62 64
63 if($aFolderInfo){ 65 if($aFolderInfo){
64 // create rss xml for folder 66 // create rss xml for folder