Changeset 10471 in hybrid


Ignore:
Timestamp:
Apr 13, 2012, 4:32:48 AM (13 years ago)
Author:
rick
Message:
  • Going for an template solution instead to avoid having all the issues with escapes.
  • '/tmp/network.status' will contain the results of various (local) nagios checks.
Location:
branches/releng-9.0/nanobsd
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/releng-9.0/nanobsd/cfg-files/local/wlportal/login.tmpl

    r10470 r10471  
    11<html>
    2   <!-- Please do mind to escape 'percent' with %% as this is technically an python template -->
     2  <!-- This is an devel/py-Jinja2 template -->
    33  <head>
    44    <title>Welkom bij Wireless Leiden captive portal</title>
    55  </head>
     6  <style type='text/css'>
     7.status {
     8  background-color: lightgrey;
     9  text-align: center;
     10}
     11.warning {
     12  background-color: orange;
     13  text-align: center;
     14}
     15  </style>
    616  <body>
    7 <table width="100%%"><tr>
    8   <td><img src="/static/wl-logo.png"></td>
    9   <td><h2>%(status_msg)s</h2></td>
     17<table width="100%"><tr>
     18  <td>
     19    <div class="status"><h2>{{ status_msg }}</h2></div>
     20    <div class="warning">{{ warning_msg }}</div>
     21  </td>
     22  <td width="50px"><img src="/static/wl-logo.png"></td>
    1023</tr></table>
    1124<hr />
     
    1326   <h3>Eerlijk gebruikmaken van Wireless Leiden</h3>
    1427   <pre>
    15    A) Het gebruik van het Wireless Leiden netwerk en de internettoegang zijn kostenloos en u hoeft zich niet aan te melden.
    16    B) U dient zich te houden aan de Nederlandse wetgeving en geen schade toe te brengen of ongemak te veroorzaken voor anderen.
    17    C) De Stichting Wireless Leiden accepteert geen enkele aansprakelijkheid voor schade in welke vorm dan ook die is ontstaan door of verband houdt met het gebruik van het netwerk.</pre>
     28   A) Het gebruik van het Wireless Leiden netwerk en de internettoegang zijn
     29      kostenloos en u hoeft zich niet aan te melden.
     30   B) U dient zich te houden aan de Nederlandse wetgeving en geen schade toe te
     31      brengen of ongemak te veroorzaken voor anderen.
     32   C) De Stichting Wireless Leiden accepteert geen enkele aansprakelijkheid
     33      voor schade in welke vorm dan ook die is ontstaan door of verband houdt
     34      met het gebruik van het netwerk.
     35   </pre>
     36
    1837   <h3>Internet Toegang</h3>
    1938   <p>Internetten op het Wireless Leiden netwerk kan op twee manieren:<br />
     
    2443   </ol>
    2544
    26  <form action="http://%(portalroot)s/wlportal/" method="POST">
     45 <form action="http://{{ portalroot }}/wlportal/" method="POST">
    2746<input name="action" type="hidden" value="login" />
    2847<input type="submit" value="I wil gebruik maken van iLeiden" style="color:#000000; background: green; font-weight: bold"/>
     
    5069    The Wireless Leiden Foundation does not accept any responsibility whatsoever for damage related to or originated from the use of the network.
    5170
    52 <form action="http://%(portalroot)s/wlportal/" method="POST">
     71<form action="http://{{ portalroot }}/wlportal/" method="POST">
    5372<input name="action" type="hidden" value="login" />
    5473<input type="submit" value="OK, agreed" style="color:#000000; background: green; font-weight: bold" />
     
    6281   </em>
    6382<h3>More options</h3>
    64 <form action="http://%(portalroot)s/wlportal/" method="POST">
     83<form action="http://{{ portalroot }}/wlportal/" method="POST">
    6584<input name="action" type="hidden" value="logout" />
    6685<input type="submit" value="Cancel and/or Logout" style="color:#000000; background: red; font-weight: bold"/>
    6786</form>
    6887<hr /><em>Technical Details:</em><pre>
    69 %(tech_footer)s
     88{{ tech_footer }}
    7089</pre>
    7190  </body>
  • branches/releng-9.0/nanobsd/cfg/nanobsd.wleiden

    r10456 r10471  
    3333PACKAGE_LIST=`cat <<EOF | sed 's/#.*$//g'
    3434$PORTSDIR/benchmarks/iperf
     35$PORTSDIR/devel/py-Jinja2
    3536$PORTSDIR/devel/py-yaml
    3637$PORTSDIR/dns/dnsmasq
  • branches/releng-9.0/nanobsd/files/usr/local/www/wlportal/index.cgi

    r10419 r10471  
    3939import urlparse
    4040import yaml
     41
     42from jinja2 import Template
    4143
    4244# XXX: Make me dynamic for example put me in the conf file
     
    5557  'expire_time'   : None,
    5658  'accessdb'      : '/var/db/clients',
     59  'net_status'    : '/tmp/network.status',
    5760}
    5861
     
    6265if os.path.isfile(cfg['config_file']):
    6366  cfg.update(yaml.load(open(cfg['config_file'])))
     67
     68internet_up = True
     69if os.path.isfile(cfg['net_status']):
     70  internet_up = 'internet=up' in open(cfg['net_status'], 'r').read().lower()
     71
     72if not internet_up:
     73  cfg['warning_msg'] = "<b>Internet Problemen</b>: De laatste 15 minuten zijn er problemen met de (internet) verbinding geconstateerd, de gebruikers ervaring kan dus niet optimaal zijn. Onze excuses voor het eventuele ongemak. Bij aanhoudende problemen kunt u contact opnemen met gebruikers@lijst.wirelessleiden.nl"
    6474
    6575def log_registered_host(remote_mac, remote_host):
     
    233243# Helpers for HTML 'templates'
    234244content = cfg.copy()
    235 content.update(extra_header='',tech_footer='',status_msg='')
     245content.update(extra_header='')
    236246
    237247# IP or MAC on the whitelist does not need to authenticate, used for devices
     
    309319"""
    310320
    311 print page % content
     321print Template(page).render(content)
Note: See TracChangeset for help on using the changeset viewer.