diff --git a/src/Классы/interface/view/index.html b/src/Классы/interface/view/index.html
index 5d30436..8dfd3f8 100644
--- a/src/Классы/interface/view/index.html
+++ b/src/Классы/interface/view/index.html
@@ -57,7 +57,7 @@
color: #777;
}
- input[type=submit] {
+ input[type=button] {
background-color: black;
color: white;
padding: 10px 10px;
@@ -75,6 +75,27 @@
align-items: center;
}
+
@@ -84,10 +105,10 @@
@@ -96,8 +117,8 @@
-
+HTTPОтвет = Соединение.ВызватьHTTPМетод("GET", HTTPЗапрос);'>
+
diff --git a/src/Классы/interface/Классы/ОсновнойКонтрол.os b/src/Классы/interface/Классы/ОсновнойКонтрол.os
index 5b7f999..fe53f04 100644
--- a/src/Классы/interface/Классы/ОсновнойКонтрол.os
+++ b/src/Классы/interface/Классы/ОсновнойКонтрол.os
@@ -5,67 +5,38 @@
&ТочкаМаршрута("")
&Отображение("./Классы/interface/view/index.html")
-Процедура Главная(Запрос, Ответ) Экспорт
- Перем Ошибки;
-
- ПараметрыЗапроса = ПараметрыИзТекста(Запрос.Тело);
-
- Ответ.Модель = Модель();
-
- Команда = ПараметрыЗапроса.Получить("inputcurl");
- Если Команда <> Неопределено Тогда
- Ответ.Модель.Команда = Команда;
- КонвертерКомандыCURL = Новый КонвертерКомандыCURL();
-
- Попытка
- Результат = КонвертерКомандыCURL.Конвертировать(Команда, Новый ГенераторПрограммногоКода1С(), Ошибки);
- Исключение
- Ответ.Модель.ТекстОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке());
- КонецПопытки;
-
- Ответ.Модель.ПрограммныйКод = Результат;
- КонецЕсли;
+Процедура Главная(Ответ) Экспорт
КонецПроцедуры
-Функция Модель()
- Модель = Новый Структура();
- Модель.Вставить("Команда", "");
- Модель.Вставить("ПрограммныйКод", "");
- Модель.Вставить("ТекстОшибки", "");
- Возврат Модель;
-КонецФункции
+&ТочкаМаршрута("/convert")
+Процедура Конвертировать(ПараметрыЗапросаИменные, Ответ) Экспорт
+ Перем Ошибки;
-Функция ПараметрыИзТекста(ПараметрыТекстом, РазделительПараметров = "&") Экспорт
-
- Результат = Новый Соответствие();
+ Данные = Новый Структура("result, errors", "", Новый Массив());
- Если ЗначениеЗаполнено(ПараметрыТекстом) Тогда
-
- ПараметрыТекстом = СтрЗаменить(ПараметрыТекстом, "+", " ");
+ ТекстКоманды = ПараметрыЗапросаИменные.Получить("cmd");
+ Если ТекстКоманды <> Неопределено Тогда
+ КонвертерКомандыCURL = Новый КонвертерКомандыCURL();
- МассивПараметров = СтрРазделить(РаскодироватьСтроку(ПараметрыТекстом, СпособКодированияСтроки.КодировкаURL), РазделительПараметров, Ложь);
- Для Каждого ТекПараметрСтрокой из МассивПараметров Цикл
- ТекПараметр = РазделитьСтроку(ТекПараметрСтрокой, "=");
- Результат.Вставить(ТекПараметр.Лево, ТекПараметр.Право);
- КонецЦикла;
+ Попытка
+ Данные.result = КонвертерКомандыCURL.Конвертировать(ТекстКоманды, Новый ГенераторПрограммногоКода1С(), Ошибки);
+ Для Каждого Ошибка Из Ошибки Цикл
+ Данные.errors.Добавить(НоваяОшибка(Ошибка.Текст, Ошибка.Критичная));
+ КонецЦикла;
+ Исключение
+ Данные.errors.Добавить(НоваяОшибка(КраткоеПредставлениеОшибки(ИнформацияОбОшибке()), Истина));
+ КонецПопытки;
КонецЕсли;
- Возврат Результат;
-
-КонецФункции
+ Парсер = Новый ПарсерJSON();
-Функция РазделитьСтроку(Строка, Разделитель) Экспорт
- Результат = Новый Структура("Лево, Право","","");
- ПозицияРазделителя = СтрНайти(Строка, Разделитель);
+ Ответ.УстановитьТипКонтента("json");
+ Ответ.ТелоТекст = Парсер.ЗаписатьJSON(Данные);
- Если ПозицияРазделителя = 0 Тогда
- Результат.Лево = Строка;
- Иначе
- Результат.Лево = Лев(Строка, ПозицияРазделителя - 1);
- Результат.Право = Сред(Строка, ПозицияРазделителя + СтрДлина(Разделитель));
- КонецЕсли;
+КонецПроцедуры
- Возврат Результат;
+Функция НоваяОшибка(Текст, Критичная = Ложь)
+ Возврат Новый Структура("text, critical", Текст, Критичная);
КонецФункции
\ No newline at end of file