13 return 'selectel_s3_storage';
18 return 'Selectel (S3)';
24 '' =>
's3.storage.selcloud.ru',
32 $arSettings = $_POST[
'SETTINGS'][$this->
GetID()];
36 $arSettings = unserialize($arBucket[
'SETTINGS'], [
'allowed_classes' =>
false]);
39 if (!is_array($arSettings))
41 $arSettings = [
'ACCESS_KEY' =>
'',
'SECRET_KEY' =>
''];
45 $display = $cur_SERVICE_ID == $this->
GetID() || !$bServiceSet ?
'' :
'none';
48 <tr id="SETTINGS_0_' . $htmlID .
'" style="display:' . $display .
'" class="settings-tr adm-detail-required-field">
49 <td>' .
GetMessage(
'CLO_STORAGE_SELECTEL_S3_EDIT_ACCESS_KEY') .
':</td>
50 <td><input type="hidden" name="SETTINGS[' . $htmlID .
'][ACCESS_KEY]" id="' . $htmlID .
'ACCESS_KEY" value="' .
htmlspecialcharsbx($arSettings[
'ACCESS_KEY']) .
'"><input type="text" size="55" name="' . $htmlID .
'INP_ACCESS_KEY" id="' . $htmlID .
'INP_ACCESS_KEY" value="' .
htmlspecialcharsbx($arSettings[
'ACCESS_KEY']) .
'" ' . ($arBucket[
'READ_ONLY'] ===
'Y' ?
'"disabled"' :
'') .
' onchange="BX(\'' . $htmlID .
'ACCESS_KEY\').value = this.value"></td>
52 <tr id="SETTINGS_1_' . $htmlID .
'" style="display:' . $display .
'" class="settings-tr adm-detail-required-field">
53 <td>' .
GetMessage(
'CLO_STORAGE_SELECTEL_S3_EDIT_SECRET_KEY') .
':</td>
54 <td><input type="hidden" name="SETTINGS[' . $htmlID .
'][SECRET_KEY]" id="' . $htmlID .
'SECRET_KEY" value="' .
htmlspecialcharsbx($arSettings[
'SECRET_KEY']) .
'"><input type="text" size="55" name="' . $htmlID .
'INP_SECRET_KEY" id="' . $htmlID .
'INP_SECRET_KEY" value="' .
htmlspecialcharsbx($arSettings[
'SECRET_KEY']) .
'" autocomplete="off" ' . ($arBucket[
'READ_ONLY'] ===
'Y' ?
'"disabled"' :
'') .
' onchange="BX(\'' . $htmlID .
'SECRET_KEY\').value = this.value">' . (
55 array_key_exists(
'SESSION_TOKEN', $arSettings) ?
56 '<input type="hidden" name="SETTINGS[' . $htmlID .
'][SESSION_TOKEN]" id="' . $htmlID .
'SESSION_TOKEN" value="' .
htmlspecialcharsbx($arSettings[
'SESSION_TOKEN']) .
'">' :
60 <tr id="SETTINGS_2_' . $htmlID .
'" style="display:' . $display .
'" class="settings-tr">
75 'ACCESS_KEY' => is_array($arSettings) ? trim($arSettings[
'ACCESS_KEY']) :
'',
76 'SECRET_KEY' => is_array($arSettings) ? trim($arSettings[
'SECRET_KEY']) :
'',
79 if (is_array($arSettings) && array_key_exists(
'SESSION_TOKEN', $arSettings))
81 $result[
'SESSION_TOKEN'] = trim($arSettings[
'SESSION_TOKEN']);
84 if ($arBucket[
'READ_ONLY'] !==
'Y' &&
$result[
'ACCESS_KEY'] ===
'')
87 'id' => $this->
GetID() .
'INP_ACCESS_KEY',
88 'text' =>
GetMessage(
'CLO_STORAGE_SELECTEL_S3_EMPTY_ACCESS_KEY'),
92 if ($arBucket[
'READ_ONLY'] !==
'Y' &&
$result[
'SECRET_KEY'] ===
'')
95 'id' => $this->
GetID() .
'INP_SECRET_KEY',
96 'text' =>
GetMessage(
'CLO_STORAGE_SELECTEL_S3_EMPTY_SECRET_KEY'),
117 $this->new_end_point !==
''
118 && preg_match(
'#^(http|https)://' . preg_quote($bucket,
'#') .
'(.+?)/#', $this->new_end_point, $match) > 0
121 return $bucket . $match[2];
127 return $bucket .
'.s3.storage.selcloud.ru';
131 return 's3.storage.selcloud.ru';
GetRequestHost($bucket, $arSettings)
CheckSettings($arBucket, &$arSettings)
GetSettingsHTML($arBucket, $bServiceSet, $cur_SERVICE_ID, $bVarsFromForm)
htmlspecialcharsbx($string, $flags=ENT_COMPAT, $doubleEncode=true)
IncludeModuleLangFile($filepath, $lang=false, $bReturnArray=false)
GetMessage($name, $aReplace=null)