Как изменить веб-интерфейса своими силами?

Технические вопросы по UTM 5.0
andrew_b
Сообщения: 145
Зарегистрирован: Пт янв 21, 2005 07:35

Сообщение andrew_b »

aospan писал(а):
Magnum72 писал(а):
aospan писал(а):
MadMike писал(а):То есть для изменения вообще править можно всё - и xml файлы и файл basic.xslt - зависит от задачи. Если вам нужно, например, не выводить третью колонку в таблице с отчетом по трафику, то тут без правки basic.xslt не обойтись. но если вам нужно, например, просто убрать пункт из меню, то можно обойтись правкой соответсвующего xml шаблона.

А как сделать так чтоб период выборки по умолчанию начинался с начала текущего месяца? т.е. когда первый раз заходишь с отчет он выводит отчет за позледние 30 календарных дней как я понял... очень неудобно передвигть 4 ползунка на 0 чтоб узнать состояние в текущем месяце.
Можно вставить обычный Java script, который выставит все нужные значения. Можно пойти дальше - вставить запоминание cookie и запоминать последние настройки ...
А можно сделать чтобы отчет автматически не делался.
Открываешь страничку, и выбираешь промежуток выборки.
И все-таки, правельнее было бы или текущий день, или текущий месяц по умолчанию даты выставлять.

MadMike
Сообщения: 230
Зарегистрирован: Чт май 05, 2005 07:02

Сообщение MadMike »

Не подскажет кто как сделать чтобы на всех страничках отображались одинаковые колонтитулы?
Вроде это можно сделать через SSI - в каие файлы нужно вставить include?

Аватара пользователя
dalex
Сообщения: 1306
Зарегистрирован: Пт янв 21, 2005 11:54

Сообщение dalex »

Вроде это можно сделать через SSI - в каие файлы нужно вставить include?
еще нужно на апаче поддержку ssi включить.
Колонтитулы в смысле - шапка и подвал?
так нужно в шаблоне посмотреть вроде бы тело из него формируется.

Slad
Сообщения: 210
Зарегистрирован: Сб мар 26, 2005 14:52

Сообщение Slad »

Шальная идея пришла - скачать всю морду и потом ее разбирать. Попробовал wgetом, в итоге смог только скачать только страничку отчеты, которая сразу после логина идет, дальше не могу.
Есть иди у кого как это сделать/

MadMike
Сообщения: 230
Зарегистрирован: Чт май 05, 2005 07:02

Сообщение MadMike »

а зачем её качать?
все равно на выходе получаешь хтмл - а править надо хмл шаблоны

Slad
Сообщения: 210
Зарегистрирован: Сб мар 26, 2005 14:52

Сообщение Slad »

мне совсем править надо и вывод вставлять в другой сайт

MadMike
Сообщения: 230
Зарегистрирован: Чт май 05, 2005 07:02

Сообщение MadMike »

хм.. совсем не понимаю...
скинь в аську что это за технология такая... 172376161

Slad
Сообщения: 210
Зарегистрирован: Сб мар 26, 2005 14:52

Сообщение Slad »

Как в шаблоне удалять столбцы из отчетов.

Код: Выделить всё

<table >
 <tab>M_ACCOUNT</tab>
  <tab>M_BALANCE</tab>
<!--  <tab>M_USER_CREDIT</tab>-->
  <field type="static_val_table_single" mult_param="accounts_list"></field>
</table>
Вот например такой отчет есть в user_reports.xml
как и что править в basic basic.xslt чтоб его не было тоже, а то так только заголовка нет.

MadMike
Сообщения: 230
Зарегистрирован: Чт май 05, 2005 07:02

Сообщение MadMike »

Как в шаблоне удалять столбцы из отчетов.

<table >
<tab>M_ACCOUNT</tab>
<tab>M_BALANCE</tab>
<!-- <tab>M_USER_CREDIT</tab>-->
<field type="static_val_table_single" mult_param="accounts_list"></field>
</table>

Вот например такой отчет есть в user_reports.xml
как и что править в basic basic.xslt чтоб его не было тоже, а то так только заголовка нет.
аналогичная проблема :(

Slad
Сообщения: 210
Зарегистрирован: Сб мар 26, 2005 14:52

Сообщение Slad »

aospan, будь добр, научи как столбцы убирать.

aospan
NetUP Team
Сообщения: 1639
Зарегистрирован: Чт янв 13, 2005 20:30

Сообщение aospan »

Slad писал(а):aospan, будь добр, научи как столбцы убирать.
здесь можно воспользоваться возможностями XSLT и в basic.xslt убрать столбцы из нужных таблиц. Например, мы хотим убрать 3й столбец в таблице accounts_traffic_info. Для этого в разделе <xsl:template match="field[@type=&quot;static_val_table_single&quot;]"> определяем название таблицы:
<xsl:variable name="temp_1"><xsl:value-of select="@mult_param"/></xsl:variable>

и затем уже убираем нужный столбец в этой таблице:

<xsl:choose>
<xsl:when test="$temp_1 = 'accounts_traffic_info'">
<xsl:variable name="pos" select="position()"/>
<xsl:if test="$pos != 3">
<TD class="utm-table" align="left">
<xsl:value-of select="."/>
</TD>
</xsl:if>
</xsl:when>
<xsl:otherwise>
<TD class="utm-table" align="left">
<xsl:value-of select="."/>
</TD>
</xsl:otherwise>
</xsl:choose>

так же надо убрать название столба в xml файле user_reports_traffic.xml. В принципе можно использовать практически все возможности XML/XSLT.

Slad
Сообщения: 210
Зарегистрирован: Сб мар 26, 2005 14:52

Сообщение Slad »

aospan писал(а): Для этого в разделе <xsl:template match="field[@type=&quot;static_val_table_single&quot;]"> определяем название таблицы:
<xsl:variable name="temp_1"><xsl:value-of select="@mult_param"/></xsl:variable>
Что значит "определяем название таблицы" - нужно найти кусок кода с именем таблицы или добавить свою строку?
и затем уже убираем нужный столбец в этой таблице:

<xsl:choose>
<xsl:when test="$temp_1 = 'accounts_traffic_info'">
<xsl:variable name="pos" select="position()"/>
<xsl:if test="$pos != 3">
<TD class="utm-table" align="left">
<xsl:value-of select="."/>
</TD>
</xsl:if>
</xsl:when>
<xsl:otherwise>
<TD class="utm-table" align="left">
<xsl:value-of select="."/>
</TD>
</xsl:otherwise>
</xsl:choose>

так же надо убрать название столба в xml файле user_reports_traffic.xml. В принципе можно использовать практически все возможности XML/XSLT.
Это как я понял нужно добавить после
<TR><xsl:if test="$prompt != ''">
Или не так все делается?
[/quote]

aospan
NetUP Team
Сообщения: 1639
Зарегистрирован: Чт янв 13, 2005 20:30

Сообщение aospan »

Slad писал(а):
aospan писал(а): Для этого в разделе <xsl:template match="field[@type=&quot;static_val_table_single&quot;]"> определяем название таблицы:
<xsl:variable name="temp_1"><xsl:value-of select="@mult_param"/></xsl:variable>
Что значит "определяем название таблицы" - нужно найти кусок кода с именем таблицы или добавить свою строку?
Иначе говоря записываем название таблицы в переменную temp_1. Данный шаблон вызывается на каждую таблицу, поэтому нам надо узнать для какой таблицы он вызыван и дальше уже делать "вырезание" колонки.
и затем уже убираем нужный столбец в этой таблице:

<xsl:choose>
<xsl:when test="$temp_1 = 'accounts_traffic_info'">
<xsl:variable name="pos" select="position()"/>
<xsl:if test="$pos != 3">
<TD class="utm-table" align="left">
<xsl:value-of select="."/>
</TD>
</xsl:if>
</xsl:when>
<xsl:otherwise>
<TD class="utm-table" align="left">
<xsl:value-of select="."/>
</TD>
</xsl:otherwise>
</xsl:choose>

так же надо убрать название столба в xml файле user_reports_traffic.xml. В принципе можно использовать практически все возможности XML/XSLT.
Это как я понял нужно добавить после
<TR><xsl:if test="$prompt != ''">
Или не так все делается?
поностью этот кусок выглядит так:

<xsl:otherwise>
<xsl:for-each select="./row_params/param_value">
<xsl:choose>
<xsl:when test="@link != ''">
<TD class="utm-table" align="left">
<A HREF="/cgi-bin/utm5/{$user}?skey={$skey__}&amp;{@link}">
<xsl:value-of select="."/>
</A>
</TD>
</xsl:when>
<xsl:otherwise>

<xsl:choose>
<xsl:when test="$temp_1 = 'accounts_traffic_info'">
<xsl:variable name="pos" select="position()"/>
<xsl:if test="$pos != 3">
<TD class="utm-table" align="left">
<xsl:value-of select="."/>
</TD>
</xsl:if>
</xsl:when>
<xsl:otherwise>
<TD class="utm-table" align="left">
<xsl:value-of select="."/>
</TD>
</xsl:otherwise>
</xsl:choose>

</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
</xsl:otherwise>

Slad
Сообщения: 210
Зарегистрирован: Сб мар 26, 2005 14:52

Сообщение Slad »

aospan,можно полностью кусок
начиная с <!-- ************* ROWS **************** -->
и до <!-- *********************** FORMS SECTION **************************** -->
полдня промучался, так и не получается.
если слишком большой объем, то вышлите плиз на tempo@kgs.ru

aospan
NetUP Team
Сообщения: 1639
Зарегистрирован: Чт янв 13, 2005 20:30

Сообщение aospan »

<!-- ************* ROWS **************** -->
<xsl:template match="field[@type=&quot;static_val_table&quot;]">
<TR>
<TD class="utm-table" align="right">
<xsl:call-template name="dict"><xsl:with-param name="value">
<xsl:value-of select="@prompt"/>
</xsl:with-param></xsl:call-template>
</TD>
<TD class="utm-table" align="left">
<xsl:apply-templates select="*"/>
</TD>
</TR>
</xsl:template>

<xsl:template match="field[@type=&quot;static_val_table_single&quot;]">
<xsl:variable name="prompt" select="@prompt"/>
<xsl:variable name="param"><xsl:value-of select="@param"/></xsl:variable>
<xsl:variable name="bold"><xsl:value-of select="@bold"/></xsl:variable>
<xsl:variable name="temp_1"><xsl:value-of select="@mult_param"/></xsl:variable>

<!-- counter for traffic report table --> <xsl:variable name="matchNumber" select="'0'"/>

<xsl:for-each select="key('db_key_row',$temp_1)">
<TR>
<xsl:if test="$prompt != ''">
<xsl:choose>
<xsl:when test="$bold != ''">
<TD class="utm-table-bold" align="right">
<xsl:call-template name="dict"><xsl:with-param name="value">
<xsl:value-of select="$prompt"/>
</xsl:with-param></xsl:call-template>
</TD>
</xsl:when>
<xsl:otherwise>
<TD class="utm-table" align="right">
<xsl:call-template name="dict"><xsl:with-param name="value">
<xsl:value-of select="$prompt"/>
</xsl:with-param></xsl:call-template>
</TD>
</xsl:otherwise>
</xsl:choose>
</xsl:if>

<xsl:choose>
<xsl:when test="$param = 'int_status'">
<xsl:for-each select="key('db_key',$param)/param_value">
<xsl:variable name="int_status"><xsl:value-of select="."/></xsl:variable>
<TD class="utm-table" align="left">
<xsl:choose>
<xsl:when test="$int_status='1'">
<xsl:call-template name="dict"><xsl:with-param name="value">M_INT_ON</xsl:with-param></xsl:call-template><xsl:text> </xsl:t
ext>
<A HREF="/cgi-bin/utm5/{$user}?skey={$skey__}&amp;cmd=user_reports&amp;int_status_cmd=invert">
<xsl:call-template name="dict"><xsl:with-param name="value">M_INT_DO_OFF</xsl:with-param></xsl:call-template>
</A>
</xsl:when>
<xsl:otherwise>
<xsl:call-template name="dict"><xsl:with-param name="value">M_INT_OFF</xsl:with-param></xsl:call-template><xsl:text> </xsl:text>
<A HREF="/cgi-bin/utm5/{$user}?skey={$skey__}&amp;cmd=user_reports&amp;int_status_cmd=invert">
<xsl:call-template name="dict"><xsl:with-param name="value">M_INT_DO_ON</xsl:with-param></xsl:call-template>
</A>
</xsl:otherwise>
</xsl:choose>
</TD>
</xsl:for-each>
</xsl:when>
<xsl:when test="$param = 'is_blocked'">
<xsl:for-each select="key('db_key',$param)/param_value">
<xsl:variable name="block_status"><xsl:value-of select="."/></xsl:variable>
<TD class="utm-table" align="left">
<xsl:choose>
<xsl:when test="$block_status='0'">
<xsl:call-template name="dict"><xsl:with-param name="value">M_BLOCK_OFF</xsl:with-param></xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:call-template name="dict"><xsl:with-param name="value">M_BLOCK_ON</xsl:with-param></xsl:call-template>
</xsl:otherwise>
</xsl:choose>
</TD>
</xsl:for-each>
</xsl:when>
<xsl:when test="$param!=''">
<xsl:for-each select="key('db_key',$param)/param_value">
<xsl:choose>
<xsl:when test="$bold != ''">
<TD class="utm-table-bold" align="left">
<xsl:value-of select="."/>
</TD>
</xsl:when>
<xsl:otherwise>
<TD class="utm-table" align="left">
<xsl:value-of select="."/>
</TD>
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
</xsl:when>
<xsl:otherwise>
<xsl:for-each select="./row_params/param_value">
<xsl:choose>
<xsl:when test="@link != ''">
<TD class="utm-table" align="left">
<A HREF="/cgi-bin/utm5/{$user}?skey={$skey__}&amp;{@link}">
<xsl:value-of select="."/>
</A>
</TD>
</xsl:when>
<xsl:otherwise>

<xsl:choose>
<xsl:when test="$temp_1 = 'accounts_traffic_info'">
<xsl:variable name="pos" select="position()"/>
<xsl:if test="$pos != 3">
<TD class="utm-table" align="left">
<xsl:value-of select="."/>
</TD>
</xsl:if>
</xsl:when>
<xsl:otherwise>
<TD class="utm-table" align="left">
<xsl:value-of select="."/>
</TD>
</xsl:otherwise>
</xsl:choose>

</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
</xsl:otherwise>
</xsl:choose>
</TR>
</xsl:for-each>
</xsl:template>

<!-- *********************** FORMS SECTION **************************** -->

Ответить