first import
This commit is contained in:
@@ -0,0 +1,89 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @file
|
||||
* Miscellaneous functions for Nodequeue Service.
|
||||
*
|
||||
* @author Greg Harvey - http://www.drupaler.co.uk
|
||||
*/
|
||||
|
||||
/**
|
||||
* Returns an array of available nodequeue "channels" available.
|
||||
*
|
||||
* @return
|
||||
* array with key of nodequeue ids and all settings within
|
||||
*/
|
||||
function nodequeue_service_get_nodequeues() {
|
||||
if (module_exists('nodequeue')) {
|
||||
// Fetch all of the queues.
|
||||
$queues = nodequeue_load_queues(nodequeue_get_all_qids(0));
|
||||
if (empty($queues)) {
|
||||
return services_error(t('Nodequeue available, but no nodequeues exist.'));
|
||||
}
|
||||
else {
|
||||
$availablequeues = array();
|
||||
foreach ($queues as $queue) {
|
||||
$availablequeues[$queue->qid]['qid'] = $queue->qid;
|
||||
$availablequeues[$queue->qid]['title'] = $queue->title;
|
||||
$availablequeues[$queue->qid]['subqueue_title'] = $queue->subqueue_title;
|
||||
$availablequeues[$queue->qid]['size'] = $queue->size;
|
||||
$availablequeues[$queue->qid]['link'] = $queue->link;
|
||||
$availablequeues[$queue->qid]['link_remove'] = $queue->link_remove;
|
||||
$availablequeues[$queue->qid]['owner'] = $queue->owner;
|
||||
$availablequeues[$queue->qid]['show_in_ui'] = $queue->show_in_ui;
|
||||
$availablequeues[$queue->qid]['show_in_tab'] = $queue->show_in_tab;
|
||||
$availablequeues[$queue->qid]['show_in_links'] = $queue->show_in_links;
|
||||
$availablequeues[$queue->qid]['reference'] = $queue->reference;
|
||||
$availablequeues[$queue->qid]['reverse'] = $queue->reverse;
|
||||
$availablequeues[$queue->qid]['subqueues'] = $queue->subqueues;
|
||||
$availablequeues[$queue->qid]['types'] = $queue->types;
|
||||
$availablequeues[$queue->qid]['roles'] = $queue->roles;
|
||||
$availablequeues[$queue->qid]['count'] = $queue->count;
|
||||
}
|
||||
}
|
||||
return $availablequeues;
|
||||
}
|
||||
else {
|
||||
return services_error(t('Nodequeue module unavailable.'));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns an array of available subqueues by parent queue id.
|
||||
*
|
||||
* @param $qid
|
||||
* integer representing the queue id of the parent nodequeue
|
||||
*
|
||||
* @return
|
||||
* array with key of subqueue ids and all settings within
|
||||
*/
|
||||
function nodequeue_service_get_subqueues($qid) {
|
||||
if (module_exists('nodequeue')) {
|
||||
$subqueues = nodequeue_load_subqueues_by_queue($qid);
|
||||
if (!empty($subqueues)) {
|
||||
foreach ($subqueues as $subqueue) {
|
||||
$availablequeues[$subqueue->sqid]['sqid'] = $subqueue->sqid;
|
||||
$availablequeues[$subqueue->sqid]['qid'] = $qid;
|
||||
$availablequeues[$subqueue->sqid]['reference'] = $subqueue->reference;
|
||||
$availablequeues[$subqueue->sqid]['title'] = check_plain($subqueue->title);
|
||||
$availablequeues[$subqueue->sqid]['count'] = $subqueue->count;
|
||||
}
|
||||
return $availablequeues;
|
||||
}
|
||||
else {
|
||||
return services_error(t('Specified nodequeue has no subqueues.'));
|
||||
}
|
||||
}
|
||||
else {
|
||||
return services_error(t('Nodequeue module unavailable.'));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Access callback function for the nodequeue service.
|
||||
*/
|
||||
function nodequeue_service_get_nodequeues_access() {
|
||||
if (user_access('get nodequeues')) {
|
||||
return TRUE;
|
||||
}
|
||||
}
|
@@ -0,0 +1,16 @@
|
||||
name = Nodequeue Service
|
||||
description = Provides a nodequeue service.
|
||||
package = Nodequeue
|
||||
core = 7.x
|
||||
|
||||
dependencies[] = services
|
||||
dependencies[] = nodequeue
|
||||
|
||||
files[] = nodequeue_service.inc
|
||||
|
||||
; Information added by drupal.org packaging script on 2011-09-20
|
||||
version = "7.x-2.0-beta1"
|
||||
core = "7.x"
|
||||
project = "nodequeue"
|
||||
datestamp = "1316558104"
|
||||
|
@@ -0,0 +1,51 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @file
|
||||
* Provides a nodequeue service.
|
||||
*
|
||||
* @author Greg Harvey - http://www.drupaler.co.uk
|
||||
*/
|
||||
|
||||
/**
|
||||
* Implements hook_permission().
|
||||
*/
|
||||
function nodequeue_service_permission() {
|
||||
return array(
|
||||
'get nodequeues' => array(
|
||||
'title' => t('Get nodequeues'),
|
||||
'description' => t('TODO Add a description for get nodequeues'),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Implements hook_service().
|
||||
*/
|
||||
function nodequeue_service_service() {
|
||||
return array(
|
||||
array(
|
||||
'#method' => 'nodequeue.getQueues',
|
||||
'#callback' => 'nodequeue_service_get_nodequeues',
|
||||
'#access callback' => 'nodequeue_service_get_nodequeues_access',
|
||||
'#file' => array('file' => 'inc', 'module' => 'nodequeue_service'),
|
||||
'#return' => 'struct',
|
||||
'#help' => t('Returns a keyed array by qid of available nodequeues and their settings.')
|
||||
),
|
||||
array(
|
||||
'#method' => 'nodequeue.getSubQueues',
|
||||
'#callback' => 'nodequeue_service_get_subqueues',
|
||||
'#access callback' => 'nodequeue_service_get_nodequeues_access',
|
||||
'#file' => array('file' => 'inc', 'module' => 'nodequeue_service'),
|
||||
'#args' => array(
|
||||
array(
|
||||
'#name' => 'qid',
|
||||
'#type' => 'int',
|
||||
'#description' => t('A parent nodequeue queue ID.'),
|
||||
),
|
||||
),
|
||||
'#return' => 'struct',
|
||||
'#help' => t('Returns a keyed array by sqid of available subqueues and their settings.')
|
||||
),
|
||||
);
|
||||
}
|
Reference in New Issue
Block a user