forked from backdrop-contrib/coder_review
-
Notifications
You must be signed in to change notification settings - Fork 0
/
coder_review.admin.inc
70 lines (60 loc) · 1.98 KB
/
coder_review.admin.inc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
<?php
/**
* @file
* Administrative forms and functions for the Coder module.
*/
/**
* Page callback: Configures administrative settings via system_settings_form().
*
* @see coder_review_menu()
* @see coder_review_settings_form_submit()
*/
function coder_review_admin_settings($form, &$form_state) {
// Bootstrap enough to run.
require_once realpath(dirname(__FILE__)) . '/coder_review.common.inc';
$settings = _coder_review_get_default_settings();
$form = _coder_review_settings_form($settings, $system, $files);
$form['help'] = array(
'#type' => 'markup',
'#markup' => t('After setting these defaults, use <a href="@url">coder review</a> to perform code reviews.', array('@url' => url('admin/config/development/coder/review'))),
'#weight' => -1,
);
$form['actions']['#type'] = 'actions';
$form['actions']['submit'] = array(
'#type' => 'submit',
'#submit' => array(
'coder_review_settings_form_submit',
'coder_review_admin_settings_submit',
),
'#value' => t('Save configuration'),
);
return $form;
}
/**
* Form submission handler for coder_review_settings_form().
*/
function coder_review_settings_form_submit($form, &$form_state) {
$form_state['storage'] = $form_state['values'];
$config = config('coder_review.settings');
$config->set('coder_modules', _coder_review_settings_array($form_state, 'module'));
$config->set('coder_themes', _coder_review_settings_array($form_state, 'theme'));
$config->save();
backdrop_set_message(t('The configuration options have been saved.'));
}
/**
* Form submission handler for coder_review_admin_settings().
*/
function coder_review_admin_settings_submit($form, &$form_state) {
form_state_values_clean($form_state);
$config = config('coder_review.settings');
foreach ($form_state['values'] as $key => $value) {
$config->set($key, $value);
}
$config->save();
}
/**
* Custom callback for array_filter.
*/
function _coder_review_link_check($var) {
return $var && $var[0] != '#';
}