Commit fcca34994e3e05acec931349806799f4cc31afe2

Authored by conradverm
1 parent f11c7216

WSA-65

"Remove php5 specific modifiers on functions so that web services works on both 3.4.x and 3.5.x"
Updated.

Committed By: Conrad Vermeulen
Reviewed By: Martin Kirsten

git-svn-id: https://kt-dms.svn.sourceforge.net/svnroot/kt-dms/trunk@7689 c91229c3-7414-0410-bfa2-8a42b809f60b
ktapi/KTAPIDocument.inc.php
@@ -1103,7 +1103,7 @@ class KTAPI_Document extends KTAPI_FolderItem @@ -1103,7 +1103,7 @@ class KTAPI_Document extends KTAPI_FolderItem
1103 $owner_mapping = array( 1103 $owner_mapping = array(
1104 'created_by'=>'creator_id', 1104 'created_by'=>'creator_id',
1105 'modified_by'=>'modified_user_id', 1105 'modified_by'=>'modified_user_id',
1106 - 'owner'=>'owner' 1106 + 'owner'=>'owner_id'
1107 ); 1107 );
1108 1108
1109 $documents = array(); 1109 $documents = array();
@@ -1135,7 +1135,7 @@ class KTAPI_Document extends KTAPI_FolderItem @@ -1135,7 +1135,7 @@ class KTAPI_Document extends KTAPI_FolderItem
1135 $documents['modified'] = $value; 1135 $documents['modified'] = $value;
1136 break; 1136 break;
1137 case 'is_immutable': 1137 case 'is_immutable':
1138 - $documents['immutable'] = KTUtil::strToBool($value, false); 1138 + $documents['immutable'] = in_array(strtolower($value), array('1','true','on','yes'))?'1':'0';
1139 break; 1139 break;
1140 case 'filename': 1140 case 'filename':
1141 $document_content['filename'] = $value; 1141 $document_content['filename'] = $value;
@@ -1153,11 +1153,17 @@ class KTAPI_Document extends KTAPI_FolderItem @@ -1153,11 +1153,17 @@ class KTAPI_Document extends KTAPI_FolderItem
1153 $document_content['minor_version'] = $minor_version; 1153 $document_content['minor_version'] = $minor_version;
1154 break; 1154 break;
1155 case 'mime_type': 1155 case 'mime_type':
1156 - $value = KTMime::getMimeIdByName($value); 1156 + $sql = "select id from mime_types where mimetypes='$value'";
  1157 + $value = DBUtil::getResultArray($sql);
1157 if (PEAR::isError($value)) 1158 if (PEAR::isError($value))
1158 { 1159 {
1159 return $value; 1160 return $value;
1160 } 1161 }
  1162 + if (count($value) == 0)
  1163 + {
  1164 + break;
  1165 + }
  1166 + $value = $value[0]['id'];
1161 $document_content['mime_id'] = $value; 1167 $document_content['mime_id'] = $value;
1162 break; 1168 break;
1163 case 'owner': 1169 case 'owner':
@@ -1173,9 +1179,9 @@ class KTAPI_Document extends KTAPI_FolderItem @@ -1173,9 +1179,9 @@ class KTAPI_Document extends KTAPI_FolderItem
1173 { 1179 {
1174 $sql = "select id from users where username='$value'"; 1180 $sql = "select id from users where username='$value'";
1175 $userId = DBUtil::getResultArray($sql); 1181 $userId = DBUtil::getResultArray($sql);
1176 - if (PEAR::isError($value)) 1182 + if (PEAR::isError($userId))
1177 { 1183 {
1178 - return $value; 1184 + return $userId;
1179 } 1185 }
1180 } 1186 }
1181 if (empty($userId)) 1187 if (empty($userId))
@@ -1201,7 +1207,10 @@ class KTAPI_Document extends KTAPI_FolderItem @@ -1201,7 +1207,10 @@ class KTAPI_Document extends KTAPI_FolderItem
1201 foreach($documents as $name=>$value) 1207 foreach($documents as $name=>$value)
1202 { 1208 {
1203 if ($i++ > 0) $sql .= ","; 1209 if ($i++ > 0) $sql .= ",";
1204 - $sql .= "$name='$value'"; 1210 + if (is_numeric($value))
  1211 + $sql .= "$name=$value";
  1212 + else
  1213 + $sql .= "$name='$value'";
1205 } 1214 }
1206 $sql .= " WHERE id=$this->documentid"; 1215 $sql .= " WHERE id=$this->documentid";
1207 $result = DBUtil::runQuery($sql); 1216 $result = DBUtil::runQuery($sql);
@@ -1215,7 +1224,7 @@ class KTAPI_Document extends KTAPI_FolderItem @@ -1215,7 +1224,7 @@ class KTAPI_Document extends KTAPI_FolderItem
1215 $content_id = $this->document->getContentVersionId(); 1224 $content_id = $this->document->getContentVersionId();
1216 $sql = "UPDATE document_content_version SET "; 1225 $sql = "UPDATE document_content_version SET ";
1217 $i=0; 1226 $i=0;
1218 - foreach($documents as $name=>$value) 1227 + foreach($document_content as $name=>$value)
1219 { 1228 {
1220 if ($i++ > 0) $sql .= ","; 1229 if ($i++ > 0) $sql .= ",";
1221 $sql .= "$name='$value'"; 1230 $sql .= "$name='$value'";
@@ -1382,6 +1391,7 @@ class KTAPI_Document extends KTAPI_FolderItem @@ -1382,6 +1391,7 @@ class KTAPI_Document extends KTAPI_FolderItem
1382 */ 1391 */
1383 public function get_detail() 1392 public function get_detail()
1384 { 1393 {
  1394 + global $default;
1385 // make sure we ge tthe latest 1395 // make sure we ge tthe latest
1386 $this->clearCache(); 1396 $this->clearCache();
1387 1397
@@ -1490,7 +1500,17 @@ class KTAPI_Document extends KTAPI_FolderItem @@ -1490,7 +1500,17 @@ class KTAPI_Document extends KTAPI_FolderItem
1490 } 1500 }
1491 $detail['checked_out_by'] = $username; 1501 $detail['checked_out_by'] = $username;
1492 1502
1493 - $detail['checked_out_date'] = $document->getCheckedOutDate(); 1503 + list($major, $minor, $fix) = explode('.', $default->systemVersion);
  1504 +
  1505 +
  1506 + if ($major == 3 && $minor >= 5)
  1507 + {
  1508 + $detail['checked_out_date'] = $document->getCheckedOutDate();
  1509 + }
  1510 + else
  1511 + {
  1512 + $detail['checked_out_date'] = $detail['modified_date'];
  1513 + }
1494 if (is_null($detail['checked_out_date'])) $detail['checked_out_date'] = 'n/a'; 1514 if (is_null($detail['checked_out_date'])) $detail['checked_out_date'] = 'n/a';
1495 1515
1496 $detail['full_path'] = $this->ktapi_folder->get_full_path() . '/' . $this->get_title(); 1516 $detail['full_path'] = $this->ktapi_folder->get_full_path() . '/' . $this->get_title();
ktapi/KTAPISession.inc.php
@@ -36,7 +36,7 @@ @@ -36,7 +36,7 @@
36 * 36 *
37 */ 37 */
38 38
39 -abstract class KTAPI_Session 39 +class KTAPI_Session
40 { 40 {
41 var $ktapi; 41 var $ktapi;
42 var $user = null; 42 var $user = null;
@@ -45,7 +45,7 @@ abstract class KTAPI_Session @@ -45,7 +45,7 @@ abstract class KTAPI_Session
45 var $active; 45 var $active;
46 var $origUserId; 46 var $origUserId;
47 47
48 - public function KTAPI_Session(&$ktapi, &$user) 48 + function KTAPI_Session(&$ktapi, &$user)
49 { 49 {
50 assert(!is_null($ktapi)); 50 assert(!is_null($ktapi));
51 assert(is_a($ktapi,'KTAPI')); 51 assert(is_a($ktapi,'KTAPI'));
@@ -64,7 +64,7 @@ abstract class KTAPI_Session @@ -64,7 +64,7 @@ abstract class KTAPI_Session
64 * 64 *
65 * @return string 65 * @return string
66 */ 66 */
67 - public function get_session() 67 + function get_session()
68 { 68 {
69 return $this->session; 69 return $this->session;
70 } 70 }
@@ -74,7 +74,7 @@ abstract class KTAPI_Session @@ -74,7 +74,7 @@ abstract class KTAPI_Session
74 * 74 *
75 * @return int 75 * @return int
76 */ 76 */
77 - public function get_sessionid() 77 + function get_sessionid()
78 { 78 {
79 return $this->sessionid; 79 return $this->sessionid;
80 } 80 }
@@ -84,19 +84,19 @@ abstract class KTAPI_Session @@ -84,19 +84,19 @@ abstract class KTAPI_Session
84 * 84 *
85 * @return User 85 * @return User
86 */ 86 */
87 - public function &get_user() 87 + function &get_user()
88 { 88 {
89 return $this->user; 89 return $this->user;
90 } 90 }
91 91
92 - public function logout() 92 + function logout()
93 { 93 {
94 $_SESSION['userID'] = $this->origUserId; 94 $_SESSION['userID'] = $this->origUserId;
95 $this->active=false; 95 $this->active=false;
96 // don't need to do anything really 96 // don't need to do anything really
97 } 97 }
98 98
99 - public function is_active() 99 + function is_active()
100 { 100 {
101 return $this->active; 101 return $this->active;
102 } 102 }
@@ -107,7 +107,7 @@ class KTAPI_UserSession extends KTAPI_Session @@ -107,7 +107,7 @@ class KTAPI_UserSession extends KTAPI_Session
107 { 107 {
108 var $ip = null; 108 var $ip = null;
109 109
110 - public function KTAPI_UserSession(&$ktapi, &$user, $session, $sessionid, $ip) 110 + function KTAPI_UserSession(&$ktapi, &$user, $session, $sessionid, $ip)
111 { 111 {
112 parent::KTAPI_Session($ktapi, $user); 112 parent::KTAPI_Session($ktapi, $user);
113 113
@@ -133,7 +133,7 @@ class KTAPI_UserSession extends KTAPI_Session @@ -133,7 +133,7 @@ class KTAPI_UserSession extends KTAPI_Session
133 * @access private 133 * @access private
134 * @return string 134 * @return string
135 */ 135 */
136 - public function resolveIP() 136 + function resolveIP()
137 { 137 {
138 if (getenv("REMOTE_ADDR")) 138 if (getenv("REMOTE_ADDR"))
139 { 139 {
@@ -218,7 +218,7 @@ class KTAPI_UserSession extends KTAPI_Session @@ -218,7 +218,7 @@ class KTAPI_UserSession extends KTAPI_Session
218 * @param string $password 218 * @param string $password
219 * @return KTAPI_Session 219 * @return KTAPI_Session
220 */ 220 */
221 - public function &start_session(&$ktapi, $username, $password, $ip=null) 221 + function &start_session(&$ktapi, $username, $password, $ip=null)
222 { 222 {
223 $this->active=false; 223 $this->active=false;
224 if ( empty($username) ) 224 if ( empty($username) )
@@ -272,7 +272,7 @@ class KTAPI_UserSession extends KTAPI_Session @@ -272,7 +272,7 @@ class KTAPI_UserSession extends KTAPI_Session
272 * @param string $ip 272 * @param string $ip
273 * @return KTAPI_Session 273 * @return KTAPI_Session
274 */ 274 */
275 - public function &get_active_session(&$ktapi, $session, $ip) 275 + function &get_active_session(&$ktapi, $session, $ip)
276 { 276 {
277 $sql = "SELECT id, user_id FROM active_sessions WHERE session_id='$session'"; 277 $sql = "SELECT id, user_id FROM active_sessions WHERE session_id='$session'";
278 if (!empty($ip)) 278 if (!empty($ip))
@@ -313,7 +313,7 @@ class KTAPI_UserSession extends KTAPI_Session @@ -313,7 +313,7 @@ class KTAPI_UserSession extends KTAPI_Session
313 * This closes the current session. 313 * This closes the current session.
314 * 314 *
315 */ 315 */
316 - public function logout() 316 + function logout()
317 { 317 {
318 $sql = "DELETE FROM active_sessions WHERE id=$this->sessionid"; 318 $sql = "DELETE FROM active_sessions WHERE id=$this->sessionid";
319 $result = DBUtil::runQuery($sql); 319 $result = DBUtil::runQuery($sql);
@@ -332,7 +332,7 @@ class KTAPI_UserSession extends KTAPI_Session @@ -332,7 +332,7 @@ class KTAPI_UserSession extends KTAPI_Session
332 332
333 class KTAPI_AnonymousSession extends KTAPI_UserSession 333 class KTAPI_AnonymousSession extends KTAPI_UserSession
334 { 334 {
335 - public function &start_session(&$ktapi, $ip=null) 335 + function &start_session(&$ktapi, $ip=null)
336 { 336 {
337 $user =& User::get(-2); 337 $user =& User::get(-2);
338 if (is_null($user) || PEAR::isError($user) || ($user === false) || !$user->isAnonymous()) 338 if (is_null($user) || PEAR::isError($user) || ($user === false) || !$user->isAnonymous())
@@ -370,7 +370,7 @@ class KTAPI_AnonymousSession extends KTAPI_UserSession @@ -370,7 +370,7 @@ class KTAPI_AnonymousSession extends KTAPI_UserSession
370 370
371 class KTAPI_SystemSession extends KTAPI_Session 371 class KTAPI_SystemSession extends KTAPI_Session
372 { 372 {
373 - public function KTAPI_SystemSession(&$ktapi, &$user) 373 + function KTAPI_SystemSession(&$ktapi, &$user)
374 { 374 {
375 parent::KTAPI_Session($ktapi, $user); 375 parent::KTAPI_Session($ktapi, $user);
376 $this->active=true; 376 $this->active=true;
ktwebservice/webservice.php
@@ -45,7 +45,19 @@ require_once('SOAP/Disco.php'); @@ -45,7 +45,19 @@ require_once('SOAP/Disco.php');
45 require_once('KTDownloadManager.inc.php'); 45 require_once('KTDownloadManager.inc.php');
46 require_once('KTUploadManager.inc.php'); 46 require_once('KTUploadManager.inc.php');
47 require_once(KT_LIB_DIR . '/storage/storagemanager.inc.php'); 47 require_once(KT_LIB_DIR . '/storage/storagemanager.inc.php');
48 -require_once(KT_DIR . '/search2/search/search.inc.php'); 48 +
  49 +list($major, $minor, $fix) = explode('.', $default->systemVersion);
  50 +
  51 +if ($major == 3 && $minor >= 5)
  52 +{
  53 + define('HAS_SEARCH_FUNCTIONALITY',1);
  54 +}
  55 +unset($major); unset($minor); unset($fix);
  56 +
  57 +if (defined('HAS_SEARCH_FUNCTIONALITY'))
  58 +{
  59 + require_once(KT_DIR . '/search2/search/search.inc.php');
  60 +}
49 61
50 // TODO: Test getting files/metadata based on versioning works and implementation is consistent. 62 // TODO: Test getting files/metadata based on versioning works and implementation is consistent.
51 63
@@ -232,6 +244,9 @@ class KTWebService @@ -232,6 +244,9 @@ class KTWebService
232 ); 244 );
233 } 245 }
234 246
  247 + if (defined('HAS_SEARCH_FUNCTIONALITY'))
  248 + {
  249 +
235 $this->__typedef["{urn:$this->namespace}kt_search_result_item"] = 250 $this->__typedef["{urn:$this->namespace}kt_search_result_item"] =
236 array( 251 array(
237 'document_id' => 'int', 252 'document_id' => 'int',
@@ -270,6 +285,7 @@ class KTWebService @@ -270,6 +285,7 @@ class KTWebService
270 'message' => 'string', 285 'message' => 'string',
271 'hits' => "{urn:$this->namespace}kt_search_results" , 286 'hits' => "{urn:$this->namespace}kt_search_results" ,
272 ); 287 );
  288 + }
273 289
274 if ($this->version >= 2) 290 if ($this->version >= 2)
275 { 291 {
@@ -463,11 +479,14 @@ class KTWebService @@ -463,11 +479,14 @@ class KTWebService
463 ); 479 );
464 480
465 /* methods */ 481 /* methods */
  482 + if (defined('HAS_SEARCH_FUNCTIONALITY'))
  483 + {
466 484
467 - $this->__dispatch_map['search'] =  
468 - array('in' => array('session_id' => 'string', 'search'=>'string' ,'options'=>'string'),  
469 - 'out' => array('return' => "{urn:$this->namespace}kt_search_response" ),  
470 - ); 485 + $this->__dispatch_map['search'] = array(
  486 + 'in' => array('session_id' => 'string', 'search'=>'string' ,'options'=>'string'),
  487 + 'out' => array('return' => "{urn:$this->namespace}kt_search_response" ),
  488 + );
  489 + }
471 490
472 // login 491 // login
473 $this->__dispatch_map['login'] = 492 $this->__dispatch_map['login'] =
@@ -520,8 +539,6 @@ class KTWebService @@ -520,8 +539,6 @@ class KTWebService
520 'out' => array('return' => "{urn:$this->namespace}kt_folder_detail"), 539 'out' => array('return' => "{urn:$this->namespace}kt_folder_detail"),
521 'alias'=>'create_folder' 540 'alias'=>'create_folder'
522 ); 541 );
523 -  
524 -  
525 } 542 }
526 543
527 544