/[drupal]/contributions/modules/virtual_site/virtual_site_variables.module
ViewVC logotype

Contents of /contributions/modules/virtual_site/virtual_site_variables.module

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1 - (show annotations) (download) (as text)
Mon Feb 18 21:09:59 2008 UTC (21 months, 1 week ago) by fokke
Branch: MAIN
CVS Tags: DRUPAL-6--1-0, DRUPAL-6--1-1, DRUPAL-6--1-2, DRUPAL-6--1-3, DRUPAL-6--1-0-beta1, HEAD
File MIME type: text/x-php
Initial commit
1 <?php
2 // $Id$
3
4 /**
5 * Implementation of hook_feature_info().
6 */
7 function virtual_site_variables_feature_info() {
8 return array(
9 'virtual_site_variables_feature' => array(
10 'name' => t('Variables'),
11 'description' => t('Override any Drupal variable for this virtual site.'),
12 ),
13 );
14 }
15
16 function virtual_site_variables_feature_form($context) {
17 $form = array();
18
19 if ($context['variables'] && file_exists($context['variables'])) {
20 $context['variables'] = file_get_contents($context['variables']);
21 }
22
23 $form['variables'] = array(
24 '#type' => 'textarea',
25 '#title' => t('Variable(s) to override'),
26 '#description' => t('Enter variables using a syntax similar to !INI files.', array('!INI' => l(t('INI'), 'http://en.wikipedia.org/wiki/INI_file', array('attributes' => array('target' => '_blank'))))),
27 '#default_value' => $context['variables'],
28 );
29
30 return $form;
31 }
32
33 function virtual_site_variables_feature_submit($form, $form_state) {
34
35 if ($form_state['values']['variables']) {
36
37 if ($form['#item']) {
38 $directory = file_directory_path().'/sites';
39 file_check_directory($directory, FILE_CREATE_DIRECTORY);
40 $file = file_save_data($form_state['values']['variables'], $directory.'/'.$form['#item']->sid.'.variables.info', FILE_EXISTS_REPLACE);
41
42 if ($file) {
43 return array('variables' => $file);
44
45 } else {
46 form_set_error('variables', t('Could not create file containing variables.'));
47 }
48
49 } else {
50 form_set_error('variables', t('You need to create the site first before overriding variables.'));
51 }
52 }
53 }
54
55 function virtual_site_variables_feature($context) {
56 global $conf;
57
58 if ($context['variables'] && file_exists($context['variables'])) {
59 $context['variables'] = drupal_parse_info_file($context['variables']);
60
61 foreach ($context['variables'] as $name => $value) {
62 $conf[$name] = $value;
63 }
64 }
65 }
66
67 ?>

  ViewVC Help
Powered by ViewVC 1.1.2