1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
updater_11.5.0.php
См. документацию.
1<?
2if($updater->CanUpdateDatabase())
3{
4 if ($updater->TableExists('b_learn_test'))
5 {
6 if (mb_strtoupper($updater->dbType) === 'MSSQL')
7 {
8 $DB->Query('ALTER TABLE b_learn_test DROP CONSTRAINT FK_B_LEARN_TEST1', true);
9 $DB->Query('ALTER TABLE b_learn_test DROP CONSTRAINT FK_B_LEARN_TEST2', true);
10 }
11 }
12
13 if ($updater->TableExists('b_learn_lesson'))
14 {
15 if (mb_strtoupper($updater->dbType) === 'ORACLE')
16 {
17 $DB->Query('ALTER TABLE b_learn_lesson DROP COLUMN KEYWORDS CASCADE CONSTRAINTS', true);
18 $DB->Query('ALTER TABLE b_learn_lesson ADD KEYWORDS CLOB DEFAULT \'\'', true);
19 }
20 }
21
22 if ($updater->TableExists('b_learn_chapter'))
23 {
24 if (mb_strtoupper($updater->dbType) === 'ORACLE')
25 {
26 $DB->Query('ALTER TABLE b_learn_chapter DROP CONSTRAINT fk_b_learn_chapter1', true);
27 $DB->Query('ALTER TABLE b_learn_chapter DROP CONSTRAINT fk_b_learn_chapter2', true);
28 }
29 }
30}
31
32if(IsModuleInstalled('learning'))
33{
34 $updater->CopyFiles("install/admin", "admin");
35 $updater->CopyFiles("install/components", "components");
36 //Following copy was parsed out from module installer
37 $updater->CopyFiles("install/images", "images/learning");
38 //Following copy was parsed out from module installer
39 $updater->CopyFiles("install/public/js", "js");
40 //Following copy was parsed out from module installer
41 $updater->CopyFiles("install/public/template", "templates/learning");
42 //Following copy was parsed out from module installer
43 $updater->CopyFiles("install/themes", "themes");
44}
45//There is .sql file in update. Do not forget alter DB properly.
46if($updater->CanUpdateKernel())
47{
48 $arToDelete = array(
49 "admin/learn_chapter_admin.php",
50 "admin/learn_chapter_edit.php",
51 "admin/learn_course_admin.php",
52 "admin/learn_course_index.php",
53 "admin/learn_lesson_admin.php",
54 "admin/learn_lesson_edit.php",
55 "modules/learning/admin/learn_chapter_admin.php",
56 "modules/learning/admin/learn_chapter_edit.php",
57 "modules/learning/admin/learn_course_admin.php",
58 "modules/learning/admin/learn_course_index.php",
59 "modules/learning/admin/learn_lesson_admin.php",
60 "modules/learning/admin/learn_lesson_edit.php",
61 "modules/learning/classes/general/chapter.php",
62 "modules/learning/classes/general/lesson.php",
63 "modules/learning/classes/mssql/chapter.php",
64 "modules/learning/classes/mssql/lesson.php",
65 "modules/learning/classes/mysql/chapter.php",
66 "modules/learning/classes/mysql/lesson.php",
67 "modules/learning/classes/oracle/chapter.php",
68 "modules/learning/classes/oracle/lesson.php",
69 "modules/learning/install/admin/learn_chapter_admin.php",
70 "modules/learning/install/admin/learn_chapter_edit.php",
71 "modules/learning/install/admin/learn_course_admin.php",
72 "modules/learning/install/admin/learn_course_index.php",
73 "modules/learning/install/admin/learn_lesson_admin.php",
74 "modules/learning/install/admin/learn_lesson_edit.php",
75 "modules/learning/lang/de/admin/learn_lesson_edit.php",
76 "modules/learning/lang/en/admin/learn_lesson_edit.php",
77 "modules/learning/lang/ru/admin/learn_lesson_edit.php",
78 "modules/learning/install/js/rights_edit.js",
79 "modules/learning/install/js/learning/rights_edit.js",
80 "modules/learning/classes/mssql/answer.php",
81 "modules/learning/classes/mssql/clearngraphnode.php",
82 "modules/learning/classes/mssql/clearngraphrelation.php",
83 "modules/learning/classes/mssql/clearnlesson.php",
84 "modules/learning/classes/mssql/course.php",
85 "modules/learning/classes/mssql/question.php",
86 "modules/learning/classes/mssql/student.php",
87 "modules/learning/classes/mssql/testmark.php",
88 "modules/learning/classes/mssql/testresult.php",
89 "modules/learning/classes/mysql/answer.php",
90 "modules/learning/classes/mysql/clearngraphnode.php",
91 "modules/learning/classes/mysql/clearngraphrelation.php",
92 "modules/learning/classes/mysql/clearnlesson.php",
93 "modules/learning/classes/mysql/course.php",
94 "modules/learning/classes/mysql/question.php",
95 "modules/learning/classes/mysql/student.php",
96 "modules/learning/classes/mysql/testmark.php",
97 "modules/learning/classes/mysql/testresult.php",
98 "modules/learning/classes/oracle/answer.php",
99 "modules/learning/classes/oracle/clearngraphnode.php",
100 "modules/learning/classes/oracle/clearngraphrelation.php",
101 "modules/learning/classes/oracle/clearnlesson.php",
102 "modules/learning/classes/oracle/course.php",
103 "modules/learning/classes/oracle/question.php",
104 "modules/learning/classes/oracle/student.php",
105 "modules/learning/classes/oracle/testmark.php",
106 "modules/learning/classes/oracle/testresult.php",
107 "modules/learning/lang/de/admin/learn_lesson_admin.php",
108 "modules/learning/lang/en/admin/learn_lesson_admin.php",
109 "modules/learning/lang/ru/admin/learn_lesson_admin.php",
110 );
111 foreach($arToDelete as $file)
112 CUpdateSystem::DeleteDirFilesEx($_SERVER["DOCUMENT_ROOT"].$updater->kernelPath."/".$file);
113}
114
115if($updater->CanUpdateDatabase())
116{
117 // Is module data exists?
118 if ( $DB->TableExists('b_learn_lesson') )
119 {
120 // Ensure, that data in database converted to 11.5.0 version of module
121 if (COption::GetOptionString(
122 'learning',
123 '~LearnInstall201203ConvertDB::_IsAlreadyConverted',
124 '-9',
125 ''
126 )
127 !== '1'
128 )
129 {
130 // Data for module not converted yet, generate message
131 if (method_exists('CAdminNotify', 'Add'))
132 {
133 $langFile = __DIR__ . '/lang/' . LANGUAGE_ID . '/updater.php';
134
135 // Load english version, if localization not available
136 if ( ! (file_exists($langFile) && is_readable($langFile)) )
137 $langFile = __DIR__ . '/lang/en/updater.php';
138
139 if (file_exists($langFile) && is_readable($langFile))
140 {
141 $learningNotifyMessage = '';
142 include($langFile);
143
145 array(
146 'MESSAGE' => str_replace('#LANG#', LANGUAGE_ID, $learningNotifyMessage),
147 'TAG' => 'learning_convert_11_5_0',
148 'MODULE_ID' => 'learning',
149 'ENABLE_CLOSE' => 'N'
150 )
151 );
152 }
153 }
154 }
155 }
156}
static Add($arFields)
Определения admin_notify.php:22
static DeleteDirFilesEx($path)
Определения update_class.php:3537
$langFile
Определения .description.php:2
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804
$_SERVER["DOCUMENT_ROOT"]
Определения cron_frame.php:9
global $DB
Определения cron_frame.php:29
IsModuleInstalled($module_id)
Определения tools.php:5301