<vn> <div id="title"> <h1><t>Visits</t></h1> </div> <div id="actions"> <htk-bar-button icon="refresh" tip="_Refresh" on-click="onRefreshClick"/> <htk-bar-button icon="user-info" tip="_Connections" on-click="onSessionsClick"/> </div> <div id="form" class="visits"> <div class="box"> <div class="form"> <div class="form-group"> <label><t>From</t></label> <htk-date-chooser> <vn-param property="param" id="from"/> </htk-date-chooser> </div> <div class="form-group"> <label><t>To</t></label> <htk-date-chooser> <vn-param property="param" id="to"/> </htk-date-chooser> </div> </div> </div> <div class="summary box"> <p> <htk-text> <db-calc-sum property="param" model="visits" column-name="visits"/> </htk-text> <t>visits</t>, <htk-text> <db-calc-sum property="param" model="visits" column-name="newVisits"/> </htk-text> <t>news</t> </p> </div> <div class="list box"> <htk-repeater form-id="iter" empty-message="_Select date interval"> <db-model property="model" id="visits"> <custom> SELECT browser ,MIN(CAST(version AS DECIMAL(4,1))) minVersion ,MAX(CAST(version AS DECIMAL(4,1))) maxVersion ,MAX(c.stamp) lastVisit ,COUNT(DISTINCT c.id) visits ,SUM(a.firstAccess = c.id AND v.firstAgent = a.id) newVisits FROM visitUser e JOIN visitAccess c ON e.access = c.id JOIN visitAgent a ON c.agent = a.id JOIN visit v ON a.visit = v.id WHERE c.stamp BETWEEN TIMESTAMP(#from,'00:00:00') AND TIMESTAMP(#to,'23:59:59') GROUP BY browser ORDER BY visits DESC </custom> <sql-batch property="batch"> <custom> <item name="from" param="from"/> <item name="to" param="to"/> </custom> </sql-batch> </db-model> <custom> <div class="item"> <p class="important"> <htk-text form="iter" column="browser"/> <htk-text form="iter" column="minVersion"/> - <htk-text form="iter" column="maxVersion"/> </p> <p> <htk-text form="iter" column="visits"/> <t>visits</t>, <htk-text form="iter" column="newVisits"/> <t>news</t> </p> <p> <htk-text form="iter" column="lastVisit" format="_%a, %e %b %Y at %T"/> </p> </div> </custom> </htk-repeater> </div> </div> </vn>