[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Fmsystem-commits] [11314] bkbooking: stavanger extra calendar for build
From: |
Kjell Arne Espedal |
Subject: |
[Fmsystem-commits] [11314] bkbooking: stavanger extra calendar for buildings |
Date: |
Tue, 24 Sep 2013 09:24:23 +0000 |
Revision: 11314
http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=11314
Author: kjell
Date: 2013-09-24 09:24:21 +0000 (Tue, 24 Sep 2013)
Log Message:
-----------
bkbooking: stavanger extra calendar for buildings
Modified Paths:
--------------
branches/stavangerkommune/booking/inc/class.bobooking.inc.php
branches/stavangerkommune/booking/inc/class.sobuilding.inc.php
branches/stavangerkommune/booking/inc/class.uibooking.inc.php
branches/stavangerkommune/booking/inc/class.uibuilding.inc.php
branches/stavangerkommune/booking/setup/phpgw_no.lang
branches/stavangerkommune/booking/setup/setup.inc.php
branches/stavangerkommune/booking/setup/tables_current.inc.php
branches/stavangerkommune/booking/setup/tables_update.inc.php
branches/stavangerkommune/booking/templates/base/account_code_dimension.xsl
branches/stavangerkommune/booking/templates/base/building_form.xsl
branches/stavangerkommune/booking/templates/base/settings.xsl
branches/stavangerkommune/bookingfrontend/inc/class.uibooking.inc.php
branches/stavangerkommune/bookingfrontend/inc/class.uibuilding.inc.php
branches/stavangerkommune/bookingfrontend/setup/phpgw_no.lang
branches/stavangerkommune/bookingfrontend/setup/setup.inc.php
branches/stavangerkommune/bookingfrontend/templates/stavanger/building.xsl
Modified: branches/stavangerkommune/booking/inc/class.bobooking.inc.php
===================================================================
--- branches/stavangerkommune/booking/inc/class.bobooking.inc.php
2013-09-23 13:28:38 UTC (rev 11313)
+++ branches/stavangerkommune/booking/inc/class.bobooking.inc.php
2013-09-24 09:24:21 UTC (rev 11314)
@@ -237,6 +237,71 @@
return array('total_records'=>count($results),
'results'=>$results);
}
+ function building_extraschedule($building_id, $date)
+ {
+ $config = CreateObject('phpgwapi.config','booking');
+ $config->read();
+
+ $from = clone $date;
+ $from->setTime(0, 0, 0);
+ // Make sure $from is a monday
+ if($from->format('w') != 1)
+ {
+ $from->modify('last monday');
+ }
+ $to = clone $from;
+ $to->modify('+7 days');
+ $allocation_ids =
$this->so->allocation_ids_for_building($building_id, $from, $to);
+
+ $orgids = explode(",", $config->config_data['extra_schedule_ids']);
+
+ $allocations =
$this->allocation_so->read(array('filters'=> array('id' => $allocation_ids,
'organization_id' => $orgids)));
+ $allocations = $allocations['results'];
+ foreach($allocations as &$allocation)
+ {
+ $allocation['name'] =
$allocation['organization_name'];
+ $allocation['shortname'] =
$allocation['organization_shortname'];
+ $allocation['type'] = 'allocation';
+ }
+ $booking_ids =
$this->so->booking_ids_for_building($building_id, $from, $to);
+ $bookings = $this->so->read(array('filters'=>
array('id' => $booking_ids)));
+ $bookings = $bookings['results'];
+ foreach($bookings as &$booking)
+ {
+ $booking['name'] = $booking['group_name'];
+ $booking['shortname'] =
$booking['group_shortname'];
+ $booking['type'] = 'booking';
+ }
+ $allocations = $this->split_allocations($allocations,
$bookings);
+
+ $event_ids =
$this->so->event_ids_for_building($building_id, $from, $to);
+ $events = $this->event_so->read(array('filters'=>
array('id' => $event_ids)));
+ $events = $events['results'];
+ foreach($events as &$event)
+ {
+ $event['name'] = $event['description'];
+ $event['type'] = 'event';
+ }
+ $bookings = array_merge($allocations, $bookings);
+ $bookings = $this->_remove_event_conflicts($bookings,
$events);
+
+ $resource_ids =
$this->so->resource_ids_for_bookings($booking_ids);
+ $resource_ids = array_merge($resource_ids,
$this->so->resource_ids_for_allocations($allocation_ids));
+ $resource_ids = array_merge($resource_ids,
$this->so->resource_ids_for_events($event_ids));
+ $resources = $this->resource_so->read(array('filters'
=> array('id' => $resource_ids, 'active' => 1)));
+ $resources = $resources['results'];
+ foreach ($resources as $key => $row) {
+ $sort[$key] = $row['sort'];
+ }
+
+ // Sort the resources with sortkey ascending
+ // Add $resources as the last parameter, to sort by the
common key
+ array_multisort($sort, SORT_ASC, $resources);
+ $bookings = $this->_split_multi_day_bookings($bookings,
$from, $to);
+ $results = build_schedule_table($bookings, $resources);
+ return array('total_records'=>count($results),
'results'=>$results);
+ }
+
/**
* Return a resource's schedule for a given week in a YUI
DataSource
* compatible format
Modified: branches/stavangerkommune/booking/inc/class.sobuilding.inc.php
===================================================================
--- branches/stavangerkommune/booking/inc/class.sobuilding.inc.php
2013-09-23 13:28:38 UTC (rev 11313)
+++ branches/stavangerkommune/booking/inc/class.sobuilding.inc.php
2013-09-24 09:24:21 UTC (rev 11314)
@@ -23,6 +23,7 @@
'deactivate_calendar' => array('type'
=> 'int'),
'deactivate_application' =>
array('type' => 'int'),
'deactivate_sendmessage' =>
array('type' => 'int'),
+ 'extra_kalendar' => array('type' =>
'int'),
'location_code' =>array('type' =>
'string', 'required' => false),
'street' => array('type'
=> 'string', 'query' => true),
'zip_code' => array('type'
=> 'string'),
Modified: branches/stavangerkommune/booking/inc/class.uibooking.inc.php
===================================================================
--- branches/stavangerkommune/booking/inc/class.uibooking.inc.php
2013-09-23 13:28:38 UTC (rev 11313)
+++ branches/stavangerkommune/booking/inc/class.uibooking.inc.php
2013-09-24 09:24:21 UTC (rev 11314)
@@ -214,6 +214,26 @@
return $data;
}
+ public function building_extraschedule()
+ {
+ $date = new DateTime(phpgw::get_var('date'));
+ $bookings =
$this->bo->building_extraschedule(phpgw::get_var('building_id', 'int'), $date);
+ foreach($bookings['results'] as &$booking)
+ {
+ $booking['resource_link'] =
$this->link(array('menuaction' => 'booking.uiresource.schedule', 'id' =>
$booking['resource_id']));
+ $booking['link'] =
$this->link(array('menuaction' => 'booking.uibooking.show', 'id' =>
$booking['id']));
+ array_walk($booking, array($this, 'item_link'));
+ }
+ $data = array
+ (
+ 'ResultSet' => array(
+ "totalResultsAvailable" =>
$bookings['total_records'],
+ "Result" => $bookings['results']
+ )
+ );
+ return $data;
+ }
+
public function resource_schedule()
{
$date = new DateTime(phpgw::get_var('date'));
Modified: branches/stavangerkommune/booking/inc/class.uibuilding.inc.php
===================================================================
--- branches/stavangerkommune/booking/inc/class.uibuilding.inc.php
2013-09-23 13:28:38 UTC (rev 11313)
+++ branches/stavangerkommune/booking/inc/class.uibuilding.inc.php
2013-09-24 09:24:21 UTC (rev 11314)
@@ -26,7 +26,7 @@
$this->bo = CreateObject('booking.bobuilding');
self::set_active_menu('booking::buildings');
- $this->fields = array('name', 'homepage',
'description', 'email', 'tilsyn_name', 'tilsyn_email', 'tilsyn_phone',
'tilsyn_name2', 'tilsyn_email2', 'tilsyn_phone2', 'street', 'zip_code', 'city',
'district', 'phone', 'active',
'location_code','deactivate_application','deactivate_calendar','deactivate_sendmessage','calendar_text');
+ $this->fields = array('name', 'homepage',
'description', 'email', 'tilsyn_name', 'tilsyn_email', 'tilsyn_phone',
'tilsyn_name2', 'tilsyn_email2', 'tilsyn_phone2', 'street', 'zip_code', 'city',
'district', 'phone', 'active',
'location_code','deactivate_application','deactivate_calendar','deactivate_sendmessage','extra_kalendar','calendar_text');
}
public function properties()
@@ -177,7 +177,15 @@
$building['buildings_link'] =
self::link(array('menuaction' => 'booking.uibuilding.index'));
$building['cancel_link'] =
self::link(array('menuaction' => 'booking.uibuilding.show', 'id' =>
$building['id']));
$building['top-nav-bar-buildings'] = lang('Buildings');
-
+ $config = CreateObject('phpgwapi.config','booking');
+ $config->read();
+
+ if ($config->config_data['extra_schedule'] == 'yes') {
+ $building['extra'] = 1;
+ } else {
+ $building['extra'] = 0;
+ }
+
$errors = array();
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
Modified: branches/stavangerkommune/booking/setup/phpgw_no.lang
===================================================================
--- branches/stavangerkommune/booking/setup/phpgw_no.lang 2013-09-23
13:28:38 UTC (rev 11313)
+++ branches/stavangerkommune/booking/setup/phpgw_no.lang 2013-09-24
09:24:21 UTC (rev 11314)
@@ -630,3 +630,5 @@
Mail text to building contact when conflicting event booking no E-post
tekst til tilsynsfører/bygg kontakt når konflikt
Event Canceled Subject booking no E-post emne når arrangement avlyses
Mail for event canceled booking no E-post tekst når arrangement
avlyses
+Extra kalendar for public opening times booking no Aktiver ekstra
kalender for publikumsbading
+
Modified: branches/stavangerkommune/booking/setup/setup.inc.php
===================================================================
--- branches/stavangerkommune/booking/setup/setup.inc.php 2013-09-23
13:28:38 UTC (rev 11313)
+++ branches/stavangerkommune/booking/setup/setup.inc.php 2013-09-24
09:24:21 UTC (rev 11314)
@@ -1,6 +1,6 @@
<?php
$setup_info['booking']['name'] = 'booking';
- $setup_info['booking']['version'] = '0.2.14';
+ $setup_info['booking']['version'] = '0.2.15';
$setup_info['booking']['app_order'] = 9;
$setup_info['booking']['enable'] = 1;
$setup_info['booking']['app_group'] = 'office';
Modified: branches/stavangerkommune/booking/setup/tables_current.inc.php
===================================================================
--- branches/stavangerkommune/booking/setup/tables_current.inc.php
2013-09-23 13:28:38 UTC (rev 11313)
+++ branches/stavangerkommune/booking/setup/tables_current.inc.php
2013-09-24 09:24:21 UTC (rev 11314)
@@ -22,6 +22,7 @@
'deactivate_calendar' => array('type' => 'int',
'nullable' => False,'precision' => '4', 'default' => 0),
'deactivate_application' => array('type' =>
'int', 'nullable' => False,'precision' => '4', 'default' => 0),
'deactivate_sendmessage' => array('type' =>
'int', 'nullable' => False,'precision' => '4', 'default' => 0),
+ 'extra_kalendar' => array('type' => 'int',
'nullable' => False,'precision' => '4', 'default' => 0),
'name' => array('type' => 'varchar','precision'
=> '50','nullable' => False),
'homepage' => array('type' => 'text',
'nullable' => False),
'location_code' => array('type' =>
'varchar','precision' => '50','nullable' => True),
Modified: branches/stavangerkommune/booking/setup/tables_update.inc.php
===================================================================
--- branches/stavangerkommune/booking/setup/tables_update.inc.php
2013-09-23 13:28:38 UTC (rev 11313)
+++ branches/stavangerkommune/booking/setup/tables_update.inc.php
2013-09-24 09:24:21 UTC (rev 11314)
@@ -2721,7 +2721,7 @@
$test[] = '0.2.13';
/**
- * Update booking version from 0.2.12 to 0.2.13
+ * Update booking version from 0.2.13 to 0.2.14
* add another tilsynsvakt to buidling
*
*/
@@ -2740,3 +2740,23 @@
}
}
+ $test[] = '0.2.14';
+ /**
+ * Update booking version from 0.2.14 to 0.2.15
+ * add another tilsynsvakt to buidling
+ *
+ */
+ function booking_upgrade0_2_14()
+ {
+ $GLOBALS['phpgw_setup']->oProc->m_odb->transaction_begin();
+
+ $GLOBALS['phpgw_setup']->oProc->m_odb->query("ALTER TABLE
bb_building ADD COLUMN extra_kalendar int NOT NULL DEFAULT 0");
+ $GLOBALS['phpgw_setup']->oProc->m_odb->query("UPDATE
bb_building SET extra_kalendar = 0");
+
+ if($GLOBALS['phpgw_setup']->oProc->m_odb->transaction_commit())
+ {
+ $GLOBALS['setup_info']['booking']['currentver'] =
'0.2.15';
+ return $GLOBALS['setup_info']['booking']['currentver'];
+ }
+ }
+
Modified:
branches/stavangerkommune/booking/templates/base/account_code_dimension.xsl
===================================================================
--- branches/stavangerkommune/booking/templates/base/account_code_dimension.xsl
2013-09-23 13:28:38 UTC (rev 11313)
+++ branches/stavangerkommune/booking/templates/base/account_code_dimension.xsl
2013-09-24 09:24:21 UTC (rev 11314)
@@ -100,6 +100,23 @@
</option>
</select>
</dd>
+ <dt><label for="field_external_format_linebreak"><xsl:value-of
select="php:function('lang', 'External file linebreak ')"/></label></dt>
+ <dd>
+ <select id="field_external_format_linebreak"
name="external_format_linebreak">
+ <option value="Windows">
+ <xsl:if
test="config_data/external_format_linebreak='Windows'">
+ <xsl:attribute
name="selected">checked</xsl:attribute>
+ </xsl:if>
+ Windows
+ </option>
+ <option value="Linux">
+ <xsl:if
test="config_data/external_format_linebreak='Linux'">
+ <xsl:attribute
name="selected">checked</xsl:attribute>
+ </xsl:if>
+ Linux
+ </option>
+ </select>
+ </dd>
</dl>
<div class="clr"/>
Modified: branches/stavangerkommune/booking/templates/base/building_form.xsl
===================================================================
--- branches/stavangerkommune/booking/templates/base/building_form.xsl
2013-09-23 13:28:38 UTC (rev 11313)
+++ branches/stavangerkommune/booking/templates/base/building_form.xsl
2013-09-24 09:24:21 UTC (rev 11314)
@@ -140,6 +140,7 @@
</dd>
</xsl:if>
</dl>
+ <div class="clr"/>
<dl class="form-col">
<xsl:if test="not(new_form)">
<dt><label
for="field_deactivate_sendmessage"><xsl:value-of select="php:function('lang',
'Deactivate send message')"/></label></dt>
@@ -161,6 +162,28 @@
</dd>
</xsl:if>
</dl>
+ <dl class="form-col">
+ <xsl:if test="not(new_form) and
building/extra=1">
+ <dt><label
for="field_extra_kalendar"><xsl:value-of select="php:function('lang', 'Extra
kalendar for public opening times')"/></label></dt>
+
+ <dd>
+ <select id="for_extra_kalendar"
name="extra_kalendar">
+ <option value="1">
+ <xsl:if
test="building/extra_kalendar=1">
+
<xsl:attribute name="selected">checked</xsl:attribute>
+ </xsl:if>
+ <xsl:value-of
select="php:function('lang', 'Yes')"/>
+ </option>
+ <option value="0">
+ <xsl:if
test="building/extra_kalendar=0">
+
<xsl:attribute name="selected">checked</xsl:attribute>
+ </xsl:if>
+ <xsl:value-of
select="php:function('lang', 'No')"/>
+ </option>
+ </select>
+ </dd>
+ </xsl:if>
+ </dl>
<div class="clr"/>
<dl class="form-col">
Modified: branches/stavangerkommune/booking/templates/base/settings.xsl
===================================================================
--- branches/stavangerkommune/booking/templates/base/settings.xsl
2013-09-23 13:28:38 UTC (rev 11313)
+++ branches/stavangerkommune/booking/templates/base/settings.xsl
2013-09-24 09:24:21 UTC (rev 11314)
@@ -28,6 +28,29 @@
</option>
</select>
</dd>
+ <dt><label for="field_extra_schedule"><xsl:value-of
select="php:function('lang', 'Activate extra kalendar field on
building')"/></label></dt>
+ <dd>
+ <select id="field_extra_schedule"
name="config_data[extra_schedule]">
+ <option value="no">
+ <xsl:if test="config_data/extra_schedule='no'">
+ <xsl:attribute
name="selected">checked</xsl:attribute>
+ </xsl:if>
+ <xsl:value-of select="php:function('lang', 'No')" />
+ </option>
+ <option value="yes">
+ <xsl:if test="config_data/extra_schedule='yes'">
+ <xsl:attribute
name="selected">checked</xsl:attribute>
+ </xsl:if>
+ <xsl:value-of select="php:function('lang', 'Yes')" />
+ </option>
+ </select>
+ </dd>
+ <dt><label for="field_extra_schedule_ids"><xsl:value-of
select="php:function('lang', 'Ids that should be included in the
calendar')"/></label></dt>
+ <dd>
+ <input id="field_extra_schedule_ids"
type="text" name="config_data[extra_schedule_ids]">
+ <xsl:attribute
name="value"><xsl:value-of
select="config_data/extra_schedule_ids"/></xsl:attribute>
+ </input>
+ </dd>
<dt class="heading"><xsl:value-of select="php:function('lang',
'Billing sequence numbers')"/></dt>
<dd>
<xsl:value-of select="php:function('lang', 'Do
not change these values unless you know what they are.')"/>
Modified: branches/stavangerkommune/bookingfrontend/inc/class.uibooking.inc.php
===================================================================
--- branches/stavangerkommune/bookingfrontend/inc/class.uibooking.inc.php
2013-09-23 13:28:38 UTC (rev 11313)
+++ branches/stavangerkommune/bookingfrontend/inc/class.uibooking.inc.php
2013-09-24 09:24:21 UTC (rev 11314)
@@ -6,6 +6,7 @@
public $public_functions = array
(
'building_schedule' => true,
+ 'building_extraschedule' => true,
'resource_schedule' => true,
'info' => true,
'add' => true,
@@ -52,6 +53,25 @@
return $data;
}
+ public function building_extraschedule()
+ {
+ $date = new DateTime(phpgw::get_var('date'));
+ $bookings =
$this->bo->building_extraschedule(phpgw::get_var('building_id', 'int'), $date);
+ foreach($bookings['results'] as &$row)
+ {
+ $row['resource_link'] =
$this->link(array('menuaction' => 'bookingfrontend.uiresource.schedule', 'id'
=> $row['resource_id']));
+ array_walk($row, array($this, 'item_link'));
+ }
+ $data = array
+ (
+ 'ResultSet' => array(
+ "totalResultsAvailable" =>
$bookings['total_records'],
+ "Result" => $bookings['results']
+ )
+ );
+ return $data;
+ }
+
public function resource_schedule()
{
$date = new DateTime(phpgw::get_var('date'));
Modified: branches/stavangerkommune/bookingfrontend/inc/class.uibuilding.inc.php
===================================================================
--- branches/stavangerkommune/bookingfrontend/inc/class.uibuilding.inc.php
2013-09-23 13:28:38 UTC (rev 11313)
+++ branches/stavangerkommune/bookingfrontend/inc/class.uibuilding.inc.php
2013-09-24 09:24:21 UTC (rev 11314)
@@ -6,6 +6,7 @@
public $public_functions = array(
'index' => true,
'schedule' => true,
+ 'extraschedule' => true,
'show' => true,
'find_buildings_used_by' => true,
);
@@ -39,12 +40,43 @@
self::add_javascript('booking', 'booking',
'schedule.js');
self::render_template('building_schedule',
array('building' => $building, 'backend' => $backend));
}
+
+ public function extraschedule()
+ {
+ $backend = phpgw::get_var('backend', 'GET');
+ $building =
$this->bo->get_schedule(phpgw::get_var('id', 'GET'),
'bookingfrontend.uibuilding');
+ if ($building['deactivate_application'] == 0) {
+ $building['application_link'] =
self::link(array(
+ 'menuaction' =>
'bookingfrontend.uiapplication.add',
+ 'building_id' => $building['id'],
+ 'building_name' => $building['name'],
+ ));
+ } else {
+ $building['application_link'] =
self::link(array('menuaction' => 'bookingfrontend.uibuilding.extraschedule',
'id' => $building['id']));
+ }
+ $building['datasource_url'] = self::link(array(
+ 'menuaction' =>
'bookingfrontend.uibooking.building_extraschedule',
+ 'building_id' => $building['id'],
+ 'phpgw_return_as' => 'json',
+ ));
+
+ // the schedule can also be used from backend
+ // if so we want to change default date shown in the
calendar
+ if ($backend == 'true')
+ {
+ $building['date'] = phpgw::get_var('date',
'GET');
+ }
+ $building['deactivate_application'] = 1;
+ self::add_javascript('booking', 'booking',
'schedule.js');
+ self::render_template('building_schedule',
array('building' => $building, 'backend' => $backend));
+ }
public function show()
{
$this->check_active('booking.uibuilding.show');
$building =
$this->bo->read_single(phpgw::get_var('id', 'GET'));
$building['schedule_link'] =
self::link(array('menuaction' => 'bookingfrontend.uibuilding.schedule', 'id' =>
$building['id']));
+ $building['extra_link'] = self::link(array('menuaction'
=> 'bookingfrontend.uibuilding.extraschedule', 'id' => $building['id']));
$building['message_link'] =
self::link(array('menuaction' => 'bookingfrontend.uisystem_message.edit',
'building_id' => $building['id'],'building_name' => $building['name']));
$building['start'] =
self::link(array('menuaction' => 'bookingfrontend.uisearch.index', 'type' =>
"building"));
if ( trim($building['homepage']) != '' &&
!preg_match("/^http|https:\/\//", trim($building['homepage'])) )
Modified: branches/stavangerkommune/bookingfrontend/setup/phpgw_no.lang
===================================================================
--- branches/stavangerkommune/bookingfrontend/setup/phpgw_no.lang
2013-09-23 13:28:38 UTC (rev 11313)
+++ branches/stavangerkommune/bookingfrontend/setup/phpgw_no.lang
2013-09-24 09:24:21 UTC (rev 11314)
@@ -360,3 +360,4 @@
Tilsynsvakt name bookingfrontend no Tilsynsvakt navn
Tilsynsvakt email bookingfrontend no Tilsynsvakt epost
Tilsynsvakt telephone bookingfrontend no Tilsynsvakt telefon
+Public schedule bookingfrontend no Publikumsbading
Modified: branches/stavangerkommune/bookingfrontend/setup/setup.inc.php
===================================================================
--- branches/stavangerkommune/bookingfrontend/setup/setup.inc.php
2013-09-23 13:28:38 UTC (rev 11313)
+++ branches/stavangerkommune/bookingfrontend/setup/setup.inc.php
2013-09-24 09:24:21 UTC (rev 11314)
@@ -21,7 +21,7 @@
$setup_info['bookingfrontend']['depends'][] = array(
'appname' => 'booking',
- 'versions' => Array('0.2.00',
'0.2.01','0.2.02','0.2.03','0.2.04','0.2.05','0.2.06','0.2.07','0.2.08','0.2.09','0.2.10')
+ 'versions' =>
Array('0.2.06','0.2.07','0.2.08','0.2.09','0.2.10',
'0.2.11','0.2.12','0.2.13','0.2.14','0.2.15')
);
$setup_info['bookingfrontend']['depends'][] = array(
Modified:
branches/stavangerkommune/bookingfrontend/templates/stavanger/building.xsl
===================================================================
--- branches/stavangerkommune/bookingfrontend/templates/stavanger/building.xsl
2013-09-23 13:28:38 UTC (rev 11313)
+++ branches/stavangerkommune/bookingfrontend/templates/stavanger/building.xsl
2013-09-24 09:24:21 UTC (rev 11314)
@@ -26,6 +26,11 @@
- <xsl:value-of select="calendar_text"
disable-output-escaping="yes"/>
</xsl:if>
</div>
+ <xsl:if test="extra_kalendar=1">
+ <div>
+ <button
onclick="window.location.href='{extra_link}'"><xsl:value-of
select="php:function('lang', 'Public schedule')" /></button>
+ </div>
+ </xsl:if>
<xsl:if test="normalize-space(description)">
<dl class="proplist description">
<dt><xsl:value-of
select="php:function('lang', 'Description')" /></dt>
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Fmsystem-commits] [11314] bkbooking: stavanger extra calendar for buildings,
Kjell Arne Espedal <=