Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions ting.admin.inc
Original file line number Diff line number Diff line change
Expand Up @@ -39,23 +39,23 @@ function ting_admin_ting_settings($form_state) {
'#type' => 'textfield',
'#title' => t('Scan service URL'),
'#description' => t('URL to the Ting scan webservice, e.g. http://openscan.addi.dk/2.0/'),
'#required' => TRUE,
'#required' => FALSE,
'#default_value' => variable_get('ting_scan_url', ''),
);

$form['ting']['ting_spell_url'] = array(
'#type' => 'textfield',
'#title' => t('Spell service URL'),
'#description' => t('URL to the Ting spell webservice, e.g. http://openspell.addi.dk/1.2/'),
'#required' => TRUE,
'#required' => FALSE,
'#default_value' => variable_get('ting_spell_url', ''),
);

$form['ting']['ting_recommendation_url'] = array(
'#type' => 'textfield',
'#title' => t('Recommendation service URL'),
'#description' => t('URL to the Ting recommendation webservice (Andre der har lånt...) , e.g. http://openadhl.addi.dk/1.1/'),
'#required' => TRUE,
'#required' => FALSE,
'#default_value' => variable_get('ting_recommendation_url', ''),
);

Expand Down
25 changes: 22 additions & 3 deletions ting.client.inc
Original file line number Diff line number Diff line change
Expand Up @@ -46,10 +46,16 @@ function ting_get_object($object_id, $collection = FALSE, $with_relations = FALS

// Build request request and set object id.
$request = ting_get_request_factory()->getObjectRequest();
if (!is_object($request)) {
return NULL;
}
if ($collection) {
// If this is a collection we need to do a collection request, which is
// a search request.
$request = ting_get_request_factory()->getCollectionRequest();
if (!is_object($request)) {
return NULL;
}
$request->setAllObjects(FALSE);
}
$request->setObjectId($object_id);
Expand Down Expand Up @@ -166,6 +172,9 @@ function ting_get_objects($ids) {
$query_chunks = array_chunk($query, 50);
foreach ($query_chunks as $query_chunk) {
$request = ting_get_request_factory()->getSearchRequest();
if (!is_object($request)) {
return NULL;
}
if ($agency) {
$request->setAgency($agency);
}
Expand Down Expand Up @@ -226,6 +235,9 @@ function ting_get_objects($ids) {
*/
function ting_do_search($query, $page = 1, $results_per_page = 10, $options = array()) {
$request = ting_get_request_factory()->getSearchRequest();
if (!is_object($request)) {
return NULL;
}
$request->setQuery($query);
if ($agency = variable_get('ting_agency', FALSE)) {
$request->setAgency($agency);
Expand Down Expand Up @@ -584,6 +596,9 @@ function _ting_cache_update_relations_status($object, $with_relations = FALSE) {
*/
function ting_get_object_recommendations($isbn, $num_results = 10) {
$request = ting_get_request_factory()->getObjectRecommendationRequest();
if (!is_object($request)) {
return FALSE;
}
$request->setIsbn($isbn);
$request->setNumResults($num_results);
return ting_execute($request);
Expand Down Expand Up @@ -620,9 +635,6 @@ function ting_get_request_factory() {
$urls = array();
foreach ($url_variables as $name => $setting) {
$urls[$name] = variable_get($setting, FALSE);
if (!$urls[$name]) {
throw new TingClientException('No Ting webservice url defined for ' . $name);
}
}

$request_factory = new TingClientRequestFactory($urls);
Expand Down Expand Up @@ -735,6 +747,10 @@ function ting_get_client() {
*/
function ting_do_scan($query, $phrase = 'anyIndexes', $num_results = 10) {
$request = ting_get_request_factory()->getScanRequest();
if (!is_object($request)) {
return FALSE;
}

$request->setField('phrase.' . $phrase);
$request->setLower($query);
$request = ting_add_agency($request);
Expand Down Expand Up @@ -772,6 +788,9 @@ function ting_add_agency(TingClientScanRequest $request) {
*/
function ting_get_spell_suggestions($word, $num_results = 10) {
$request = ting_get_request_factory()->getSpellRequest();
if (!is_object($request)) {
return FALSE;
}
$request->setWord($word);
$request->setNumResults($num_results);
return ting_execute($request);
Expand Down