Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M Новый топик    Ответить
 Генерация CSP страниц  [new]
iseekyouu
Member

Откуда:
Сообщений: 27
Добрый день, как можно вставить автоматическую генерацию тега <!DOCTYPE>, перед тегом <html>, при создании новой csp страницы?
3 сен 14, 12:06    [16528106]     Ответить | Цитировать Сообщить модератору
 Re: Генерация CSP страниц  [new]
DAiMor
Member

Откуда: Volzhsky -> Moscow -> CZ, Brno -> Moscow
Сообщений: 2733
что значит автоматическую генерацию ?
а просто вставить этот тег в начало файла не можете ?
3 сен 14, 12:27    [16528344]     Ответить | Цитировать Сообщить модератору
 Re: Генерация CSP страниц  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13299
iseekyouu
как можно вставить автоматическую генерацию тега <!DOCTYPE>, перед тегом <html>, при создании новой csp страницы?

Да хоть так...
#("<!DOCTYPE html>")#
<
html>
<
head>
<
style type='text/css'>
</
style>
<
script type='text/javascript'>
</
script>
</
head>
<
body>
</
body>
</
html>
3 сен 14, 12:51    [16528612]     Ответить | Цитировать Сообщить модератору
 Re: Генерация CSP страниц  [new]
iseekyouu
Member

Откуда:
Сообщений: 27
to krvsa не то.

DAiMor
что значит автоматическую генерацию ?
а просто вставить этот тег в начало файла не можете ?


Могу, но хочу чтобы он автоматически генерился сразу сам, при создании новой csp страницы.
Поясню подробнее, при создании новой csp автоматически генерится код следующего вида:
<html>
<
head>

<!--
 Put your page Title here -->
<
title>  Cache Server Page </title>

</
head>

<
body>

    <!--
 Put your page code here -->
    My page body
</
body>
</
html>
а как сделать чтобы он генерился вида:
<!DOCTYPE html>
<html>
<
head>

<!--
 Put your page Title here -->
<
title>  Cache Server Page </title>

</
head>

<
body>

    <!--
 Put your page code here -->
    My page body
</
body>
</
html>
4 сен 14, 05:29    [16532801]     Ответить | Цитировать Сообщить модератору
 Re: Генерация CSP страниц  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13299
iseekyouu
а как сделать чтобы он генерился вида:
<!DOCTYPE html>
<html>
<
head>

<!--
 Put your page Title here -->
<
title>  Cache Server Page </title>

</
head>

<
body>

    <!--
 Put your page code here -->
    My page body
</
body>
</
html>

Напрячь IS - пусть сделают настройки "как показать пустую csp-страницу"...
4 сен 14, 09:02    [16532989]     Ответить | Цитировать Сообщить модератору
 Re: Генерация CSP страниц  [new]
DAiMor
Member

Откуда: Volzhsky -> Moscow -> CZ, Brno -> Moscow
Сообщений: 2733
krvsa
Напрячь IS - пусть сделают настройки "как показать пустую csp-страницу"...
Никого не надо напрягать. Cache и Студия поддерживают шаблоны, и можно сделать своих шаблонов с любым своим содержимым, и даже мастер по созданию такого шаблона. и можно будет в этом мастере, придумать какие нибудь параметры которые будут влиять на новый файл.
Почитать об этом в документации
Шаблон будет доступен в окне создания нового файла.
4 сен 14, 10:06    [16533229]     Ответить | Цитировать Сообщить модератору
 Re: Генерация CSP страниц  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13299
DAiMor, т.е. в твоем понимании делать шаблон и работать с ним будет более удобно, нежели один раз указать "как делать пустую csp-страницу"?
4 сен 14, 10:34    [16533393]     Ответить | Цитировать Сообщить модератору
 Re: Генерация CSP страниц  [new]
DAiMor
Member

Откуда: Volzhsky -> Moscow -> CZ, Brno -> Moscow
Сообщений: 2733
krvsa
DAiMor, т.е. в твоем понимании делать шаблон и работать с ним будет более удобно, нежели один раз указать "как делать пустую csp-страницу"?
Я не понимаю, что значит "как делать пустую страницу"
и да в моем понимаю это делать намного удобнее, ведь при создании нового файла CSP количество действий программиста не увеличится ни на клик.
4 сен 14, 10:39    [16533432]     Ответить | Цитировать Сообщить модератору
 Re: Генерация CSP страниц  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13299
Больше вопросов не имею...
4 сен 14, 10:51    [16533515]     Ответить | Цитировать Сообщить модератору
 Re: Генерация CSP страниц  [new]
Александр Коблов
Member

Откуда: Краснодар, Москва
Сообщений: 241
iseekyouu,

При создании новой csp-страницы открывается шаблон <cache-dir>/bin/Default.csp. Можете его отредактировать.

cachedoc
When you create a new CSP file in Studio, it opens a new CSP Editor window and copies into it the contents of a CSP template file. You can edit or replace this template file in order to customize how Studio creates new CSP files. This file is a text file called Default.csp and is located in the same directory as the Studio executable file. For a default installation, this is the /cachesys/bin directory.


http://docs.intersystems.com/cache20141/csp/docbook/DocBook.UI.Page.cls?KEY=GSTD_CSP#GSTD_templatefile
4 сен 14, 10:56    [16533543]     Ответить | Цитировать Сообщить модератору
 Re: Генерация CSP страниц  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13299
Александр Коблов, о! Спасибо.
4 сен 14, 11:09    [16533633]     Ответить | Цитировать Сообщить модератору
 Re: Генерация CSP страниц  [new]
iseekyouu
Member

Откуда:
Сообщений: 27
Александр Коблов,

Спасибо за помощь! Судя по документации должно работать, однауо почемуто внесенные иземенения не отображаются при создании новой csp страницы, даже после перезапуска каше )
4 сен 14, 11:19    [16533696]     Ответить | Цитировать Сообщить модератору
 Re: Генерация CSP страниц  [new]
Александр Коблов
Member

Откуда: Краснодар, Москва
Сообщений: 241
iseekyouu,

У вас студия к локальной версии Каше соединяется?
Файл нужно менять в той папке откуда cstudio.exe запускается, не на сервере.
Какая у вас версия Каше?
4 сен 14, 11:23    [16533731]     Ответить | Цитировать Сообщить модератору
 Re: Генерация CSP страниц  [new]
iseekyouu
Member

Откуда:
Сообщений: 27
Александр Коблов,

Да менял на сервере, при изменении на локальном ПК все получилось.
А есть ли возможность задать эти изменения глобально, то есть на стороне сервера?

Можно ли реализовать через наследование класса?
Заголовоки с мета тегами по умолчанию задать через наследование получилось, возможно и DOCTYPE можно, только как...
4 сен 14, 11:39    [16533851]     Ответить | Цитировать Сообщить модератору
 Re: Генерация CSP страниц  [new]
Александр Коблов
Member

Откуда: Краснодар, Москва
Сообщений: 241
iseekyouu

Да менял на сервере, при изменении на локальном ПК все получилось.
А есть ли возможность задать эти изменения глобально, то есть на стороне сервера?

Через Default.csp нет. Вам тут уже Daimor ссылку на "New Document Studio Templates" кидал.
http://docs.intersystems.com/cache20141/csp/docbook/DocBook.UI.Page.cls?KEY=GSTD_Templates#GSTD_newdoc_templates
Сделайте шаблон какой хотите, будет у вас он в меню "Новый" показываться.

iseekyouu
Можно ли реализовать через наследование класса?
Заголовоки с мета тегами по умолчанию задать через наследование получилось, возможно и DOCTYPE можно, только как...


А как вы заголовки с мета-тэгами задали через наследование?
4 сен 14, 11:51    [16533926]     Ответить | Цитировать Сообщить модератору
 Re: Генерация CSP страниц  [new]
DAiMor
Member

Откуда: Volzhsky -> Moscow -> CZ, Brno -> Moscow
Сообщений: 2733
iseekyouu
А есть ли возможность задать эти изменения глобально, то есть на стороне сервера?

Самый простой способ, это создать CSP файл который станет шаблоном
например так
<CSP:StudioSimpleTemplate name="HTML5" mode="new" type="csp"><!doctype html>
<
html>
<
head>

<!--
 Put your page Title here -->
<
title>  Cache Server Page </title>

</
head>

<
body>

    <!--
 Put your page code here -->
    My page body
</
body>
</
html>
4 сен 14, 11:58    [16533980]     Ответить | Цитировать Сообщить модератору
 Re: Генерация CSP страниц  [new]
DAiMor
Member

Откуда: Volzhsky -> Moscow -> CZ, Brno -> Moscow
Сообщений: 2733
есть способ, с мастером создания, в данном варианте в мастере просто пустая страница
выполнена она на зене, но туда можно вывести разные там поля по вашему желанию, и по этим полям определить содержимое нового файла
этот шаблон будет виден в группе CSP файлов, в отличи о того что дал выше
и нельзя назначить имя файла заранее.
Class csp.html5 Extends %ZEN.Template.studioTemplate
{

Parameter TEMPLATENAME = "HTML5";

Parameter TEMPLATEDESCRIPTION;

Parameter TEMPLATETYPE = "csp";

/// If this is a TEMPLATEMODE="new" then this is the name of the tab
/// in Studio this template is dispayed on. If none specified then
/// it displays on 'Custom' tab.
Parameter 
TEMPLATEGROUP As STRING = "csp";

/// What type of template.
Parameter 
TEMPLATEMODE = "new";

/// Domain used for localization.
Parameter 
DOMAIN = "%ZEN";

/// DOCBOOK Topic Id that offers help for this template.
Parameter 
HELPID = "GZEN_style_wizard";

/// If this is true then even if this template is tied to a specific namespace it
/// will be available in any namespace and it will be up to the template to make sure
/// it looks for any specific data in the target namespace.
Parameter 
GLOBALTEMPLATE As BOOLEAN = 0;

/// This Style block contains page-specific CSS style definitions.
XData 
Style
{
<
style type="text/css">
</
style>
}

/// This XML block defines the contents of the body pane of this Studio Template.
XData 
templateBody [ XMLNamespace "http://www.intersystems.com/zen" ]
{
<
pane xmlns="http://www.intersystems.com/zen" id="body">
<
vgroup labelPosition="left" cellStyle="padding: 2px; padding-left: 5px; padding-right: 5px;">
</
vgroup>
</
pane>
}

ClassMethod OnPage1() As %Status
{
  
Quit $$$OK
}

/// This method is called when the template is complete. Any
/// output to the principal device is returned to the Studio.
/// This is implemented by subclasses.
Method 
%OnTemplateAction() As %Status GenerateAfter = %OnTemplateAction ]
{
  
&html<<!doctype html>
<
html>
<
head>

<!--
 Put your page Title here -->
<
title>  Cache Server Page </title>

</
head>

<
body>

    <!--
 Put your page code here -->
    My page body
</
body>
</
html>>
  
Quit $$$OK
}

}
4 сен 14, 12:01    [16534008]     Ответить | Цитировать Сообщить модератору
 Re: Генерация CSP страниц  [new]
DAiMor
Member

Откуда: Volzhsky -> Moscow -> CZ, Brno -> Moscow
Сообщений: 2733
оба эти варианта, будут работать относительно сервера на котором их установить.
4 сен 14, 12:02    [16534018]     Ответить | Цитировать Сообщить модератору
 Re: Генерация CSP страниц  [new]
iseekyouu
Member

Откуда:
Сообщений: 27
Александр Коблов,

Создал класс с таким текстом:
Class csp.Page.Header Extends %CSP.Page
{

ClassMethod OnPreHTTP() As %Boolean
{

 
%response.SetHeader("X-UA-Compatible","IE=edge")
 
%response.HeaderCharSet ="windows-1251"
 
1
}
}

в цсп вставил наследование <CSP:CLASS SUPER="csp.Page.Header">

DAiMor, шаблоны не совсем, то что хотелось, хочется вносить динамичные изменения в формирование csp страниц, то есть сегодня все новосоздаваемые страницы создаются с тегом Doctype, а завтра нет.
4 сен 14, 13:21    [16534627]     Ответить | Цитировать Сообщить модератору
 Re: Генерация CSP страниц  [new]
DAiMor
Member

Откуда: Volzhsky -> Moscow -> CZ, Brno -> Moscow
Сообщений: 2733
iseekyouu
DAiMor, шаблоны не совсем, то что хотелось, хочется вносить динамичные изменения в формирование csp страниц, то есть сегодня все новосоздаваемые страницы создаются с тегом Doctype, а завтра нет.
а чем в таком случае не угодили программно генерируемые шаблоны ?
ну и лучше, использовать классы для этого, вместо CSP-файлов, проще управлять

ну и если разговор про DOCTYPE, в вашем супер классе и сделайте его вывод
4 сен 14, 13:24    [16534654]     Ответить | Цитировать Сообщить модератору
 Re: Генерация CSP страниц  [new]
iseekyouu
Member

Откуда:
Сообщений: 27
DAiMor,
Вывод делал, не получается, он его перетирает гдето.
Надо попробовать с программно генерируемыми шаблонами, если честно ни разу ими не пользовался и не знаю что это, читать надо.
4 сен 14, 13:29    [16534699]     Ответить | Цитировать Сообщить модератору
 Re: Генерация CSP страниц  [new]
DAiMor
Member

Откуда: Volzhsky -> Moscow -> CZ, Brno -> Moscow
Сообщений: 2733
iseekyouu
DAiMor,
Вывод делал, не получается, он его перетирает гдето.
Надо попробовать с программно генерируемыми шаблонами, если честно ни разу ими не пользовался и не знаю что это, читать надо.
посмотри для csp-файла, другой исходник, он покажет сгенерированный класс, и там можно понять что где перетирает и куда можно вставить свой код чтобы не перетирался
4 сен 14, 13:37    [16534788]     Ответить | Цитировать Сообщить модератору
Все форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M Ответить