Commit 767fd85c1aba8f79591a2ea5a9250c4f47ec4f72

Authored by Kevin Cyster
1 parent 22afe278

Added webservice functionality for subscriptions

Committed By: Kevin Cyster

Reviewed By: Megan Watson
Showing 1 changed file with 172 additions and 0 deletions
ktapi/ktapi.inc.php
... ... @@ -3386,6 +3386,178 @@ class KTAPI
3386 3386  
3387 3387 return $response;
3388 3388 }
  3389 +
  3390 + /**
  3391 + * Method to check if a document is subscribed
  3392 + *
  3393 + * @author KnowledgeTree Team
  3394 + * @access public
  3395 + * @param string $documentID The id of the document
  3396 + * @return array $response The formatted response array
  3397 + */
  3398 + public function is_document_subscribed($documentID)
  3399 + {
  3400 + $document = $this->get_document_by_id($documentID);
  3401 + if(PEAR::isError($document)){
  3402 + $response['message'] = $document->getMessage();
  3403 + $response['status_code'] = 1;
  3404 + return $response;
  3405 + }
  3406 +
  3407 + $result = $document->isSubscribed();
  3408 + $response['message'] = '';
  3409 + $response['status_code'] = 0;
  3410 + if($result){
  3411 + $response['results']['subscribed'] = 'TRUE';
  3412 + }else{
  3413 + $response['results']['subscribed'] = 'FALSE';
  3414 + }
  3415 + return $response;
  3416 + }
  3417 +
  3418 + /**
  3419 + * Method to subscribe to a document
  3420 + *
  3421 + * @author KnowledgeTree Team
  3422 + * @access public
  3423 + * @param string $documentID The id of the document
  3424 + * @return array $response The formatted response array
  3425 + */
  3426 + public function subscribe_to_document($documentID)
  3427 + {
  3428 + $document = $this->get_document_by_id($documentID);
  3429 + if(PEAR::isError($document)){
  3430 + $response['message'] = $document->getMessage();
  3431 + $response['status_code'] = 1;
  3432 + return $response;
  3433 + }
  3434 +
  3435 + $result = $document->subscribe();
  3436 + if($result === TRUE){
  3437 + $response['message'] = '';
  3438 + $response['status_code'] = 0;
  3439 + $response['results']['action_result'] = 'TRUE';
  3440 + }else{
  3441 + $response['message'] = $result;
  3442 + $response['status_code'] = 1;
  3443 + }
  3444 + return $response;
  3445 + }
  3446 +
  3447 + /**
  3448 + * Method to unsubscribe from a document
  3449 + *
  3450 + * @author KnowledgeTree Team
  3451 + * @access public
  3452 + * @param string $documentID The id of the document
  3453 + * @return array $response The formatted response array
  3454 + */
  3455 + public function unsubscribe_from_document($documentID)
  3456 + {
  3457 + $document = $this->get_document_by_id($documentID);
  3458 + if(PEAR::isError($document)){
  3459 + $response['message'] = $document->getMessage();
  3460 + $response['status_code'] = 1;
  3461 + return $response;
  3462 + }
  3463 +
  3464 + $result = $document->unsubscribe();
  3465 + if($result === TRUE){
  3466 + $response['message'] = '';
  3467 + $response['status_code'] = 0;
  3468 + $response['results']['action_result'] = 'TRUE';
  3469 + }else{
  3470 + $response['message'] = $result;
  3471 + $response['status_code'] = 1;
  3472 + }
  3473 + return $response;
  3474 + }
  3475 +
  3476 + /**
  3477 + * Method to check if a folder is subscribed
  3478 + *
  3479 + * @author KnowledgeTree Team
  3480 + * @access public
  3481 + * @param string $folderID The id of the folder
  3482 + * @return array $response The formatted response array
  3483 + */
  3484 + public function is_folder_subscribed($folderID)
  3485 + {
  3486 + $folder = $this->get_folder_by_id($folderID);
  3487 + if(PEAR::isError($folder)){
  3488 + $response['message'] = $folder->getMessage();
  3489 + $response['status_code'] = 1;
  3490 + return $response;
  3491 + }
  3492 +
  3493 + $result = $folder->isSubscribed();
  3494 + $response['message'] = '';
  3495 + $response['status_code'] = 0;
  3496 + if($result){
  3497 + $response['results']['subscribed'] = 'TRUE';
  3498 + }else{
  3499 + $response['results']['subscribed'] = 'FALSE';
  3500 + }
  3501 + return $response;
  3502 + }
  3503 +
  3504 + /**
  3505 + * Method to subscribe to a folder
  3506 + *
  3507 + * @author KnowledgeTree Team
  3508 + * @access public
  3509 + * @param string $folderID The id of the folder
  3510 + * @return array $response The formatted response array
  3511 + */
  3512 + public function subscribe_to_folder($folderID)
  3513 + {
  3514 + $folder = $this->get_folder_by_id($folderID);
  3515 + if(PEAR::isError($folder)){
  3516 + $response['message'] = $folder->getMessage();
  3517 + $response['status_code'] = 1;
  3518 + return $response;
  3519 + }
  3520 +
  3521 + $result = $folder->subscribe();
  3522 + if($result === TRUE){
  3523 + $response['message'] = '';
  3524 + $response['status_code'] = 0;
  3525 + $response['results']['action_result'] = 'TRUE';
  3526 + }else{
  3527 + $response['message'] = $result;
  3528 + $response['status_code'] = 1;
  3529 + }
  3530 + return $response;
  3531 + }
  3532 +
  3533 + /**
  3534 + * Method to unsubscribe from a folder
  3535 + *
  3536 + * @author KnowledgeTree Team
  3537 + * @access public
  3538 + * @param string $folderID The id of the folder
  3539 + * @return array $response The formatted response array
  3540 + */
  3541 + public function unsubscribe_from_folder($folderID)
  3542 + {
  3543 + $folder = $this->get_folder_by_id($folderID);
  3544 + if(PEAR::isError($folder)){
  3545 + $response['message'] = $folder->getMessage();
  3546 + $response['status_code'] = 1;
  3547 + return $response;
  3548 + }
  3549 +
  3550 + $result = $folder->unsubscribe();
  3551 + if($result === TRUE){
  3552 + $response['message'] = '';
  3553 + $response['status_code'] = 0;
  3554 + $response['results']['action_result'] = 'TRUE';
  3555 + }else{
  3556 + $response['message'] = $result;
  3557 + $response['status_code'] = 1;
  3558 + }
  3559 + return $response;
  3560 + }
3389 3561 }
3390 3562  
3391 3563  
... ...