Организация страниц для печати

#
Re: Организация страниц для печати
Решения, что приходят мне на ум - это в ТДС или в макете (смотря как вы выводите информацию) отлавливать GET запрос ?action=print и в выводе и либо добавлять XML-сущность контроллеру показа и с её помощью убирать ссылки, либо подменять XSLT шаблон показа в контроллере, на тот что будет без ссылок.
skype: mcross82
#
Re: Организация страниц для печати
в XSL
<div id="gallery">
               <table border="0" cellpadding="0" cellspacing="0" align="left" width="70%">
                        <tr>
                           <!-- Выводим список дополнительных свойств типа "Файл" -->
                           <xsl:if test="count(property[type=1]) &gt; 0">
                              <xsl:apply-templates select="property[type=1][file_path!='']" mode="foto"/>
                        </xsl:if>                        </tr>
                        <tr>
                           <td> 
                           </td>
                        </tr>
                     </table>
               </div>


<xsl:template match="property" mode="foto">
      <td><div class="loty_foto">
            <a href="{file_path}">
               <img src="{small_image/file_path}" alt="{name}" title="{name}" />
         </a></div>
      </td>
      <xsl:if test="position() mod 2 =0">
         <xsl:text disable-output-escaping="yes">
            &lt;/tr&gt;
            &lt;tr&gt;
         </xsl:text>
      </xsl:if>
   </xsl:template>


не получается не выводить полный путь при печати
#
Re: Организация страниц для печати
А с чего вдруг должно было получится?
В коде странцы ТДС для вашей ИС (или в макете)
до вывода блока с
$Informationsystem_Controller_Show
   ->xsl(
      Core_Entity::factory('Xsl'->getByName($xslName)
   )   
   ->show();
вставляем    
<?php
// Проверяем, если нажали ссылку "Печать"
if(Core_Array::getGet('action') && Core_Array::getGet('action') == "print")
{
$Informationsystem_Controller_Show->addEntity(
      Core::factory('Core_Xml_Entity')
         ->name('print')->value(1)
);
}


Это даст вам в XML при нажатой кнопке печать тег  <print>1</print>

далее в xslt шаблоне выполняете проверку
<xsl:template match="property" mode="foto">
      <td>
      <div class="loty_foto">
         <xsl:choose>
            <!-- Если печать -->
            <xsl:when test="//print = 1">
               <img src="{small_image/file_path}" alt="{name}" title="{name}" />
            </xsl:when>
            <!-- Иначе -->
            <xsl:otherwise>
               <a href="{file_path}">
                  <img src="{small_image/file_path}" alt="{name}" title="{name}" />
               </a>
            </xsl:otherwise>
         </xsl:choose>

       </div>
      </td>
      <xsl:if test="position() mod 2 =0">
         <xsl:text disable-output-escaping="yes">
            &lt;/tr&gt;
            &lt;tr&gt;
         </xsl:text>
      </xsl:if>
   </xsl:template>
skype: mcross82
#
Re: Организация страниц для печати
Mcross, у меня  ИМ.
в макете код стоит
<?php
// Проверяем, если нажали ссылку "Печать"
if(Core_Array::getGet('action') && Core_Array::getGet('action') == "print")
{
    /* Устанавливаем макет для текущей страницы.
    Значение 10 замените на ID макета, созданного выше */
    Core_Entity::factory('Template', 10)->execute();
    
    // Вывод версии для печати закончен
    return;
}
?>

Получается, что если фотографии (доп. свойства типа файл у товара в ИМ) отображаются без вывода через галерею, то полная ссылка рядом с каждым фото при выводе на печать не отображается.
Как только вывод через галерею, ссылка отображается
Авторизация