Now all modules are in core modules folder
This commit is contained in:
parent
5ba1cdfa0b
commit
05b6a91b0c
1907 changed files with 0 additions and 0 deletions
|
@ -0,0 +1,73 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* @file
|
||||
* Admin settings for custom search taxonomy
|
||||
*/
|
||||
|
||||
/**
|
||||
* Implementation of hook_help().
|
||||
*/
|
||||
function custom_search_taxonomy_help($path, $arg) {
|
||||
switch ($path) {
|
||||
case 'admin/settings/custom_search/taxonomy':
|
||||
$output = t('Select the vocabularies to present as search options in the search block. If none is selected, no selector will be displayed.');
|
||||
break;
|
||||
}
|
||||
return $output;
|
||||
}
|
||||
|
||||
function custom_search_taxonomy_admin() {
|
||||
$vocabularies = taxonomy_get_vocabularies();
|
||||
if (count($vocabularies)) {
|
||||
$options = array();
|
||||
foreach ($vocabularies as $voc) {
|
||||
$form[$voc->name] = array(
|
||||
'#type' => 'fieldset',
|
||||
'#title' => $voc->name,
|
||||
'#collapsible' => TRUE,
|
||||
'#collapsed' => (variable_get('custom_search_voc' . $voc->vid . '_selector', 'disabled') == 'disabled') ? TRUE : FALSE,
|
||||
);
|
||||
$form[$voc->name]['custom_search_voc' . $voc->vid . '_selector'] = array(
|
||||
'#type' => 'select',
|
||||
'#title' => t('Selector type'),
|
||||
'#options' => array(
|
||||
'disabled' => t('Disabled'),
|
||||
'select' => t('Drop-down list'),
|
||||
'selectmultiple' => t('Drop-down list with multiple choices'),
|
||||
'radios' => t('Radio buttons'),
|
||||
'checkboxes' => t('Checkboxes'),
|
||||
),
|
||||
'#description' => t('Choose which selector type to use.'),
|
||||
'#default_value' => variable_get('custom_search_voc' . $voc->vid . '_selector', 'disabled'),
|
||||
);
|
||||
if (module_exists('hs_taxonomy')) $form[$voc->name]['custom_search_voc' . $voc->vid . '_selector']['#options']['hierarchical_select'] = t('Hierarchical selector');
|
||||
$form[$voc->name]['custom_search_voc' . $voc->vid . '_selector_depth'] = array(
|
||||
'#type' => 'textfield',
|
||||
'#title' => t('Depth'),
|
||||
'#size' => 2,
|
||||
'#default_value' => variable_get('custom_search_voc' . $voc->vid . '_selector_depth', 0),
|
||||
'#description' => t('Define the maximum depth of terms being displayed. The default value is "0" which disables the limit.'),
|
||||
);
|
||||
$form[$voc->name]['custom_search_voc' . $voc->vid . '_selector_label_visibility'] = array(
|
||||
'#type' => 'checkbox',
|
||||
'#title' => t('Display label'),
|
||||
'#default_value' => variable_get('custom_search_voc' . $voc->vid . '_selector_label_visibility', TRUE),
|
||||
);
|
||||
$form[$voc->name]['custom_search_voc' . $voc->vid . '_selector_label'] = array(
|
||||
'#type' => 'textfield',
|
||||
'#title' => t('Label text'),
|
||||
'#default_value' => variable_get('custom_search_voc' . $voc->vid . '_selector_label', $voc->name),
|
||||
'#description' => t('Enter the label text for the selector. The default value is "!default".', array('!default' => $voc->name)),
|
||||
);
|
||||
$form[$voc->name]['custom_search_voc' . $voc->vid . '_selector_all'] = array(
|
||||
'#type' => 'textfield',
|
||||
'#title' => t('-Any- text'),
|
||||
'#default_value' => variable_get('custom_search_voc' . $voc->vid . '_selector_all', CUSTOM_SEARCH_ALL_TEXT_DEFAULT),
|
||||
'#required' => TRUE,
|
||||
'#description' => t('Enter the text for "any term" choice. The default value is "!default".', array('!default' => CUSTOM_SEARCH_ALL_TEXT_DEFAULT)),
|
||||
);
|
||||
}
|
||||
}
|
||||
return system_settings_form($form);
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
name = Custom Search Taxonomy
|
||||
description = Adds taxonomy selectors to Custom Search.
|
||||
core = 6.x
|
||||
package = Custom Search
|
||||
dependencies[] = custom_search
|
||||
dependencies[] = taxonomy
|
||||
; Information added by Drupal.org packaging script on 2014-04-23
|
||||
version = "6.x-1.13"
|
||||
core = "6.x"
|
||||
project = "custom_search"
|
||||
datestamp = "1398258531"
|
||||
|
|
@ -0,0 +1,42 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* @file
|
||||
* Install, update, and uninstall functions for the custom search module.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Implementation of hook_install().
|
||||
*/
|
||||
function custom_search_taxonomy_install() {
|
||||
db_query("UPDATE {system} SET weight = 101 WHERE name = 'custom_search_taxonomy'");
|
||||
}
|
||||
|
||||
/**
|
||||
* Implementation of hook_uninstall().
|
||||
*/
|
||||
function custom_search_taxonomy_uninstall() {
|
||||
$vocabularies = taxonomy_get_vocabularies();
|
||||
foreach ($vocabularies as $voc) {
|
||||
variable_del('custom_search_voc' . $voc->vid . '_selector');
|
||||
variable_del('custom_search_voc' . $voc->vid . '_selector_depth');
|
||||
variable_del('custom_search_voc' . $voc->vid . '_selector_label_visibility');
|
||||
variable_del('custom_search_voc' . $voc->vid . '_selector_label');
|
||||
variable_del('custom_search_voc' . $voc->vid . '_selector_all');
|
||||
variable_del('custom_search_taxonomy' . $voc->vid . '_weight');
|
||||
variable_del('custom_search_taxonomy' . $voc->vid . '_region');
|
||||
if (module_exists('custom_search_blocks')) {
|
||||
$blocks = variable_get('custom_search_blocks_number', 1);
|
||||
for ($delta=1 ; $delta<=$blocks ; $delta++) {
|
||||
variable_del('custom_search_blocks_' . $delta . '_voc' . $voc->vid . '_selector');
|
||||
variable_del('custom_search_blocks_' . $delta . '_voc' . $voc->vid . '_selector_depth');
|
||||
variable_del('custom_search_blocks_' . $delta . '_voc' . $voc->vid . '_selector_label_visibility');
|
||||
variable_del('custom_search_blocks_' . $delta . '_voc' . $voc->vid . '_selector_label');
|
||||
variable_del('custom_search_blocks_' . $delta . '_voc' . $voc->vid . '_selector_all');
|
||||
variable_del('custom_search_blocks_' . $delta . '_taxonomy' . $voc->vid . '_weight');
|
||||
variable_del('custom_search_blocks_' . $delta . '_taxonomy' . $voc->vid . '_region');
|
||||
variable_del('custom_search_blocks_' . $delta . '_paths_terms_separator');
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,241 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* @file
|
||||
* Bring customizations to the default search box
|
||||
*
|
||||
* Adds taxonomy options to the search form
|
||||
*/
|
||||
|
||||
/**
|
||||
* Implementation of hook_menu().
|
||||
*/
|
||||
function custom_search_taxonomy_menu() {
|
||||
$items['admin/settings/custom_search/taxonomy'] = array(
|
||||
'title' => 'Taxonomy',
|
||||
'description' => 'Select the vocabularies to present as search options in the search block.',
|
||||
'page arguments' => array('custom_search_taxonomy_admin'),
|
||||
'access arguments' => array('administer custom search'),
|
||||
'file' => 'custom_search_taxonomy.admin.inc',
|
||||
'type' => MENU_LOCAL_TASK,
|
||||
'weight' => 2,
|
||||
);
|
||||
return $items;
|
||||
}
|
||||
|
||||
/**
|
||||
* Implementation of hook_form_alter().
|
||||
*/
|
||||
function custom_search_taxonomy_form_alter(&$form, $form_state, $form_id) {
|
||||
|
||||
// Filter the form_id value to identify all the custom blocks
|
||||
$form_id_processed = $form_id;
|
||||
$delta = '';
|
||||
for ($a = 1 ; $a <= variable_get('custom_search_blocks_number', 1) ; $a++) {
|
||||
if ($form_id == 'custom_search_blocks_form_' . $a) {
|
||||
$form_id_processed = 'custom_search_blocks_form';
|
||||
$delta = 'blocks_' . $a . '_';
|
||||
}
|
||||
}
|
||||
|
||||
switch ($form_id_processed) {
|
||||
|
||||
case 'search_theme_form':
|
||||
case 'search_block_form':
|
||||
case 'custom_search_blocks_form':
|
||||
|
||||
if (user_access('use custom search')) {
|
||||
$vocabularies = taxonomy_get_vocabularies();
|
||||
foreach ($vocabularies as $voc) {
|
||||
if (variable_get('custom_search_' . $delta . 'voc' . $voc->vid . '_selector', 'disabled') != 'disabled') {
|
||||
$options = array();
|
||||
$options['c-all'] = variable_get('custom_search_' . $delta . 'voc' . $voc->vid . '_selector_all', CUSTOM_SEARCH_ALL_TEXT_DEFAULT);
|
||||
$vocabulary_depth = (!variable_get('custom_search_' . $delta . 'voc' . $voc->vid . '_selector_depth', 0)) ? NULL : variable_get('custom_search_' . $delta . 'voc' . $voc->vid . '_selector_depth', 0);
|
||||
$terms = taxonomy_get_tree($voc->vid, 0, -1, $vocabulary_depth);
|
||||
foreach ($terms as $term) {
|
||||
$options['c-' . $term->tid] = (drupal_substr(variable_get('custom_search_' . $delta . 'voc' . $voc->vid . '_selector', 'disabled'), 0, 6) == 'select') ? str_repeat('-', $term->depth) . ' ' . $term->name : $term->name ;
|
||||
}
|
||||
$selector_type = variable_get('custom_search_' . $delta . 'voc' . $voc->vid . '_selector', 'select');
|
||||
if ($selector_type == 'selectmultiple') {
|
||||
$selector_type = 'select';
|
||||
$multiple = TRUE;
|
||||
}
|
||||
else $multiple = FALSE;
|
||||
$form['custom_search_vocabulary_' . $voc->vid] = array(
|
||||
'#type' => $selector_type,
|
||||
'#multiple' => $multiple,
|
||||
'#title' => variable_get('custom_search_' . $delta . 'voc' . $voc->vid . '_selector_label', $voc->name),
|
||||
'#options' => $options,
|
||||
'#default_value' => ($selector_type == 'checkboxes') ? array('c-all') : 'c-all',
|
||||
'#attributes' => ($selector_type != 'radios' && $selector_type != 'checkboxes') ? array('class' => 'custom-search-selector custom-search-vocabulary custom-search-vocabulary-' . $voc->vid) : array(),
|
||||
'#prefix' => ($selector_type == 'radios' || $selector_type == 'checkboxes') ? '<div class="custom-search-selector custom-search-vocabulary custom-search-vocabulary-' . $voc->vid . '">' : '',
|
||||
'#suffix' => ($selector_type == 'radios' || $selector_type == 'checkboxes') ? '</div>' : '',
|
||||
'#weight' => variable_get('custom_search_' . $delta . 'taxonomy' . $voc->vid . '_weight', 2),
|
||||
);
|
||||
|
||||
if ($selector_type == "hierarchical_select") {
|
||||
$form['custom_search_vocabulary_' . $voc->vid]['#config'] = array (
|
||||
'module' => 'hs_taxonomy',
|
||||
'params' => array('vid' => $voc->vid),
|
||||
);
|
||||
unset($form['custom_search_vocabulary_' . $voc->vid]['#options']);
|
||||
$form['#after_build'][] = 'hierarchical_select_after_build';
|
||||
}
|
||||
|
||||
if (variable_get('custom_search_' . $delta . 'taxonomy' . $voc->vid . '_region', 'block') == 'popup') {
|
||||
$form['popup']['custom_search_vocabulary_' . $voc->vid] = $form['custom_search_vocabulary_' . $voc->vid];
|
||||
unset($form['custom_search_vocabulary_' . $voc->vid]);
|
||||
}
|
||||
if (!variable_get('custom_search_' . $delta . 'voc' . $voc->vid . '_selector_label_visibility', TRUE)) $form['custom_search_vocabulary_' . $voc->vid]['#post_render'] = array('_custom_search_hide_label');
|
||||
}
|
||||
}
|
||||
|
||||
// Custom paths
|
||||
if (variable_get('custom_search_' . $delta . 'paths', '') != '') {
|
||||
$form['custom_search_paths_terms_separator'] = array(
|
||||
'#type' => 'hidden',
|
||||
'#default_value' => variable_get('custom_search_' . $delta . 'paths_terms_separator', CUSTOM_SEARCH_PATHS_TERMS_SEPARATOR_DEFAULT),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case 'block_admin_configure':
|
||||
if (isset($form['module']) && $form['module']['#value'] == 'custom_search_blocks') {
|
||||
|
||||
$delta = $form['delta']['#value'];
|
||||
|
||||
$vocabularies = taxonomy_get_vocabularies();
|
||||
if (count($vocabularies)) {
|
||||
$form['block_settings']['taxonomy'] = array(
|
||||
'#type' => 'fieldset',
|
||||
'#title' => t('Taxonomy'),
|
||||
'#description' => t('Select the vocabularies to present as search options in the search block. If none is selected, no selector will be displayed.'),
|
||||
'#collapsible' => TRUE,
|
||||
);
|
||||
$w = 1;
|
||||
$collapsed = TRUE;
|
||||
foreach ($vocabularies as $voc) {
|
||||
// Selectors
|
||||
if (variable_get('custom_search_blocks_' . $delta . '_voc' . $voc->vid . '_selector', 'disabled') != 'disabled') {
|
||||
$collapsed = FALSE;
|
||||
$voc_collapsed = FALSE;
|
||||
}
|
||||
else $voc_collapsed = TRUE;
|
||||
$form['block_settings']['taxonomy'][$voc->name] = array(
|
||||
'#type' => 'fieldset',
|
||||
'#title' => check_plain($voc->name),
|
||||
'#collapsible' => TRUE,
|
||||
'#collapsed' => $voc_collapsed,
|
||||
);
|
||||
$form['block_settings']['taxonomy'][$voc->name]['custom_search_blocks_' . $delta . '_voc' . $voc->vid . '_selector'] = array(
|
||||
'#type' => 'select',
|
||||
'#title' => t('Selector type'),
|
||||
'#options' => array(
|
||||
'disabled' => t('Disabled'),
|
||||
'select' => t('Drop-down list'),
|
||||
'selectmultiple' => t('Drop-down list with multiple choices'),
|
||||
'radios' => t('Radio buttons'),
|
||||
'checkboxes' => t('Checkboxes'),
|
||||
),
|
||||
'#description' => t('Choose which selector type to use.'),
|
||||
'#default_value' => variable_get('custom_search_blocks_' . $delta . '_voc' . $voc->vid . '_selector', 'disabled'),
|
||||
);
|
||||
$form['block_settings']['taxonomy'][$voc->name]['custom_search_blocks_' . $delta . '_voc' . $voc->vid . '_selector_depth'] = array(
|
||||
'#type' => 'textfield',
|
||||
'#title' => t('Depth'),
|
||||
'#size' => 2,
|
||||
'#default_value' => variable_get('custom_search_blocks_' . $delta . '_voc' . $voc->vid . '_selector_depth', 0),
|
||||
'#description' => t('Define the maximum depth of terms being displayed. The default value is "0" which disables the limit.'),
|
||||
);
|
||||
$form['block_settings']['taxonomy'][$voc->name]['custom_search_blocks_' . $delta . '_voc' . $voc->vid . '_selector_label_visibility'] = array(
|
||||
'#type' => 'checkbox',
|
||||
'#title' => t('Display label'),
|
||||
'#default_value' => variable_get('custom_search_blocks_' . $delta . '_voc' . $voc->vid . '_selector_label_visibility', TRUE),
|
||||
);
|
||||
$form['block_settings']['taxonomy'][$voc->name]['custom_search_blocks_' . $delta . '_voc' . $voc->vid . '_selector_label'] = array(
|
||||
'#type' => 'textfield',
|
||||
'#title' => t('Label text'),
|
||||
'#default_value' => variable_get('custom_search_blocks_' . $delta . '_voc' . $voc->vid . '_selector_label', $voc->name),
|
||||
'#description' => t('Enter the label text for the selector. The default value is "@default".', array('@default' => $voc->name)),
|
||||
);
|
||||
$form['block_settings']['taxonomy'][$voc->name]['custom_search_blocks_' . $delta . '_voc' . $voc->vid . '_selector_all'] = array(
|
||||
'#type' => 'textfield',
|
||||
'#title' => t('-Any- text'),
|
||||
'#default_value' => variable_get('custom_search_blocks_' . $delta . '_voc' . $voc->vid . '_selector_all', CUSTOM_SEARCH_ALL_TEXT_DEFAULT),
|
||||
'#required' => TRUE,
|
||||
'#description' => t('Enter the text for "any term" choice. The default value is "!default".', array('!default' => CUSTOM_SEARCH_ALL_TEXT_DEFAULT)),
|
||||
);
|
||||
// Ordering
|
||||
$form['block_settings']['order']['custom_search_blocks_' . $delta . '_order']['taxonomy' . $voc->vid] = array(
|
||||
'#title' => t('Taxonomy') . ': ' . $voc->name,
|
||||
'#weight' => variable_get('custom_search_blocks_' . $delta . '_taxonomy' . $voc->vid . '_weight', $w),
|
||||
);
|
||||
$form['block_settings']['order']['custom_search_blocks_' . $delta . '_order']['taxonomy' . $voc->vid]['sort'] = array(
|
||||
'#type' => 'weight',
|
||||
'#default_value' => variable_get('custom_search_blocks_' . $delta . '_taxonomy' . $voc->vid . '_weight', $w),
|
||||
'#attributes' => array('class' => 'sort-select sort-select-' . variable_get('custom_search_blocks_' . $delta . '_taxonomy' . $voc->vid . '_region', 'block')),
|
||||
);
|
||||
$form['block_settings']['order']['custom_search_blocks_' . $delta . '_order']['taxonomy' . $voc->vid]['region'] = array(
|
||||
'#type' => 'select',
|
||||
'#options' => array(
|
||||
'block' => t('Block'),
|
||||
'popup' => t('Popup')
|
||||
),
|
||||
'#default_value' => variable_get('custom_search_blocks_' . $delta . '_taxonomy' . $voc->vid . '_region', 'block'),
|
||||
'#attributes' => array('class' => 'region-select region-select-' . variable_get('custom_search_blocks_' . $delta . '_taxonomy' . $voc->vid . '_region', 'block')),
|
||||
);
|
||||
$w++;
|
||||
}
|
||||
$form['block_settings']['taxonomy']['#collapsed'] = $collapsed;
|
||||
}
|
||||
|
||||
$form['block_settings']['custom_search_paths_admin']['custom_search_blocks_' . $delta . '_paths']['#description'] = t('If you want to use custom search paths, enter them here in the form <em>path</em>|<em>label</em>, one per line (if only one path is specified, the selector will be hidden). The [key] token will be replaced by what is entered in the search box, and the [terms] token will be replaced by the selected taxonomy term id(s). Ie: mysearch/[key]/[terms]|My custom search label.');
|
||||
$form['block_settings']['custom_search_paths_admin']['custom_search_blocks_' . $delta . '_paths_terms_separator'] = array(
|
||||
'#type' => 'textfield',
|
||||
'#title' => t('Taxonomy terms separator'),
|
||||
'#default_value' => variable_get('custom_search_blocks_' . $delta . '_paths_terms_separator', CUSTOM_SEARCH_PATHS_TERMS_SEPARATOR_DEFAULT),
|
||||
'#size' => 2
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case 'custom_search_admin':
|
||||
$vocabularies = taxonomy_get_vocabularies();
|
||||
$w = 1;
|
||||
foreach ($vocabularies as $voc) {
|
||||
$form['order']['custom_search_order']['taxonomy' . $voc->vid] = array(
|
||||
'#title' => t('Taxonomy') . ': ' . check_plain($voc->name),
|
||||
'#weight' => variable_get('custom_search_taxonomy' . $voc->vid . '_weight', $w),
|
||||
);
|
||||
$form['order']['custom_search_order']['taxonomy' . $voc->vid]['sort'] = array(
|
||||
'#type' => 'weight',
|
||||
'#default_value' => variable_get('custom_search_taxonomy' . $voc->vid . '_weight', $w),
|
||||
'#attributes' => array('class' => 'sort-select sort-select-' . variable_get('custom_search_taxonomy' . $voc->vid . '_region', 'block')),
|
||||
);
|
||||
$form['order']['custom_search_order']['taxonomy' . $voc->vid]['region'] = array(
|
||||
'#type' => 'select',
|
||||
'#options' => array(
|
||||
'block' => t('Block'),
|
||||
'popup' => t('Popup')
|
||||
),
|
||||
'#default_value' => variable_get('custom_search_taxonomy' . $voc->vid . '_region', 'block'),
|
||||
'#attributes' => array('class' => 'region-select region-select-' . variable_get('custom_search_taxonomy' . $voc->vid . '_region', 'block')),
|
||||
);
|
||||
$w++;
|
||||
}
|
||||
$form['custom_search_paths_admin']['custom_search_paths']['#description'] = t('If you want to use custom search paths, enter them here in the form <em>path</em>|<em>label</em>, one per line (if only one path is specified, the selector will be hidden). The [key] token will be replaced by what is entered in the search box, and the [terms] token will be replaced by the selected taxonomy term id(s). Ie: mysearch/[key]/[terms]|My custom search label.');
|
||||
$form['custom_search_paths_admin']['custom_search_paths_terms_separator'] = array(
|
||||
'#type' => 'textfield',
|
||||
'#title' => t('Taxonomy terms separator'),
|
||||
'#default_value' => variable_get('custom_search_paths_terms_separator', CUSTOM_SEARCH_PATHS_TERMS_SEPARATOR_DEFAULT),
|
||||
'#size' => 2
|
||||
);
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
}
|
Reference in a new issue