| <?php | |
| /******************************************************************************* | |
| * Copyright (c) 2016 Eclipse Foundation and others. | |
| * All rights reserved. This program and the accompanying materials | |
| * are made available under the terms of the Eclipse Public License v1.0 | |
| * which accompanies this distribution, and is available at | |
| * http://www.eclipse.org/legal/epl-v10.html | |
| * | |
| * Contributors: | |
| * Christopher Guindon (Eclipse Foundation) - Initial implementation | |
| *******************************************************************************/ | |
| require_once('lib/eclipseussblob.class.php'); | |
| /** | |
| * MpcFavorites class | |
| * | |
| * Usage example: | |
| * | |
| * include_once('mpcfavorites.class.php'); | |
| * $EclipseUSS = new MpcFavorites(); | |
| * $EclipseUSS->loginSSO(); | |
| * $EclipseUSS->addFavorite(array('1','2,'9'))); | |
| * $EclipseUSS->removeFavorite(array('1', '2')); | |
| * $EclipseUSS->logout(); | |
| * | |
| * @author chrisguindon | |
| */ | |
| class MpcFavorites extends EclipseUSSBlob{ | |
| /** | |
| * MPC application token | |
| * | |
| * @var string | |
| */ | |
| private $application_token = 'MZ04RMOpksKN5GpxKXafq2MSjSP'; | |
| /** | |
| * Mpc favorites application key | |
| * | |
| * @var string | |
| */ | |
| private $application_key = 'mpc_favorites'; | |
| /** | |
| * Fetch Marketplace favorite(s). | |
| */ | |
| function __construct(App $App = NULL) { | |
| parent::__construct($App); | |
| } | |
| /** | |
| * Add Marketplace favorite(s) | |
| * @param array $nodes | |
| * | |
| * @return bool | |
| */ | |
| public function addFavorite($nid = '') { | |
| return $this->put('marketplace/favorites/' . $nid); | |
| } | |
| /** | |
| * Remove Marketplace favorite(s) | |
| * | |
| * @param array $nodes | |
| * | |
| * @return bool | |
| */ | |
| public function removeFavorite($nid = '') { | |
| return $this->delete('marketplace/favorites/' . $nid); | |
| } | |
| /** | |
| * Rename user favorites | |
| * | |
| * @param string $name | |
| * @return Response | |
| */ | |
| public function renameFavoritelist($name = ""){ | |
| return $this->post('marketplace/favorites/rename_list', json_encode(array('list_name' => $name))); | |
| } | |
| /** | |
| * Fetch Marketplace favorite(s). | |
| */ | |
| public function getMpcFavoritesIndex($arguments = array()) { | |
| $arguments['random'] = rand(0, 1000); | |
| $query = http_build_query($arguments); | |
| return $this->get('marketplace/favorites?' . $query); | |
| } | |
| /** | |
| * Get list of users who favorited a listing | |
| * | |
| * @param number $content_id | |
| * @param array $arguments | |
| * | |
| * @return bool/stdClass | |
| */ | |
| public function getMpcFavorites($content_id = 0, $arguments = array()) { | |
| $arguments['random'] = rand(0, 1000); | |
| $query = http_build_query($arguments); | |
| return $this->get('marketplace/favorites/' . $content_id .'?' . $query); | |
| } | |
| /** | |
| * Get favorite count from response of getMpcFavoritesIndex() | |
| * | |
| * @param stdClass $data | |
| * @param unknown $content_id | |
| * | |
| * @return bool/int | |
| */ | |
| public function getFavoriteCountFromResponse($data, $content_id) { | |
| foreach ($data['mpc_favorites'] as $favorites) { | |
| if ($favorites['content_id'] == $content_id) { | |
| return $favorites['count']; | |
| } | |
| } | |
| return FALSE; | |
| } | |
| } |