Форум русской поддержки Joomla! CMS |

23.04.2010, 20:23:41

Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь. Вам не пришло письмо с кодом активации? Войти

|  | Начало |  | Поиск | Joomla 1.5 FAQ | Joomla 1.0 FAQ | Правила форума | Новости Joomla | Войти | Регистрация | Помощь |

Все объявления
Яндекс Директ
Дать объявление

Надежный хостинг Новое оборудование, все необходимые опции включены. Тарифы от 50 руб! www.logol.ru |  | Увеличение продаж через Интернет Размещение рекламы, продвижение сайта. Скидки. Мини-сайт в подарок навсегда Адрес и телефон · www.expertprodazh.ru · Тольятти |  | Быстрый платный хостинг Мгновенный старт, помощь при смене хостинга, многолетний опыт и репутация. www.reg.ru |  | Договорной документооборот Эффективная система договорного документооборота на базе MS SharePoint. www.korusconsulting.ru

Страниц: [1] 2 3 4 5 Вниз |

| Добавить закладку | Печать |

| Автор | Тема: [howto] Создание шаблона для Joomla! 1.5 (Прочитано 134340 раз)
0 Пользователей и 3 Гостей смотрят эту тему.

Mitrich Администратор Репутация: +455/-12 Offline Пол:
Сообщений: 3226
Все можно. Но сначала учиться, учиться и учиться.

| [howto] Создание шаблона для Joomla! 1.5 « : 04.01.2007, 15:54:32 » |

Этот мануал для тех кто уже делал шаблоны для Joomla! 1.0.x
Хотя и новичкам должно быть интересно.
Структура шаблона практически не изменилась.
Шаблоны лежат в папке templates
В папке вашего шаблона обязательно должны находится файлы
index.php и templateDetails.xml (именно так с D в верхнем регистре).
Папки для CSS и описания своих типов вывода модулей (см. ниже) называются css и html соответственно
Структура выглядит так:
templates
+ my_template
++ css
++ html
++ index.php
++ templateDetails.xml
Файл templateDetails.xml содержит описательную часть шаблона (имя автора,дату создания и т.п.)
и список файлов содержащихся в шаблоне (необходимо для установки шаблона через инсталлятор). Открыв файл templateDetails.xml из существующего шаблона почитайте. Там все предельно ясно
Файл index.php – это собственно и есть шаблон
Листинг пустого index.php выглядит так
Код:

    <?php echo '<?xml version="1.0" encoding="utf-8"?' .'>'; ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="{LANG_TAG}" lang="{LANG_TAG}" dir="{LANG_DIR}" >
    <head>
    <jdoc:include type="head" />
    <link rel="stylesheet" href="templates/{TEMPLATE}/css/template.css" type="text/css" />
    </head>
    <body>

    </body>
    </html>

Внутри тегов <body> </body> находится html содержимое шаблона (возможны включения PHP кода)
Pathway (хлебные крошки)
В Joomla! 1.0.x
Код:

    <?php echo mosPathWay();?>

В Joomla 1.5
Код:

    <jdoc:include type="modules" name="breadcrumb" />

Модули
В Joomla! 1.0.x модули выводились так
Код:

    <?php mosLoadModules ( 'left',-1); ?>

Где left : позиция модуля , -1 : тип вывода модуля.
В Joomla! 1.5 вывод модулей осуществляется так
Код:

    <jdoc:include type="modules" name="right" style="-1" />

type="modules" говорит о том, что выводится модуль
name="right" указывает на позицию модуля
style="-1" указывает тип вывода модуля
для style="…" появилась возможность указания типа вывода не только цифрами, но и ключевыми словами
style="table" – стандартный вывод модуля в ячейке таблицы
Код:

    <table cellpadding="0" cellspacing="0" class="moduletable">
      <tr>
        <th valign="top">Module Title</th>
      </tr>
      <tr>
         <td>Module Content</td>
      </tr>
    </table>

style="horz" – горизонтальный вывод
Не увидел разницы со style="table" , хотя в официальном мануале сказано, что формируется горизонтальный вывод модуля
style="xhtml" – вывод модуля в одном DIV с заголовком H3
Код:

    <div class="moduletable">
     <h3>Module Title</h3>
       Module Content
    </div>

style="rounded" – вывод модуля в четырех вложенных DIV ( используется для создания закругленных углов в модулях, подробно о создании закругленных углов можно почитать >>> тут <<<).
Код:

    <div class="module">
      <div>
        <div>
          <div>
             <h3>Module Title</h3>
    	Module Content
           </div>
         </div>
       </div>
    </div>

style="raw"
будет выведено содержимое модуля без заголовка ,таблиц и DIVов
В Joomla 1.5 добавлена возможность создавать свои типы вывода модулей
Описание типа вывода модуля находится в файле templates/template_folder/html/modules.php
Имя функции обязательно должно начинаться с modChrome_
Создадим тип вывода style="example"
В котором модули будут выводиться в таблице шириной 180px,
Заголовок модуля имеет красный фон, текст заголовка выводится в тегах <H3> </H3>
Тело модуля имеет серый фон. Весь текст в верхнем регистре.
Листинг простейшего файла modules.php будет таким
Код:

    <?php

    defined('_JEXEC') or die('Restricted access');

    function modChrome_example($module, & $params)
    { ?>
    <table width="180px" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td style="background-color:red;"><h3><?php echo $module->title ?></h3></td>
      </tr>
      <tr>
        <td style="background-color:gray; text-transform:uppercase;"><?php echo $module->content ?></td>
      </tr>
    </table>
    <?php
    }
    ?>

Просторы для фантазии безграничны.
Контент
Вывод контента осуществляется так
В Joomla! 1.0.x
Код:

    <?php mosMainBody(); ?>

В Joomla! 1.5
Код:

    <jdoc:include type="component" />

Листинг простейшего index.php трехколоночного шаблона
Код:

    <?php echo '<?xml version="1.0" encoding="utf-8"?' .'>'; ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="{LANG_TAG}" lang="{LANG_TAG}" dir="{LANG_DIR}" >
    <head>
    <jdoc:include type="head" />
    <link rel="stylesheet" href="templates/{TEMPLATE}/css/template.css" type="text/css" />
    </head>
    <body>
    <table width="100%" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td  class="left"><jdoc:include type="modules" name="left" style="raw"/></td>
        <td class="center"><jdoc:include type="component" /></td>
        <td class="right"><jdoc:include type="modules" name="right" style="raw"/></td>
      </tr>
    </table>
    </body>
    </html>

Трюки с отображением модулей
Спасибо userxp за помощь.Без него я бы не понял как это работает
Задача:
Для зарегистрированных пользователей выводим модули в right для всех остальных модули в user1
Решение:
После тега <body> пишем
Код:

    <?php $user =& JFactory::getUser(); ?>

в теле шаблона
Код:

    <?php if($user->_id) {?>
    <jdoc:include type="modules" name="right" style="raw"/>
    <?php } else {?>
    <jdoc:include type="modules" name="user1" style="raw"/>
    <?php }?>

Задача:
Для пользователей группы author выводим модули в right для всех остальных модули в user1
Решение:
После тега <body> пишем
Код:

    <?php $user =& JFactory::getUser(); ?>

в теле шаблона
Код:

    <?php if($user->get(‘usertype’) == ‘Author’) {?>
    <jdoc:include type="modules" name="right" style="raw"/>
    <?php } else {?>
    <jdoc:include type="modules" name="user1" style="raw"/>
    <?php }?>

Задача:
Вместе с компонентом weblinks выводим модули в user2
Решение:
После тега <body> пишем
Код:

    <?php  $option = JRequest::getVar( 'option' );?>

в теле шаблона
Код:

    <?php  if($option == 'com_weblinks') {?>
    <jdoc:include type="modules" name="user2" style="raw"/>
    <?php } ?>

Некоторые переменные используемые в шаблонах
$mainframe->getCfg('sitename') - имя сайта
$mainframe->getCfg('mailfrom') - e-mail админа
$mainframe->getCfg('live_site') - URL сайта
$this->template - имя папки шаблона

« Последнее редактирование: 18.06.2008, 18:50:28 от Mitrich » | Записан

Blinp Гость |

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #1 : 24.02.2008, 23:42:51 » |

[howto] Создание новой позиции модулей в Joomla 1.5

| Записан

beliyadm Joomlapedia team Репутация: +1200/-48 Offline Пол:
Сообщений: 8706
Севастополь==Россия

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #2 : 24.03.2008, 22:20:53 » |

Цитата: de vovan от 24.03.2008, 22:12:17
Спасибо, очень полезная статья, а как например теперь вставить в шаблон навигатор чтоли, вот раньше было
Код:

    <?php echo mosPathWay();?>

А сейчас? А форму поиска?
насколько я понимаю то пазвей вставляется так:
Код:

    <jdoc:include type="modules" name="breadcrumb" />

А форма поиска - это модуль

| Записан

Замороженные сиськи растревожили меня, замороженные сиськи очень странная фигня
-=Joomla FAQ=- || Работаем..с || Private Joomla Blog

userxp Администратор Репутация: +341/-6 Offline Пол:
Сообщений: 2999
Joomla! Extensions Developer

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #3 : 26.07.2008, 17:57:16 » |

видимо, прийдется добавить комментарии, а то я смотрю, вопросы пошли
насчет позиции модулей
итак, цифры "не канают" а потому выводим через определенные заранее функции
в базовой версии Joomla 1.5(.4) доступны следующие типы показов модулей:
front-end
none
table
horz
xhtml
rounded
outline
back-end
none
xhtml
sliders
tabs
при желании, любой тип показа добавляется своей функцией в формате modChrome_ТИП
пример:
function modChrome_sliders($module, &$params, &$attribs)
{
...
}

| Записан

.:The True Gallery:.

beliyadm Joomlapedia team Репутация: +1200/-48 Offline Пол:
Сообщений: 8706
Севастополь==Россия

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #4 : 14.08.2008, 18:45:48 » |

Цитата: Symbios от 14.08.2008, 18:42:47
как вывести мейн меню как например на главной joomlaportal.ru... он ведь выводится не в качестве модуля
кто сказал что не через модуль?
1 - в параметрах модуля меню выставить горизонтальный тип отображения
2 - настраивать CSS

| Записан

Замороженные сиськи растревожили меня, замороженные сиськи очень странная фигня
-=Joomla FAQ=- || Работаем..с || Private Joomla Blog

fred Осваиваюсь на форуме Репутация: +10/-0 Offline Пол:
Сообщений: 198
Прошлое лишено смысла

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #5 : 16.09.2008, 10:54:42 » |

вот в нете надыбал русский мануал с рисунками по созданию шаблона для joomla 1.5 (в формате *.pdf 37 страниц) может кому пригодится
http://fred-design.com.ua/fred/Template_User_Manual_RUS.pdf

| Записан

VETERINAR Живу я здесь Репутация: +162/-13 Offline Пол:
Сообщений: 1503
Kiss my shiny metal ass!

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #6 : 17.09.2008, 15:30:59 » |

$mainframe->getCfg('live_site') - не работает.

| Записан

* JOOMLA 1.0.x FAQ * | * JOOMLA 1.5.x FAQ * | * Новости JOOMLA * | * Учебник по Joomla 1.0.x *

sega Захожу иногда Репутация: +0/-0 Offline Сообщений: 97

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #7 : 02.10.2008, 16:01:13 » |

а как сделать проверку на главную (в шаблоне), ну то есть чтобы модуль выходил только на главной.
помню что для 1.0 много всяких проверок можно было а как для 1.5?

| Записан

userxp Администратор Репутация: +341/-6 Offline Пол:
Сообщений: 2999
Joomla! Extensions Developer

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #8 : 02.10.2008, 16:10:23 » |

Цитата: VETERINAR от 17.09.2008, 15:30:59
$mainframe->getCfg('live_site') - не работает.
а то.
иба
global $mainframe

| Записан

.:The True Gallery:.

VETERINAR Живу я здесь Репутация: +162/-13 Offline Пол:
Сообщений: 1503
Kiss my shiny metal ass!

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #9 : 02.10.2008, 16:59:45 » |

Цитата: userxp от 02.10.2008, 16:10:23
а то.
иба
global $mainframe
Очень смешно.

| Записан

* JOOMLA 1.0.x FAQ * | * JOOMLA 1.5.x FAQ * | * Новости JOOMLA * | * Учебник по Joomla 1.0.x *

COF Захожу иногда Репутация: +0/-0 Offline Пол:
Сообщений: 8

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #10 : 03.10.2008, 13:53:06 » |

Так как же все таки это вывести:
$mainframe->getCfg('sitename') - имя сайта
$mainframe->getCfg('mailfrom') - e-mail админа
$mainframe->getCfg('live_site') - URL сайта
напишите пожалуйста, кто разобрался, я с Joomla меньше недели всего работаю.

| Записан

beliyadm Joomlapedia team Репутация: +1200/-48 Offline Пол:
Сообщений: 8706
Севастополь==Россия

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #11 : 03.10.2008, 14:00:44 » |

Цитата: COF от 03.10.2008, 13:53:06
Так как же все таки это вывести:
Код

    <?php
    echo $mainframe->getCfg('sitename');
    echo $mainframe->getCfg('mailfrom');
    echo $mainframe->getCfg('live_site');
    ?>

| Записан

Замороженные сиськи растревожили меня, замороженные сиськи очень странная фигня
-=Joomla FAQ=- || Работаем..с || Private Joomla Blog

COF Захожу иногда Репутация: +0/-0 Offline Пол:
Сообщений: 8

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #12 : 03.10.2008, 14:13:20 » |

О, вот так прокатило)
<?
$title = $mainframe->getCfg('sitename');
$title = str_replace( $mosConfig_sitename.' - ', '', $title );
echo $title;
?>
beliyadm
LOL, Спасибо, тупо эхонуть я не попытался)))

| Записан

Mitrich Администратор Репутация: +455/-12 Offline Пол:
Сообщений: 3226
Все можно. Но сначала учиться, учиться и учиться.

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #13 : 09.10.2008, 00:55:03 » |

Чуется мне что надо основательно дополнить мысли о шаблоностроении в 1.5

| Записан

http://mitrichlab.ru создание сайтов на CMS Joomla!
Часто задаваемые вопросы и ответы по Joomla
Все что надо знать о HTML и CSS приличному человеку
Как найти и читать error.log
Не стучите в личку, огорчусь

7Rei Давно я тут Репутация: +17/-0 Offline Пол:
Сообщений: 384

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #14 : 09.10.2008, 00:59:44 » |

Цитата: Mitrich от 09.10.2008, 00:55:03
Чуется мне что надо основательно дополнить мысли о шаблоностроении в 1.5
Было бы замечательно!!
Плиз, подскажи как сегодня справиться с проблемой или где об этом почитать

| Записан

7Rei Давно я тут Репутация: +17/-0 Offline Пол:
Сообщений: 384

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #15 : 09.10.2008, 01:43:52 » |

вставил код в модуль и вывел его только для зарегистрированных...

| Записан

Mitrich Администратор Репутация: +455/-12 Offline Пол:
Сообщений: 3226
Все можно. Но сначала учиться, учиться и учиться.

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #16 : 09.10.2008, 01:44:18 » |

а я не увидел проблемы
как рекомендация
сделай print_r($user);
и погляди что у него внутри лежит.

| Записан

http://mitrichlab.ru создание сайтов на CMS Joomla!
Часто задаваемые вопросы и ответы по Joomla
Все что надо знать о HTML и CSS приличному человеку
Как найти и читать error.log
Не стучите в личку, огорчусь

Gassava Захожу иногда Репутация: +0/-0 Offline Пол:
Сообщений: 52

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #17 : 22.11.2008, 21:01:09 » |

Скажите а как можно продублировать вывод меню из позиции user3 в позицию footer, ну или новую. Что бы меню было и сверху и снизу. Но не создавая новое меню.
Big SenQ за отзывчивость.

| Записан

beliyadm Joomlapedia team Репутация: +1200/-48 Offline Пол:
Сообщений: 8706
Севастополь==Россия

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #18 : 22.11.2008, 21:05:18 » |

два раза объявить одну позицию, но возможны проблемы с оформлением (ибо стили одни будут применяться)

| Записан

Замороженные сиськи растревожили меня, замороженные сиськи очень странная фигня
-=Joomla FAQ=- || Работаем..с || Private Joomla Blog

Gassava Захожу иногда Репутация: +0/-0 Offline Пол:
Сообщений: 52

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #19 : 22.11.2008, 21:13:44 » |

Ниче не понял, но направление видать верное. Ну а вобще так правильно будит или другой способ выбрать?

| Записан

7Rei Давно я тут Репутация: +17/-0 Offline Пол:
Сообщений: 384

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #20 : 23.11.2008, 01:04:34 » |

Цитата: beliyadm от 22.11.2008, 21:05:18
два раза объявить одну позицию, но возможны проблемы с оформлением (ибо стили одни будут применяться)
Почему, в шаблоне задать другие стили и проблем не будет!

| Записан

beliyadm Joomlapedia team Репутация: +1200/-48 Offline Пол:
Сообщений: 8706
Севастополь==Россия

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #21 : 23.11.2008, 01:15:15 » |

Цитата: 7Rei от 23.11.2008, 01:04:34
Почему, в шаблоне задать другие стили и проблем не будет!
если товарищ умеет работать с новым шаблонизатором и вообще с наследованием стилей - подобного вопроса бы не последовало

| Записан

Замороженные сиськи растревожили меня, замороженные сиськи очень странная фигня
-=Joomla FAQ=- || Работаем..с || Private Joomla Blog

r.bak Захожу иногда Репутация: +2/-0 Offline Сообщений: 36

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #22 : 25.11.2008, 20:21:01 » |

Ребята, подскажите. Как в J 1.5 задать позиции для модулей следующего плана.
Скажем, имеем 4 позиции. user1, user2,user3, user4. Задача, вывести их в средней колонке в порядке
user1, user2
user3, user4
Сейчас они отображаються так
user1
user2
user3
user4
Буду благодарен за помощь.

| Записан

beliyadm Joomlapedia team Репутация: +1200/-48 Offline Пол:
Сообщений: 8706
Севастополь==Россия

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #23 : 25.11.2008, 20:22:19 » |

сделать таблицу 2*2 ячейки, в каждую по позиции модуля, ну или на дивах (два дива рядом с float: left)

| Записан

Замороженные сиськи растревожили меня, замороженные сиськи очень странная фигня
-=Joomla FAQ=- || Работаем..с || Private Joomla Blog

r.bak Захожу иногда Репутация: +2/-0 Offline Сообщений: 36

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #24 : 25.11.2008, 20:25:13 » |

Цитата: beliyadm от 25.11.2008, 20:22:19
сделать таблицу 2*2 ячейки, в каждую по позиции модуля, ну или на дивах (два дива рядом с float: left)
А любой пример кода можно на дивах?

| Записан

beliyadm Joomlapedia team Репутация: +1200/-48 Offline Пол:
Сообщений: 8706
Севастополь==Россия

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #25 : 25.11.2008, 20:40:57 » |

Код

    <div style="width: 200px; float: left;">user1 и user2 - позиции</div>
    <div style="width: 200px; float: left;">user3 и user4 - позиции</div>

При условии, естессно, что родительский контейнер не менее 400 пкс в ширину

| Записан

Замороженные сиськи растревожили меня, замороженные сиськи очень странная фигня
-=Joomla FAQ=- || Работаем..с || Private Joomla Blog

r.bak Захожу иногда Репутация: +2/-0 Offline Сообщений: 36

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #26 : 25.11.2008, 21:41:55 » |

что-то не получается. Теперь выводит в две колонки, но следование:
user 1 user 3
user 2 user 4

| Записан

beliyadm Joomlapedia team Репутация: +1200/-48 Offline Пол:
Сообщений: 8706
Севастополь==Россия

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #27 : 25.11.2008, 21:46:22 » |

Цитата: r.bak от 25.11.2008, 21:41:55
user 1 user 3
user 2 user 4
ну товарищи дорогие, включите соображалку
Код

    <div style="width: 200px; float: left;">user1 и user3 - позиции</div>
    <div style="width: 200px; float: left;">user2 и user4 - позиции</div>

| Записан

Замороженные сиськи растревожили меня, замороженные сиськи очень странная фигня
-=Joomla FAQ=- || Работаем..с || Private Joomla Blog

r.bak Захожу иногда Репутация: +2/-0 Offline Сообщений: 36

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #28 : 25.11.2008, 22:00:18 » |

Для начала, beliyadm громадное спасибо за отклик.
Но ведь смысл в том, что если посмотреть с ?tp=1 то позиция нормально объявлена.
Те, возьмем случай только с user1 user2. В этом случае позиции на своих местах, а отображается
user1
user2.
Мой код:
<div id="ja-box" style="width: 50%; float: left;">
<jdoc:include type="modules" name="user1" style="jarounded" />
<jdoc:include type="modules" name="user2" style="jarounded" />
</div>
PS. с width играл в разных значениях.

| Записан

r.bak Захожу иногда Репутация: +2/-0 Offline Сообщений: 36

| Re: [howto] Создание шаблона для Joomla! 1.5 « Ответ #29 : 25.11.2008, 22:03:16 » |

А вот листнинг такого вида нормально показывает
<div id="ja-box" style="width: 50%; float: left;">
<jdoc:include type="modules" name="user1" style="jarounded" />
</div>
<div id="ja-box" style="width: 50%; float: right;">
<jdoc:include type="modules" name="user2" style="jarounded" />
</div>

| Записан

Страниц: [1] 2 3 4 5 Вверх |

| Добавить закладку | Печать |

Перейти в:

| Powered by SMF 1.1.11 | SMF © 2006, Simple Machines LLC |

Все объявления
Яндекс Директ
Дать объявление

Надежный хостинг Новое оборудование, все необходимые опции включены. Тарифы от 50 руб! www.logol.ru |  | Увеличение продаж через Интернет Размещение рекламы, продвижение сайта. Скидки. Мини-сайт в подарок навсегда Адрес и телефон · www.expertprodazh.ru · Тольятти |  | Быстрый платный хостинг Мгновенный старт, помощь при смене хостинга, многолетний опыт и репутация. www.reg.ru |  | Договорной документооборот Эффективная система договорного документооборота на базе MS SharePoint. www.korusconsulting.ru

Загружается...