-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathguber.install
140 lines (104 loc) · 3.78 KB
/
guber.install
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
<?php
/**
* @file
* Install, update and uninstall functions for the standard install profile.
*/
/**
* Implements hook_install().
*
* Perform actions to set up the site for this profile.
*
* @see system_install()
*/
function guber_install() {
_guber_install_locales();
$inc_path = DRUPAL_ROOT . '/profiles/guber/config/';
include_once $inc_path . 'text_formats.inc.php';
_text_formats_config();
include_once $inc_path . 'wysiwyg.inc.php';
_wysiwyg_config();
include_once $inc_path . 'theme.inc.php';
_theme_config();
include_once $inc_path . 'blocks.inc.php';
_blocks_config();
include_once $inc_path . 'node_type_page.inc.php';
_node_type_page_config();
include_once $inc_path . 'users.inc.php';
_users_config();
// create front page node
_guber_create_front_page();
// 403 & 404 pages
_guber_create_error_pages();
}
function _guber_install_locales() {
include_once DRUPAL_ROOT . '/includes/locale.inc';
include_once DRUPAL_ROOT . '/includes/iso.inc';
$predefined = _locale_get_predefined_list();
foreach (array('ru') as $install_locale) {
if (!isset($predefined[$install_locale])) {
// Drupal does not know about this language, so we prefill its values with
// our best guess. The user will be able to edit afterwards.
locale_add_language($install_locale, $install_locale, $install_locale, LANGUAGE_LTR, '', '', TRUE, TRUE);
}
else {
// A known predefined language, details will be filled in properly.
locale_add_language($install_locale, NULL, NULL, NULL, '', '', TRUE, FALSE);
}
}
}
function _guber_create_front_page() {
$front_page = array (
'title' => 'Главная страница',
'status' => '1',
'created' => '1241682763',
'promote' => '0',
'teaser' => '',
'body' => '',
);
$front_page_node = _node_page_save($front_page);
if($front_page_node) {
$nid = $front_page_node->nid;
variable_set('site_frontpage', 'node/'.$nid);
}
}
function _guber_create_error_pages() {
$error_page = array (
'title' => '404 - Страница на сайте не найдена',
'status' => '1',
'created' => '1241682763',
'promote' => '0',
'teaser' => '',
'body' => '<p>Ссылка, по которой Вы перешли, ссылается на страницу, которой нет. Мы рекомендуем Вам перейти на <a href="/">главную страницу сайта</a> и попробвать найти нужный материал.</p><p>Если Вы уверены, что в возникновении данной ошибки виноваты мы (например, Вы перешли по какой-либо ссылке внутри нашего сайта и попали сюда), напишите нам сообщение. И мы в кратчайшие сроки постараемся устранить ошибку.</p><p>Или воспользуйтесь формой поиска.</p>',
);
$node = _node_page_save($error_page);
if($node) {
$path = 'node/'.$node->nid;
variable_set('site_403', $path);
variable_set('site_404', $path);
}
}
function _node_page_save($n) {
$node = new stdClass;
$node->type = 'page';
node_object_prepare($node);
$node->title = $n['title'];
$node->created = $n['created'];
$node->date = date(DATE_ISO8601, $n['created']);
$node->language = 'ru';
$node->body = array(
LANGUAGE_NONE => array(
array(
'value' => $n['body'],
'summary' => $n['teaser'],
'format' => 'full_html',
),
),
);
node_save($node);
if (!empty($node->nid))
return $node;
else
return false;
}
//include_once DRUPAL_ROOT . '/profiles/minimal/minimal.install';
// minimal_install();