summaryrefslogtreecommitdiff
path: root/protected/views
diff options
context:
space:
mode:
authorPatrick Seeger <pseeger@ccwn.org>2014-06-27 18:24:42 +0200
committerPatrick Seeger <pseeger@ccwn.org>2014-06-27 18:24:42 +0200
commitc647025290d4280945098ad95732e6fb2308cffb (patch)
treec279ac23fcfe8541bcf531b5c5d6f6c6e608f347 /protected/views
parentb0bb0b981ebaa1b260e48a6a7c05e7b18407b32d (diff)
Vereinsname bei Veranstaltungen ausblenden wenn mobiler Browser
Diffstat (limited to 'protected/views')
-rw-r--r--protected/views/veranstaltung/_list_veranstaltungen.php41
1 files changed, 41 insertions, 0 deletions
diff --git a/protected/views/veranstaltung/_list_veranstaltungen.php b/protected/views/veranstaltung/_list_veranstaltungen.php
index 0565ce1..e4d4d55 100644
--- a/protected/views/veranstaltung/_list_veranstaltungen.php
+++ b/protected/views/veranstaltung/_list_veranstaltungen.php
@@ -1,4 +1,44 @@
<?php
+$tablet_browser = 0;
+$mobile_browser = 0;
+
+if (preg_match('/(tablet|ipad|playbook)|(android(?!.*(mobi|opera mini)))/i', strtolower($_SERVER['HTTP_USER_AGENT']))) {
+ $tablet_browser++;
+}
+
+if (preg_match('/(up.browser|up.link|mmp|symbian|smartphone|midp|wap|phone|android|iemobile)/i', strtolower($_SERVER['HTTP_USER_AGENT']))) {
+ $mobile_browser++;
+}
+
+if ((strpos(strtolower($_SERVER['HTTP_ACCEPT']),'application/vnd.wap.xhtml+xml') > 0) or ((isset($_SERVER['HTTP_X_WAP_PROFILE']) or isset($_SERVER['HTTP_PROFILE'])))) {
+ $mobile_browser++;
+}
+
+$mobile_ua = strtolower(substr($_SERVER['HTTP_USER_AGENT'], 0, 4));
+$mobile_agents = array(
+ 'w3c ','acs-','alav','alca','amoi','audi','avan','benq','bird','blac',
+ 'blaz','brew','cell','cldc','cmd-','dang','doco','eric','hipt','inno',
+ 'ipaq','java','jigs','kddi','keji','leno','lg-c','lg-d','lg-g','lge-',
+ 'maui','maxo','midp','mits','mmef','mobi','mot-','moto','mwbp','nec-',
+ 'newt','noki','palm','pana','pant','phil','play','port','prox',
+ 'qwap','sage','sams','sany','sch-','sec-','send','seri','sgh-','shar',
+ 'sie-','siem','smal','smar','sony','sph-','symb','t-mo','teli','tim-',
+ 'tosh','tsm-','upg1','upsi','vk-v','voda','wap-','wapa','wapi','wapp',
+ 'wapr','webc','winw','winw','xda ','xda-');
+
+if (in_array($mobile_ua,$mobile_agents)) {
+ $mobile_browser++;
+}
+
+if (strpos(strtolower($_SERVER['HTTP_USER_AGENT']),'opera mini') > 0) {
+ $mobile_browser++;
+ //Check for tablets on opera mini alternative headers
+ $stock_ua = strtolower(isset($_SERVER['HTTP_X_OPERAMINI_PHONE_UA'])?$_SERVER['HTTP_X_OPERAMINI_PHONE_UA']:(isset($_SERVER['HTTP_DEVICE_STOCK_UA'])?$_SERVER['HTTP_DEVICE_STOCK_UA']:''));
+ if (preg_match('/(tablet|ipad|playbook)|(android(?!.*mobile))/i', $stock_ua)) {
+ $tablet_browser++;
+ }
+}
+
$this->widget('zii.widgets.grid.CGridView', array(
'dataProvider'=>$veranstaltungen->search(),
@@ -27,6 +67,7 @@ $this->widget('zii.widgets.grid.CGridView', array(
array(
'name' => "verein_id",
+ 'visible' => ($mobile_browser < 1),
'header' => "Verein",
'sortable' => true,
'type' => 'Raw',