1
0
mirror of https://github.com/BlizD/Tasks.git synced 2025-01-14 03:20:16 +02:00

#15 обновили версию парсера Markdown, убрали использование временного файла для скрипта JS

This commit is contained in:
Anton Ivanov 2017-01-24 19:55:52 +03:00
parent 35257f04c8
commit 289d8e84fd
14 changed files with 1461 additions and 438 deletions

View File

@ -174,6 +174,39 @@
<Event name="OnChange">ОформлениеТекстаПриИзменении</Event>
</Events>
</RadioButtonField>
<CommandBar name="ГруппаКоманднаяПанельMarkdown" id="449">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа командная панель markdown</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа командная панель markdown</v8:content>
</v8:item>
</ToolTip>
<ExtendedTooltip name="ГруппаКоманднаяПанельMarkdownРасширеннаяПодсказка" id="450"/>
<ChildItems>
<Button name="КомандаMDДобавитьЗаголовки" id="453">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.КомандаMDДобавитьЗаголовки</CommandName>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Нн</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="КомандаMDДобавитьЗаголовкиРасширеннаяПодсказка" id="454"/>
</Button>
<Button name="КомандаMDДобавитьТаблицу" id="451">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.КомандаMDДобавитьТаблицу</CommandName>
<ExtendedTooltip name="КомандаMDДобавитьТаблицуРасширеннаяПодсказка" id="452"/>
</Button>
</ChildItems>
</CommandBar>
</ChildItems>
</UsualGroup>
<Pages name="ГруппаСтраницыОформлениеСодержания" id="438">
@ -1804,5 +1837,43 @@
<Action>КомандаДобавитьВопрос</Action>
<Representation>TextPicture</Representation>
</Command>
<Command name="КомандаMDДобавитьТаблицу" id="5">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Добавить таблицу</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Добавить таблицу (Markdown)</v8:content>
</v8:item>
</ToolTip>
<Picture>
<xr:Ref>StdPicture.SpreadsheetShowGrid</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
</Picture>
<Action>КомандаMDДобавитьТаблицу</Action>
</Command>
<Command name="КомандаMDДобавитьЗаголовки" id="6">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Команда MDДобавить заголовки</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Команда MDДобавить заголовки</v8:content>
</v8:item>
</ToolTip>
<Picture>
<xr:Ref>CommonPicture.узИконкаMDДобавитьЗаголовки</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
</Picture>
<Action>КомандаMDДобавитьЗаголовки</Action>
</Command>
</Commands>
</Form>

View File

@ -114,10 +114,12 @@
Элементы.ГруппаСтраницаФорматированныйТекст.Видимость = Ложь;
Элементы.ГруппаСтраницаПросмотр.Видимость = Ложь;
Элементы.ГруппаСтраницаТекст.Видимость = Ложь;
Элементы.ГруппаКоманднаяПанельMarkdown.Видимость = Ложь;
Если Объект.ОформлениеТекста = ПредопределенноеЗначение("Перечисление.узОформлениеТекста.ФорматированныйТекст") Тогда
Элементы.ГруппаСтраницаФорматированныйТекст.Видимость = Истина;
ИначеЕсли Объект.ОформлениеТекста = ПредопределенноеЗначение("Перечисление.узОформлениеТекста.Markdown") Тогда
Элементы.ГруппаКоманднаяПанельMarkdown.Видимость = Истина;
Элементы.ГруппаСтраницаПросмотр.Видимость = Истина;
Элементы.ГруппаСтраницаТекст.Видимость = Истина;
Иначе
@ -614,10 +616,14 @@
&НаКлиенте
Процедура ПолучитьMarkdown()
ТекстHTMLМакет = узОбщийМодульКлиент.ПолучитьТекстHTMLMarkdown(Объект.ТекстСодержания);
ПолеHTML = ТекстHTMLМакет;
ПолеHTML = ПолучитьHTMLMarkdownНаСервере(Объект.ТекстСодержания);
КонецПроцедуры
&НаСервереБезКонтекста
Функция ПолучитьHTMLMarkdownНаСервере(ЗНАЧ ТекстСодержания)
HTMLMarkdown = узОбщийМодульСервер.ПолучитьHTMLMarkdown(ТекстСодержания);
Возврат HTMLMarkdown;
КонецФункции
&НаКлиенте
Процедура ОформлениеТекстаПриИзменении(Элемент)
@ -657,4 +663,38 @@
ВыполнитьДействиеДляСтраницы();
КонецПроцедуры
&НаКлиенте
Процедура КомандаMDДобавитьТаблицу(Команда)
ТекстMD = "| Tables | Are | Cool |"
+ Символы.ПС + "| ------------- |:-------------:| -----:|"
+ Символы.ПС + "| col 3 is | right-aligned | $1600 |"
+ Символы.ПС + "| col 2 is | centered | $12 |"
+ Символы.ПС + "| zebra stripes | are neat | $1 |";
MDДобавитьПереводСтроки();
Объект.ТекстСодержания = Объект.ТекстСодержания + ТекстMD;
КонецПроцедуры
&НаКлиенте
Процедура КомандаMDДобавитьЗаголовки(Команда)
ТекстMD = "
|# This is an <h1> tag
|## This is an <h2> tag
|###### This is an <h6> tag";
MDДобавитьПереводСтроки();
Объект.ТекстСодержания = Объект.ТекстСодержания + ТекстMD;
КонецПроцедуры
&НаКлиенте
Процедура MDДобавитьПереводСтроки()
Если ЗначениеЗаполнено(Объект.ТекстСодержания) Тогда
Объект.ТекстСодержания = Объект.ТекстСодержания
+ Символы.ПС + Символы.ПС;
Конецесли;
КонецПроцедуры
#КонецОбласти

View File

@ -1,15 +1,7 @@
Функция ПолучитьТекстHTMLMarkdown(ТекстСодержания) Экспорт
Функция Удалить_ПолучитьТекстHTMLMarkdown(ТекстСодержания) Экспорт
РезультатФункции = узОбщийМодульСервер.ПолучитьМакетыMardown(ТекстСодержания);
ТекстHTMLМакет = РезультатФункции.ТекстHTMLМакет;
ТекстСкриптаJS = РезультатФункции.ТекстСкриптаJS;
ВременныйФайлПуть = ПолучитьИмяВременногоФайла("js");
ТекстJS = Новый ТекстовыйДокумент;
ТекстJS.УстановитьТекст(ТекстСкриптаJS);
ТекстJS.Записать(ВременныйФайлПуть);
ТекстHTMLМакет = СтрЗаменить(ТекстHTMLМакет,"+++",ВременныйФайлПуть);
Возврат ТекстHTMLМакет;
//РезультатФункции = узОбщийМодульСервер.ПолучитьМакетыMardown(ТекстСодержания);
//
//ТекстHTMLМакет = РезультатФункции.ТекстHTMLМакет;
//Возврат ТекстHTMLМакет;
КонецФункции

View File

@ -169,21 +169,24 @@
НаборЗаписей.Записать();
КонецПроцедуры
Функция ПолучитьМакетыMardown(ТекстСодержания) Экспорт
РезультатФункции = Новый Структура();
Функция ПолучитьHTMLMarkdown(ЗНАЧ ТекстСодержания) Экспорт
Перем HTMLMarkdown;
ТекстСодержания = СтрЗаменить(ТекстСодержания,Символы.ПС,"\n");
ТекстСодержания = СтрЗаменить(ТекстСодержания,"'",""""); //&quot
узМакетHTML = ПолучитьОбщийМакет("узМакетHTML");
ТекстHTMLМакет = узМакетHTML.ПолучитьТекст();
ТекстHTMLМакет = СтрЗаменить(ТекстHTMLМакет,"...",ТекстСодержания);
узМакетJS = ПолучитьОбщийМакет("узМакетJS");
узМакетCSS = ПолучитьОбщийМакет("узМакетCSS");
ТекстСкриптаJS = ПолучитьТекстJS();
ТекстСкриптаJS = узМакетJS.ПолучитьТекст();
ТекстCSSМакет = узМакетCSS.ПолучитьТекст();
РезультатФункции.Вставить("ТекстHTMLМакет",ТекстHTMLМакет);
РезультатФункции.Вставить("ТекстСкриптаJS",ТекстСкриптаJS);
Возврат РезультатФункции;
HTMLMarkdown = узМакетHTML.ПолучитьТекст();
HTMLMarkdown = СтрЗаменить(HTMLMarkdown,"...ТекстJS...",ТекстСкриптаJS);
HTMLMarkdown = СтрЗаменить(HTMLMarkdown,"...ТекстCSS...",ТекстCSSМакет);
HTMLMarkdown = СтрЗаменить(HTMLMarkdown,"...ТекстHTML...",ТекстСодержания);
Возврат HTMLMarkdown;
КонецФункции
Функция ПолучитьТекстJS()
узМакетJS = ПолучитьОбщийМакет("узМакетJS");
Возврат узМакетJS.ПолучитьТекст();
КонецФункции

View File

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.2">
<CommonPicture uuid="3181d195-c7d7-4e39-939c-9ec66be4d1e4">
<Properties>
<Name>узИконкаMDДобавитьЗаголовки</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Уз иконка MDДобавить заголовки</v8:content>
</v8:item>
</Synonym>
<Comment/>
</Properties>
</CommonPicture>
</MetaDataObject>

View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ExtPicture xmlns="http://v8.1c.ru/8.3/xcf/extrnprops" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.2">
<Picture>
<xr:Abs>Picture.png</xr:Abs>
<xr:LoadTransparent>false</xr:LoadTransparent>
</Picture>
</ExtPicture>

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.2">
<CommonTemplate uuid="6eed6c70-cc3d-43ee-9cfb-9d779ef6b9ea">
<Properties>
<Name>узМакетCSS</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Уз макет CSS</v8:content>
</v8:item>
</Synonym>
<Comment/>
<TemplateType>TextDocument</TemplateType>
</Properties>
</CommonTemplate>
</MetaDataObject>

View File

@ -0,0 +1,27 @@
TABLE {
BORDER-TOP: black 1px solid; BORDER-RIGHT: black 1px solid; BORDER-COLLAPSE: collapse; BORDER-BOTTOM: black 1px solid; BORDER-LEFT: black 1px solid; border-color: #C2C2C2;
}
TH {
BORDER-TOP: black 1px solid; BORDER-RIGHT: black 1px solid; BORDER-BOTTOM: black 1px solid; PADDING-BOTTOM: 5px; PADDING-TOP: 5px; PADDING-LEFT: 5px; BORDER-LEFT: black 1px solid; PADDING-RIGHT: 5px; border-color: #C2C2C2;
}
TD {
BORDER-TOP: black 1px solid; BORDER-RIGHT: black 1px solid; BORDER-BOTTOM: black 1px solid; PADDING-BOTTOM: 5px; PADDING-TOP: 5px; PADDING-LEFT: 5px; BORDER-LEFT: black 1px solid; PADDING-RIGHT: 5px; border-color: #C2C2C2;
}
blockquote {
background: #f9f9f9;
border-left: 5px solid #ccc;
margin: 1.5em 10px;
padding: 0.5em 10px;
quotes: "\201C""\201D""\2018""\2019";
}
blockquote:before {
color: #ccc;
content: open-quote;
font-size: 4em;
line-height: 0.1em;
margin-right: 0.25em;
vertical-align: -0.4em;
}
blockquote p {
display: inline;
}

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.2">
<CommonTemplate uuid="fa63f7a5-5bd4-4ef3-8758-b81df8272ebc">
<CommonTemplate uuid="32aeb982-8535-448b-a735-1892051e5bd5">
<Properties>
<Name>узМакетHTML</Name>
<Synonym>

View File

@ -1,5 +1,10 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"></meta><link rel="stylesheet" type="text/css" href="__STYLE__"></link><meta name="GENERATOR" content="MSHTML 11.00.9600.18315"></meta><script type="text/javascript">
window.onload=function(){
document.body.innerHTML = document.body.innerHTML.replace(/<SCRIPT src.*SCRIPT>/g, '');
}
</script></head><body><xmp style="DISPLAY: none" theme="united">...</xmp><script src="+++"></script></body></html>
...ТекстJS...
</script><style>
...ТекстCSS...
</style></head><body>
<div id="content"></div>
<script>
document.getElementById('content').innerHTML =
marked('...ТекстHTML...');
</script></body></html>

File diff suppressed because it is too large Load Diff

View File

@ -415,6 +415,7 @@
<CommonPicture>узСпринт</CommonPicture>
<CommonPicture>узСледитьЗаЗадачей</CommonPicture>
<CommonPicture>узНеСледитьЗаЗадачей</CommonPicture>
<CommonPicture>узИконкаMDДобавитьЗаголовки</CommonPicture>
<SessionParameter>АвторизованныйПользователь</SessionParameter>
<SessionParameter>АдресСвойствРасширений</SessionParameter>
<SessionParameter>БуферОбмена</SessionParameter>
@ -512,6 +513,7 @@
<CommonTemplate>ОписаниеИзмененийСистемы</CommonTemplate>
<CommonTemplate>узМакетHTML</CommonTemplate>
<CommonTemplate>узМакетJS</CommonTemplate>
<CommonTemplate>узМакетCSS</CommonTemplate>
<FilterCriterion>СвязанныеДокументы</FilterCriterion>
<FilterCriterion>ФайлыВТоме</FilterCriterion>
<CommonModule>АдминистрированиеКластераCOMКлиентСервер</CommonModule>

View File

@ -57,6 +57,7 @@
<xr:Item xsi:type="xr:MDObjectRef">Catalog.узВопросыОтветы</xr:Item>
<xr:Item xsi:type="xr:MDObjectRef">FunctionalOption.узИспользоватьВопросыИОтветы</xr:Item>
<xr:Item xsi:type="xr:MDObjectRef">Constant.узИспользоватьВопросыИОтветы</xr:Item>
<xr:Item xsi:type="xr:MDObjectRef">CommonPicture.узИконкаMDДобавитьЗаголовки</xr:Item>
</Content>
</Properties>
<ChildObjects/>