From 1b0125ef741485253eed8e21a8a68b1cefe3b91e Mon Sep 17 00:00:00 2001 From: LX3JL Date: Tue, 5 Apr 2016 11:06:58 +0200 Subject: [PATCH] db 2.2.3 --- dashboard/changes.txt | 10 +++++- dashboard/css/layout.css | 13 +++++++- dashboard/img/down.png | Bin dashboard/img/dvc.jpg | Bin dashboard/img/ear.png | Bin dashboard/img/easterheader.jpg | Bin 0 -> 49205 bytes dashboard/img/flags/ad.png | Bin dashboard/img/flags/ae.png | Bin dashboard/img/flags/af.png | Bin dashboard/img/flags/ag.png | Bin dashboard/img/flags/al.png | Bin dashboard/img/flags/am.png | Bin dashboard/img/flags/ao.png | Bin dashboard/img/flags/ar.png | Bin dashboard/img/flags/at.png | Bin dashboard/img/flags/au.png | Bin dashboard/img/flags/ax.png | Bin dashboard/img/flags/az.png | Bin dashboard/img/flags/ba.png | Bin dashboard/img/flags/bb.png | Bin dashboard/img/flags/bd.png | Bin dashboard/img/flags/be.png | Bin dashboard/img/flags/bf.png | Bin dashboard/img/flags/bg.png | Bin dashboard/img/flags/bh.png | Bin dashboard/img/flags/bi.png | Bin dashboard/img/flags/bj.png | Bin dashboard/img/flags/bn.png | Bin dashboard/img/flags/bo.png | Bin dashboard/img/flags/br.png | Bin dashboard/img/flags/bs.png | Bin dashboard/img/flags/bt.png | Bin dashboard/img/flags/bw.png | Bin dashboard/img/flags/by.png | Bin dashboard/img/flags/bz.png | Bin dashboard/img/flags/ca.png | Bin dashboard/img/flags/cd.png | Bin dashboard/img/flags/cf.png | Bin dashboard/img/flags/cg.png | Bin dashboard/img/flags/ch.png | Bin dashboard/img/flags/ci.png | Bin dashboard/img/flags/cl.png | Bin dashboard/img/flags/cm.png | Bin dashboard/img/flags/cn.png | Bin dashboard/img/flags/co.png | Bin dashboard/img/flags/cr.png | Bin dashboard/img/flags/cu.png | Bin dashboard/img/flags/cv.png | Bin dashboard/img/flags/cy.png | Bin dashboard/img/flags/cz.png | Bin dashboard/img/flags/de.png | Bin dashboard/img/flags/dj.png | Bin dashboard/img/flags/dk.png | Bin dashboard/img/flags/dm.png | Bin dashboard/img/flags/do.png | Bin dashboard/img/flags/dz.png | Bin dashboard/img/flags/ec.png | Bin dashboard/img/flags/ee.png | Bin dashboard/img/flags/eg.png | Bin dashboard/img/flags/eh.png | Bin dashboard/img/flags/er.png | Bin dashboard/img/flags/es.png | Bin dashboard/img/flags/et.png | Bin dashboard/img/flags/fi.png | Bin dashboard/img/flags/fj.png | Bin dashboard/img/flags/fm.png | Bin dashboard/img/flags/fr.png | Bin dashboard/img/flags/ga.png | Bin dashboard/img/flags/gate.png | Bin dashboard/img/flags/gb.png | Bin dashboard/img/flags/gd.png | Bin dashboard/img/flags/ge.png | Bin dashboard/img/flags/gh.png | Bin dashboard/img/flags/gm.png | Bin dashboard/img/flags/gn.png | Bin dashboard/img/flags/gq.png | Bin dashboard/img/flags/gr.png | Bin dashboard/img/flags/gt.png | Bin dashboard/img/flags/gw.png | Bin dashboard/img/flags/gy.png | Bin dashboard/img/flags/hn.png | Bin dashboard/img/flags/hr.png | Bin dashboard/img/flags/ht.png | Bin dashboard/img/flags/hu.png | Bin dashboard/img/flags/id.png | Bin dashboard/img/flags/ie.png | Bin dashboard/img/flags/il.png | Bin dashboard/img/flags/in.png | Bin dashboard/img/flags/iq.png | Bin dashboard/img/flags/ir.png | Bin dashboard/img/flags/is.png | Bin dashboard/img/flags/it.png | Bin dashboard/img/flags/jm.png | Bin dashboard/img/flags/jo.png | Bin dashboard/img/flags/jp.png | Bin dashboard/img/flags/ke.png | Bin dashboard/img/flags/kg.png | Bin dashboard/img/flags/kh.png | Bin dashboard/img/flags/ki.png | Bin dashboard/img/flags/km.png | Bin dashboard/img/flags/kn.png | Bin dashboard/img/flags/kp.png | Bin dashboard/img/flags/kr.png | Bin dashboard/img/flags/ks.png | Bin dashboard/img/flags/kw.png | Bin dashboard/img/flags/kz.png | Bin dashboard/img/flags/la.png | Bin dashboard/img/flags/lb.png | Bin dashboard/img/flags/lc.png | Bin dashboard/img/flags/li.png | Bin dashboard/img/flags/lk.png | Bin dashboard/img/flags/lr.png | Bin dashboard/img/flags/ls.png | Bin dashboard/img/flags/lt.png | Bin dashboard/img/flags/lu.png | Bin dashboard/img/flags/lv.png | Bin dashboard/img/flags/ly.png | Bin dashboard/img/flags/ma.png | Bin dashboard/img/flags/mc.png | Bin dashboard/img/flags/md.png | Bin dashboard/img/flags/me.png | Bin dashboard/img/flags/mg.png | Bin dashboard/img/flags/mh.png | Bin dashboard/img/flags/mk.png | Bin dashboard/img/flags/ml.png | Bin dashboard/img/flags/mm.png | Bin dashboard/img/flags/mn.png | Bin dashboard/img/flags/mr.png | Bin dashboard/img/flags/mt.png | Bin dashboard/img/flags/mu.png | Bin dashboard/img/flags/mv.png | Bin dashboard/img/flags/mw.png | Bin dashboard/img/flags/mx.png | Bin dashboard/img/flags/my.png | Bin dashboard/img/flags/mz.png | Bin dashboard/img/flags/na.png | Bin dashboard/img/flags/ne.png | Bin dashboard/img/flags/ng.png | Bin dashboard/img/flags/ni.png | Bin dashboard/img/flags/nl.png | Bin dashboard/img/flags/no.png | Bin dashboard/img/flags/np.png | Bin dashboard/img/flags/nr.png | Bin dashboard/img/flags/nz.png | Bin dashboard/img/flags/om.png | Bin dashboard/img/flags/pa.png | Bin dashboard/img/flags/pe.png | Bin dashboard/img/flags/pg.png | Bin dashboard/img/flags/ph.png | Bin dashboard/img/flags/pk.png | Bin dashboard/img/flags/pl.png | Bin dashboard/img/flags/pr.png | Bin dashboard/img/flags/pt.png | Bin dashboard/img/flags/pw.png | Bin dashboard/img/flags/py.png | Bin dashboard/img/flags/qa.png | Bin dashboard/img/flags/ro.png | Bin dashboard/img/flags/rs.png | Bin dashboard/img/flags/ru.png | Bin dashboard/img/flags/rw.png | Bin dashboard/img/flags/sa.png | Bin dashboard/img/flags/sb.png | Bin dashboard/img/flags/sc.png | Bin dashboard/img/flags/sd.png | Bin dashboard/img/flags/se.png | Bin dashboard/img/flags/sg.png | Bin dashboard/img/flags/sh.png | Bin dashboard/img/flags/si.png | Bin dashboard/img/flags/sk.png | Bin dashboard/img/flags/sl.png | Bin dashboard/img/flags/sm.png | Bin dashboard/img/flags/sn.png | Bin dashboard/img/flags/so.png | Bin dashboard/img/flags/sr.png | Bin dashboard/img/flags/st.png | Bin dashboard/img/flags/sv.png | Bin dashboard/img/flags/sy.png | Bin dashboard/img/flags/sz.png | Bin dashboard/img/flags/td.png | Bin dashboard/img/flags/tg.png | Bin dashboard/img/flags/th.png | Bin dashboard/img/flags/tj.png | Bin dashboard/img/flags/tl.png | Bin dashboard/img/flags/tm.png | Bin dashboard/img/flags/tn.png | Bin dashboard/img/flags/to.png | Bin dashboard/img/flags/tr.png | Bin dashboard/img/flags/tt.png | Bin dashboard/img/flags/tv.png | Bin dashboard/img/flags/tw.png | Bin dashboard/img/flags/tz.png | Bin dashboard/img/flags/ua.png | Bin dashboard/img/flags/ug.png | Bin dashboard/img/flags/us.png | Bin dashboard/img/flags/uy.png | Bin dashboard/img/flags/uz.png | Bin dashboard/img/flags/va.png | Bin dashboard/img/flags/vc.png | Bin dashboard/img/flags/ve.png | Bin dashboard/img/flags/vn.png | Bin dashboard/img/flags/vu.png | Bin dashboard/img/flags/wl.png | Bin dashboard/img/flags/ws.png | Bin dashboard/img/flags/ye.png | Bin dashboard/img/flags/za.png | Bin dashboard/img/flags/zm.png | Bin dashboard/img/flags/zw.png | Bin dashboard/img/header.jpg | Bin dashboard/img/radio-waves-hi.png | Bin dashboard/img/sat.png | Bin dashboard/img/{flags/cw.png => speaker.png} | Bin 3146 -> 3773 bytes dashboard/img/up.png | Bin dashboard/index.php | 22 +++++++++---- dashboard/log/index.html | 0 dashboard/pgs/class.node.php | 0 dashboard/pgs/class.parsexml.php | 0 dashboard/pgs/class.peer.php | 0 dashboard/pgs/class.reflector.php | 8 +++-- dashboard/pgs/class.station.php | 0 dashboard/pgs/config.inc.php | 34 +++++++++++--------- dashboard/pgs/country.csv | 6 ++-- dashboard/pgs/functions.php | 0 dashboard/pgs/liveccs.php | 0 dashboard/pgs/liveircddb.php | 0 dashboard/pgs/peers.php | 0 dashboard/pgs/reflectors.php | 2 +- dashboard/pgs/repeaters.php | 0 dashboard/pgs/users.php | 0 228 files changed, 64 insertions(+), 31 deletions(-) mode change 100755 => 100644 dashboard/css/layout.css mode change 100755 => 100644 dashboard/img/down.png mode change 100755 => 100644 dashboard/img/dvc.jpg mode change 100755 => 100644 dashboard/img/ear.png create mode 100644 dashboard/img/easterheader.jpg mode change 100755 => 100644 dashboard/img/flags/ad.png mode change 100755 => 100644 dashboard/img/flags/ae.png mode change 100755 => 100644 dashboard/img/flags/af.png mode change 100755 => 100644 dashboard/img/flags/ag.png mode change 100755 => 100644 dashboard/img/flags/al.png mode change 100755 => 100644 dashboard/img/flags/am.png mode change 100755 => 100644 dashboard/img/flags/ao.png mode change 100755 => 100644 dashboard/img/flags/ar.png mode change 100755 => 100644 dashboard/img/flags/at.png mode change 100755 => 100644 dashboard/img/flags/au.png mode change 100755 => 100644 dashboard/img/flags/ax.png mode change 100755 => 100644 dashboard/img/flags/az.png mode change 100755 => 100644 dashboard/img/flags/ba.png mode change 100755 => 100644 dashboard/img/flags/bb.png mode change 100755 => 100644 dashboard/img/flags/bd.png mode change 100755 => 100644 dashboard/img/flags/be.png mode change 100755 => 100644 dashboard/img/flags/bf.png mode change 100755 => 100644 dashboard/img/flags/bg.png mode change 100755 => 100644 dashboard/img/flags/bh.png mode change 100755 => 100644 dashboard/img/flags/bi.png mode change 100755 => 100644 dashboard/img/flags/bj.png mode change 100755 => 100644 dashboard/img/flags/bn.png mode change 100755 => 100644 dashboard/img/flags/bo.png mode change 100755 => 100644 dashboard/img/flags/br.png mode change 100755 => 100644 dashboard/img/flags/bs.png mode change 100755 => 100644 dashboard/img/flags/bt.png mode change 100755 => 100644 dashboard/img/flags/bw.png mode change 100755 => 100644 dashboard/img/flags/by.png mode change 100755 => 100644 dashboard/img/flags/bz.png mode change 100755 => 100644 dashboard/img/flags/ca.png mode change 100755 => 100644 dashboard/img/flags/cd.png mode change 100755 => 100644 dashboard/img/flags/cf.png mode change 100755 => 100644 dashboard/img/flags/cg.png mode change 100755 => 100644 dashboard/img/flags/ch.png mode change 100755 => 100644 dashboard/img/flags/ci.png mode change 100755 => 100644 dashboard/img/flags/cl.png mode change 100755 => 100644 dashboard/img/flags/cm.png mode change 100755 => 100644 dashboard/img/flags/cn.png mode change 100755 => 100644 dashboard/img/flags/co.png mode change 100755 => 100644 dashboard/img/flags/cr.png mode change 100755 => 100644 dashboard/img/flags/cu.png mode change 100755 => 100644 dashboard/img/flags/cv.png mode change 100755 => 100644 dashboard/img/flags/cy.png mode change 100755 => 100644 dashboard/img/flags/cz.png mode change 100755 => 100644 dashboard/img/flags/de.png mode change 100755 => 100644 dashboard/img/flags/dj.png mode change 100755 => 100644 dashboard/img/flags/dk.png mode change 100755 => 100644 dashboard/img/flags/dm.png mode change 100755 => 100644 dashboard/img/flags/do.png mode change 100755 => 100644 dashboard/img/flags/dz.png mode change 100755 => 100644 dashboard/img/flags/ec.png mode change 100755 => 100644 dashboard/img/flags/ee.png mode change 100755 => 100644 dashboard/img/flags/eg.png mode change 100755 => 100644 dashboard/img/flags/eh.png mode change 100755 => 100644 dashboard/img/flags/er.png mode change 100755 => 100644 dashboard/img/flags/es.png mode change 100755 => 100644 dashboard/img/flags/et.png mode change 100755 => 100644 dashboard/img/flags/fi.png mode change 100755 => 100644 dashboard/img/flags/fj.png mode change 100755 => 100644 dashboard/img/flags/fm.png mode change 100755 => 100644 dashboard/img/flags/fr.png mode change 100755 => 100644 dashboard/img/flags/ga.png mode change 100755 => 100644 dashboard/img/flags/gate.png mode change 100755 => 100644 dashboard/img/flags/gb.png mode change 100755 => 100644 dashboard/img/flags/gd.png mode change 100755 => 100644 dashboard/img/flags/ge.png mode change 100755 => 100644 dashboard/img/flags/gh.png mode change 100755 => 100644 dashboard/img/flags/gm.png mode change 100755 => 100644 dashboard/img/flags/gn.png mode change 100755 => 100644 dashboard/img/flags/gq.png mode change 100755 => 100644 dashboard/img/flags/gr.png mode change 100755 => 100644 dashboard/img/flags/gt.png mode change 100755 => 100644 dashboard/img/flags/gw.png mode change 100755 => 100644 dashboard/img/flags/gy.png mode change 100755 => 100644 dashboard/img/flags/hn.png mode change 100755 => 100644 dashboard/img/flags/hr.png mode change 100755 => 100644 dashboard/img/flags/ht.png mode change 100755 => 100644 dashboard/img/flags/hu.png mode change 100755 => 100644 dashboard/img/flags/id.png mode change 100755 => 100644 dashboard/img/flags/ie.png mode change 100755 => 100644 dashboard/img/flags/il.png mode change 100755 => 100644 dashboard/img/flags/in.png mode change 100755 => 100644 dashboard/img/flags/iq.png mode change 100755 => 100644 dashboard/img/flags/ir.png mode change 100755 => 100644 dashboard/img/flags/is.png mode change 100755 => 100644 dashboard/img/flags/it.png mode change 100755 => 100644 dashboard/img/flags/jm.png mode change 100755 => 100644 dashboard/img/flags/jo.png mode change 100755 => 100644 dashboard/img/flags/jp.png mode change 100755 => 100644 dashboard/img/flags/ke.png mode change 100755 => 100644 dashboard/img/flags/kg.png mode change 100755 => 100644 dashboard/img/flags/kh.png mode change 100755 => 100644 dashboard/img/flags/ki.png mode change 100755 => 100644 dashboard/img/flags/km.png mode change 100755 => 100644 dashboard/img/flags/kn.png mode change 100755 => 100644 dashboard/img/flags/kp.png mode change 100755 => 100644 dashboard/img/flags/kr.png mode change 100755 => 100644 dashboard/img/flags/ks.png mode change 100755 => 100644 dashboard/img/flags/kw.png mode change 100755 => 100644 dashboard/img/flags/kz.png mode change 100755 => 100644 dashboard/img/flags/la.png mode change 100755 => 100644 dashboard/img/flags/lb.png mode change 100755 => 100644 dashboard/img/flags/lc.png mode change 100755 => 100644 dashboard/img/flags/li.png mode change 100755 => 100644 dashboard/img/flags/lk.png mode change 100755 => 100644 dashboard/img/flags/lr.png mode change 100755 => 100644 dashboard/img/flags/ls.png mode change 100755 => 100644 dashboard/img/flags/lt.png mode change 100755 => 100644 dashboard/img/flags/lu.png mode change 100755 => 100644 dashboard/img/flags/lv.png mode change 100755 => 100644 dashboard/img/flags/ly.png mode change 100755 => 100644 dashboard/img/flags/ma.png mode change 100755 => 100644 dashboard/img/flags/mc.png mode change 100755 => 100644 dashboard/img/flags/md.png mode change 100755 => 100644 dashboard/img/flags/me.png mode change 100755 => 100644 dashboard/img/flags/mg.png mode change 100755 => 100644 dashboard/img/flags/mh.png mode change 100755 => 100644 dashboard/img/flags/mk.png mode change 100755 => 100644 dashboard/img/flags/ml.png mode change 100755 => 100644 dashboard/img/flags/mm.png mode change 100755 => 100644 dashboard/img/flags/mn.png mode change 100755 => 100644 dashboard/img/flags/mr.png mode change 100755 => 100644 dashboard/img/flags/mt.png mode change 100755 => 100644 dashboard/img/flags/mu.png mode change 100755 => 100644 dashboard/img/flags/mv.png mode change 100755 => 100644 dashboard/img/flags/mw.png mode change 100755 => 100644 dashboard/img/flags/mx.png mode change 100755 => 100644 dashboard/img/flags/my.png mode change 100755 => 100644 dashboard/img/flags/mz.png mode change 100755 => 100644 dashboard/img/flags/na.png mode change 100755 => 100644 dashboard/img/flags/ne.png mode change 100755 => 100644 dashboard/img/flags/ng.png mode change 100755 => 100644 dashboard/img/flags/ni.png mode change 100755 => 100644 dashboard/img/flags/nl.png mode change 100755 => 100644 dashboard/img/flags/no.png mode change 100755 => 100644 dashboard/img/flags/np.png mode change 100755 => 100644 dashboard/img/flags/nr.png mode change 100755 => 100644 dashboard/img/flags/nz.png mode change 100755 => 100644 dashboard/img/flags/om.png mode change 100755 => 100644 dashboard/img/flags/pa.png mode change 100755 => 100644 dashboard/img/flags/pe.png mode change 100755 => 100644 dashboard/img/flags/pg.png mode change 100755 => 100644 dashboard/img/flags/ph.png mode change 100755 => 100644 dashboard/img/flags/pk.png mode change 100755 => 100644 dashboard/img/flags/pl.png mode change 100755 => 100644 dashboard/img/flags/pr.png mode change 100755 => 100644 dashboard/img/flags/pt.png mode change 100755 => 100644 dashboard/img/flags/pw.png mode change 100755 => 100644 dashboard/img/flags/py.png mode change 100755 => 100644 dashboard/img/flags/qa.png mode change 100755 => 100644 dashboard/img/flags/ro.png mode change 100755 => 100644 dashboard/img/flags/rs.png mode change 100755 => 100644 dashboard/img/flags/ru.png mode change 100755 => 100644 dashboard/img/flags/rw.png mode change 100755 => 100644 dashboard/img/flags/sa.png mode change 100755 => 100644 dashboard/img/flags/sb.png mode change 100755 => 100644 dashboard/img/flags/sc.png mode change 100755 => 100644 dashboard/img/flags/sd.png mode change 100755 => 100644 dashboard/img/flags/se.png mode change 100755 => 100644 dashboard/img/flags/sg.png mode change 100755 => 100644 dashboard/img/flags/sh.png mode change 100755 => 100644 dashboard/img/flags/si.png mode change 100755 => 100644 dashboard/img/flags/sk.png mode change 100755 => 100644 dashboard/img/flags/sl.png mode change 100755 => 100644 dashboard/img/flags/sm.png mode change 100755 => 100644 dashboard/img/flags/sn.png mode change 100755 => 100644 dashboard/img/flags/so.png mode change 100755 => 100644 dashboard/img/flags/sr.png mode change 100755 => 100644 dashboard/img/flags/st.png mode change 100755 => 100644 dashboard/img/flags/sv.png mode change 100755 => 100644 dashboard/img/flags/sy.png mode change 100755 => 100644 dashboard/img/flags/sz.png mode change 100755 => 100644 dashboard/img/flags/td.png mode change 100755 => 100644 dashboard/img/flags/tg.png mode change 100755 => 100644 dashboard/img/flags/th.png mode change 100755 => 100644 dashboard/img/flags/tj.png mode change 100755 => 100644 dashboard/img/flags/tl.png mode change 100755 => 100644 dashboard/img/flags/tm.png mode change 100755 => 100644 dashboard/img/flags/tn.png mode change 100755 => 100644 dashboard/img/flags/to.png mode change 100755 => 100644 dashboard/img/flags/tr.png mode change 100755 => 100644 dashboard/img/flags/tt.png mode change 100755 => 100644 dashboard/img/flags/tv.png mode change 100755 => 100644 dashboard/img/flags/tw.png mode change 100755 => 100644 dashboard/img/flags/tz.png mode change 100755 => 100644 dashboard/img/flags/ua.png mode change 100755 => 100644 dashboard/img/flags/ug.png mode change 100755 => 100644 dashboard/img/flags/us.png mode change 100755 => 100644 dashboard/img/flags/uy.png mode change 100755 => 100644 dashboard/img/flags/uz.png mode change 100755 => 100644 dashboard/img/flags/va.png mode change 100755 => 100644 dashboard/img/flags/vc.png mode change 100755 => 100644 dashboard/img/flags/ve.png mode change 100755 => 100644 dashboard/img/flags/vn.png mode change 100755 => 100644 dashboard/img/flags/vu.png mode change 100755 => 100644 dashboard/img/flags/wl.png mode change 100755 => 100644 dashboard/img/flags/ws.png mode change 100755 => 100644 dashboard/img/flags/ye.png mode change 100755 => 100644 dashboard/img/flags/za.png mode change 100755 => 100644 dashboard/img/flags/zm.png mode change 100755 => 100644 dashboard/img/flags/zw.png mode change 100755 => 100644 dashboard/img/header.jpg mode change 100755 => 100644 dashboard/img/radio-waves-hi.png mode change 100755 => 100644 dashboard/img/sat.png rename dashboard/img/{flags/cw.png => speaker.png} (71%) mode change 100755 => 100644 dashboard/img/up.png mode change 100755 => 100644 dashboard/log/index.html mode change 100755 => 100644 dashboard/pgs/class.node.php mode change 100755 => 100644 dashboard/pgs/class.parsexml.php mode change 100755 => 100644 dashboard/pgs/class.peer.php mode change 100755 => 100644 dashboard/pgs/class.reflector.php mode change 100755 => 100644 dashboard/pgs/class.station.php mode change 100755 => 100644 dashboard/pgs/country.csv mode change 100755 => 100644 dashboard/pgs/functions.php mode change 100755 => 100644 dashboard/pgs/liveccs.php mode change 100755 => 100644 dashboard/pgs/liveircddb.php mode change 100755 => 100644 dashboard/pgs/peers.php mode change 100755 => 100644 dashboard/pgs/reflectors.php mode change 100755 => 100644 dashboard/pgs/repeaters.php mode change 100755 => 100644 dashboard/pgs/users.php diff --git a/dashboard/changes.txt b/dashboard/changes.txt index d89949c..b021b25 100644 --- a/dashboard/changes.txt +++ b/dashboard/changes.txt @@ -1,3 +1,10 @@ +xlx db v2.2.3 + +- "config.inc.php" $CallingHome['HashFile'] and $CallingHome['OverrideIPAddress'] added +- "index.php" supports new variables from config.inc.php +- "class.reflector.php" supports new variables from config.inc.php +- "country.csv " prefixes update + xlx db v2.2.2 This version is a major release with voluntary self-registration feature build in. @@ -5,7 +12,8 @@ You need to edit the conf.inc.php to your needs. On the first run your personal hash to access the database is place in the server’s /tmp folder. Take care to make a backup of this file because this folder is cleaned up after a server reboot. -This version is a major releas +This version is a major release + xlx db v2.1.6 With this version of the dashboard, serveral parameters diff --git a/dashboard/css/layout.css b/dashboard/css/layout.css old mode 100755 new mode 100644 index c929c73..50ffc80 --- a/dashboard/css/layout.css +++ b/dashboard/css/layout.css @@ -93,7 +93,18 @@ background-image: linear-gradient(to bottom, rgb(201, 231, 233) 0%, rgb(220, 237 } .listinglink { - ont-size : 12pt; + font-size : 12pt; text-decoration : underline; color : #60A1DE; } + +.error { + font-size : 12pt; + text-decoration : none, + font-weight : bold; + color : #FF0000; + background-color : #FFFFFF; + width : 90%; + padding : 15px; + margin : 5px; +} \ No newline at end of file diff --git a/dashboard/img/down.png b/dashboard/img/down.png old mode 100755 new mode 100644 diff --git a/dashboard/img/dvc.jpg b/dashboard/img/dvc.jpg old mode 100755 new mode 100644 diff --git a/dashboard/img/ear.png b/dashboard/img/ear.png old mode 100755 new mode 100644 diff --git a/dashboard/img/easterheader.jpg b/dashboard/img/easterheader.jpg new file mode 100644 index 0000000000000000000000000000000000000000..db0fb211c010af5802ab5ac3cca79cebc3cf3a6d GIT binary patch literal 49205 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

J`-r^!%J3q#hb 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 literal 0 HcmV?d00001 diff --git a/dashboard/img/flags/ad.png b/dashboard/img/flags/ad.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ae.png b/dashboard/img/flags/ae.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/af.png b/dashboard/img/flags/af.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ag.png b/dashboard/img/flags/ag.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/al.png b/dashboard/img/flags/al.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/am.png b/dashboard/img/flags/am.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ao.png b/dashboard/img/flags/ao.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ar.png b/dashboard/img/flags/ar.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/at.png b/dashboard/img/flags/at.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/au.png b/dashboard/img/flags/au.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ax.png b/dashboard/img/flags/ax.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/az.png b/dashboard/img/flags/az.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ba.png b/dashboard/img/flags/ba.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/bb.png b/dashboard/img/flags/bb.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/bd.png b/dashboard/img/flags/bd.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/be.png b/dashboard/img/flags/be.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/bf.png b/dashboard/img/flags/bf.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/bg.png b/dashboard/img/flags/bg.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/bh.png b/dashboard/img/flags/bh.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/bi.png b/dashboard/img/flags/bi.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/bj.png b/dashboard/img/flags/bj.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/bn.png b/dashboard/img/flags/bn.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/bo.png b/dashboard/img/flags/bo.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/br.png b/dashboard/img/flags/br.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/bs.png b/dashboard/img/flags/bs.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/bt.png b/dashboard/img/flags/bt.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/bw.png b/dashboard/img/flags/bw.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/by.png b/dashboard/img/flags/by.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/bz.png b/dashboard/img/flags/bz.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ca.png b/dashboard/img/flags/ca.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/cd.png b/dashboard/img/flags/cd.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/cf.png b/dashboard/img/flags/cf.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/cg.png b/dashboard/img/flags/cg.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ch.png b/dashboard/img/flags/ch.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ci.png b/dashboard/img/flags/ci.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/cl.png b/dashboard/img/flags/cl.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/cm.png b/dashboard/img/flags/cm.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/cn.png b/dashboard/img/flags/cn.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/co.png b/dashboard/img/flags/co.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/cr.png b/dashboard/img/flags/cr.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/cu.png b/dashboard/img/flags/cu.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/cv.png b/dashboard/img/flags/cv.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/cy.png b/dashboard/img/flags/cy.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/cz.png b/dashboard/img/flags/cz.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/de.png b/dashboard/img/flags/de.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/dj.png b/dashboard/img/flags/dj.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/dk.png b/dashboard/img/flags/dk.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/dm.png b/dashboard/img/flags/dm.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/do.png b/dashboard/img/flags/do.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/dz.png b/dashboard/img/flags/dz.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ec.png b/dashboard/img/flags/ec.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ee.png b/dashboard/img/flags/ee.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/eg.png b/dashboard/img/flags/eg.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/eh.png b/dashboard/img/flags/eh.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/er.png b/dashboard/img/flags/er.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/es.png b/dashboard/img/flags/es.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/et.png b/dashboard/img/flags/et.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/fi.png b/dashboard/img/flags/fi.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/fj.png b/dashboard/img/flags/fj.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/fm.png b/dashboard/img/flags/fm.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/fr.png b/dashboard/img/flags/fr.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ga.png b/dashboard/img/flags/ga.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/gate.png b/dashboard/img/flags/gate.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/gb.png b/dashboard/img/flags/gb.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/gd.png b/dashboard/img/flags/gd.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ge.png b/dashboard/img/flags/ge.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/gh.png b/dashboard/img/flags/gh.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/gm.png b/dashboard/img/flags/gm.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/gn.png b/dashboard/img/flags/gn.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/gq.png b/dashboard/img/flags/gq.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/gr.png b/dashboard/img/flags/gr.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/gt.png b/dashboard/img/flags/gt.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/gw.png b/dashboard/img/flags/gw.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/gy.png b/dashboard/img/flags/gy.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/hn.png b/dashboard/img/flags/hn.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/hr.png b/dashboard/img/flags/hr.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ht.png b/dashboard/img/flags/ht.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/hu.png b/dashboard/img/flags/hu.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/id.png b/dashboard/img/flags/id.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ie.png b/dashboard/img/flags/ie.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/il.png b/dashboard/img/flags/il.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/in.png b/dashboard/img/flags/in.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/iq.png b/dashboard/img/flags/iq.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ir.png b/dashboard/img/flags/ir.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/is.png b/dashboard/img/flags/is.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/it.png b/dashboard/img/flags/it.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/jm.png b/dashboard/img/flags/jm.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/jo.png b/dashboard/img/flags/jo.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/jp.png b/dashboard/img/flags/jp.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ke.png b/dashboard/img/flags/ke.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/kg.png b/dashboard/img/flags/kg.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/kh.png b/dashboard/img/flags/kh.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ki.png b/dashboard/img/flags/ki.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/km.png b/dashboard/img/flags/km.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/kn.png b/dashboard/img/flags/kn.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/kp.png b/dashboard/img/flags/kp.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/kr.png b/dashboard/img/flags/kr.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ks.png b/dashboard/img/flags/ks.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/kw.png b/dashboard/img/flags/kw.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/kz.png b/dashboard/img/flags/kz.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/la.png b/dashboard/img/flags/la.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/lb.png b/dashboard/img/flags/lb.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/lc.png b/dashboard/img/flags/lc.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/li.png b/dashboard/img/flags/li.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/lk.png b/dashboard/img/flags/lk.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/lr.png b/dashboard/img/flags/lr.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ls.png b/dashboard/img/flags/ls.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/lt.png b/dashboard/img/flags/lt.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/lu.png b/dashboard/img/flags/lu.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/lv.png b/dashboard/img/flags/lv.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ly.png b/dashboard/img/flags/ly.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ma.png b/dashboard/img/flags/ma.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/mc.png b/dashboard/img/flags/mc.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/md.png b/dashboard/img/flags/md.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/me.png b/dashboard/img/flags/me.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/mg.png b/dashboard/img/flags/mg.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/mh.png b/dashboard/img/flags/mh.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/mk.png b/dashboard/img/flags/mk.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ml.png b/dashboard/img/flags/ml.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/mm.png b/dashboard/img/flags/mm.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/mn.png b/dashboard/img/flags/mn.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/mr.png b/dashboard/img/flags/mr.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/mt.png b/dashboard/img/flags/mt.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/mu.png b/dashboard/img/flags/mu.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/mv.png b/dashboard/img/flags/mv.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/mw.png b/dashboard/img/flags/mw.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/mx.png b/dashboard/img/flags/mx.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/my.png b/dashboard/img/flags/my.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/mz.png b/dashboard/img/flags/mz.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/na.png b/dashboard/img/flags/na.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ne.png b/dashboard/img/flags/ne.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ng.png b/dashboard/img/flags/ng.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ni.png b/dashboard/img/flags/ni.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/nl.png b/dashboard/img/flags/nl.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/no.png b/dashboard/img/flags/no.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/np.png b/dashboard/img/flags/np.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/nr.png b/dashboard/img/flags/nr.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/nz.png b/dashboard/img/flags/nz.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/om.png b/dashboard/img/flags/om.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/pa.png b/dashboard/img/flags/pa.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/pe.png b/dashboard/img/flags/pe.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/pg.png b/dashboard/img/flags/pg.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ph.png b/dashboard/img/flags/ph.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/pk.png b/dashboard/img/flags/pk.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/pl.png b/dashboard/img/flags/pl.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/pr.png b/dashboard/img/flags/pr.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/pt.png b/dashboard/img/flags/pt.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/pw.png b/dashboard/img/flags/pw.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/py.png b/dashboard/img/flags/py.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/qa.png b/dashboard/img/flags/qa.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ro.png b/dashboard/img/flags/ro.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/rs.png b/dashboard/img/flags/rs.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ru.png b/dashboard/img/flags/ru.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/rw.png b/dashboard/img/flags/rw.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/sa.png b/dashboard/img/flags/sa.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/sb.png b/dashboard/img/flags/sb.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/sc.png b/dashboard/img/flags/sc.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/sd.png b/dashboard/img/flags/sd.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/se.png b/dashboard/img/flags/se.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/sg.png b/dashboard/img/flags/sg.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/sh.png b/dashboard/img/flags/sh.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/si.png b/dashboard/img/flags/si.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/sk.png b/dashboard/img/flags/sk.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/sl.png b/dashboard/img/flags/sl.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/sm.png b/dashboard/img/flags/sm.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/sn.png b/dashboard/img/flags/sn.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/so.png b/dashboard/img/flags/so.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/sr.png b/dashboard/img/flags/sr.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/st.png b/dashboard/img/flags/st.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/sv.png b/dashboard/img/flags/sv.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/sy.png b/dashboard/img/flags/sy.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/sz.png b/dashboard/img/flags/sz.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/td.png b/dashboard/img/flags/td.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/tg.png b/dashboard/img/flags/tg.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/th.png b/dashboard/img/flags/th.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/tj.png b/dashboard/img/flags/tj.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/tl.png b/dashboard/img/flags/tl.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/tm.png b/dashboard/img/flags/tm.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/tn.png b/dashboard/img/flags/tn.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/to.png b/dashboard/img/flags/to.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/tr.png b/dashboard/img/flags/tr.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/tt.png b/dashboard/img/flags/tt.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/tv.png b/dashboard/img/flags/tv.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/tw.png b/dashboard/img/flags/tw.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/tz.png b/dashboard/img/flags/tz.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ua.png b/dashboard/img/flags/ua.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ug.png b/dashboard/img/flags/ug.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/us.png b/dashboard/img/flags/us.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/uy.png b/dashboard/img/flags/uy.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/uz.png b/dashboard/img/flags/uz.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/va.png b/dashboard/img/flags/va.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/vc.png b/dashboard/img/flags/vc.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ve.png b/dashboard/img/flags/ve.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/vn.png b/dashboard/img/flags/vn.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/vu.png b/dashboard/img/flags/vu.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/wl.png b/dashboard/img/flags/wl.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ws.png b/dashboard/img/flags/ws.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/ye.png b/dashboard/img/flags/ye.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/za.png b/dashboard/img/flags/za.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/zm.png b/dashboard/img/flags/zm.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/zw.png b/dashboard/img/flags/zw.png old mode 100755 new mode 100644 diff --git a/dashboard/img/header.jpg b/dashboard/img/header.jpg old mode 100755 new mode 100644 diff --git a/dashboard/img/radio-waves-hi.png b/dashboard/img/radio-waves-hi.png old mode 100755 new mode 100644 diff --git a/dashboard/img/sat.png b/dashboard/img/sat.png old mode 100755 new mode 100644 diff --git a/dashboard/img/flags/cw.png b/dashboard/img/speaker.png similarity index 71% rename from dashboard/img/flags/cw.png rename to dashboard/img/speaker.png index 9d431c873980d9457492b5f2ec6ab250e444ccc9..1ffce33a39bbab8b76fa3af6e774fc1df9668246 100644 GIT binary patch delta 1073 zcmV-11kU@)7`+`KiBL{Q4GJ0x0000DNk~Le0000P0000L2nGNE0JAGa7_lLq3V#FW zNkl2zUp; zY?fu%zkmPljImdV=ya)6TH~C5!8xC^EbGwDCNTiuIDl^eG_x%GHc67)_x-j~YSA!^ zUrp2eP6*){hB2#@>aMS^Umq0mHh{DJ_l9Lz7kuA;s8Xpsuaw%C=Xt1#z%@YT+u);dv2MULYKp2Kdk|Ykp@ItTGvwYt_oaZ@+=gLB@lR4NL<&04K?P)d23h<`3|&cEaU(m_w7 zloE|b14)u}gb;I6Q&W%EYBdlM7-P2pjG3kh%d&0*a187*;y6YahA>UD4ZxOCLP`n7 zSg%|zn?+F|2!e!&#GWCgQVG8ALkLke45JW2z;PTHhG7aJivCm%5fvOjX;1)T4E1^) zK@fm3_U!ul`t44q1AnbGlv0zN^9`*vy4~&sfW!c>)K?d6S1Ev@`>Cs3E_2s)A1#Vv zQcBsnbLY;I5CUnMVsv!$$!@oMF-a1*t~-oX7#kaVN^AYg z%F4=z?RNXxZhu`E08aIP-KnjM&bIAE0E=2{Se6Cbwo6Hp9FtOh1mM$Ft2MjTJjgkD zzb}v@)oK;f)6?aRjg3*I)TGw>Fo4%B%jy!*QLXhA#u)Yj+1jI{BO@d5Jnyx&wY5)# r5IrLLn=y9AG|iu+l(e(yzX1SoI?9m01^Pe$0000l$FwPG>jncPe|UMpkV|ggai#E_$-IyvmByf1lCAKtdR^2BS5$$2$yJ>|6C{Y((fYh jQ+<^7%JZxGd<_86FI3ih`wrzh00000NkvXXu0mjf?ODYH diff --git a/dashboard/img/up.png b/dashboard/img/up.png old mode 100755 new mode 100644 diff --git a/dashboard/index.php b/dashboard/index.php index aee8a3a..d7b5405 100644 --- a/dashboard/index.php +++ b/dashboard/index.php @@ -18,25 +18,26 @@ $Reflector->SetXMLFile($Service['XMLFile']); $Reflector->LoadXML(); if ($CallingHome['Active']) { + $CallHomeNow = false; - if (!file_exists("/tmp/callinghome.php")) { + if (!file_exists($CallingHome['HashFile'])) { $Hash = CreateCode(16); $LastSync = 0; - $Ressource = @fopen("/tmp/callinghome.php","w"); + $Ressource = @fopen($CallingHome['HashFile'],"w"); if ($Ressource) { @fwrite($Ressource, "'); @fclose($Ressource); - @exec("chmod 777 /tmp/callinghome.php"); + @exec("chmod 777 ".$CallingHome['HashFile']); $CallHomeNow = true; } } else { - include("/tmp/callinghome.php"); + include($CallingHome['HashFile']); if ($LastSync < (time() - $CallingHome['PushDelay'])) { - $Ressource = @fopen("/tmp/callinghome.php","w"); + $Ressource = @fopen($CallingHome['HashFile'],"w"); if ($Ressource) { @fwrite($Ressource, "SetCallingHome($CallingHome['Active'], $CallingHome['MyDashBoardURL'], $Hash, $CallingHome['ServerURL'], $CallingHome['Country'], $CallingHome['Comment']); + $Reflector->SetCallingHome($CallingHome['Active'], $CallingHome['MyDashBoardURL'], $Hash, $CallingHome['ServerURL'], $CallingHome['Country'], $CallingHome['Comment'], $CallingHome['OverrideIPAddress']); $Reflector->PushCallingHome(); } } @@ -107,6 +108,15 @@ if ($CallingHome['Active']) {

+ your private hash in '.$CallingHome['HashFile'].' could not be created, please check your config file and the permissions for the defined folder. +
'; + } + } + if (!isset($_GET['show'])) $_GET['show'] = ""; switch ($_GET['show']) { case 'users' : require_once("./pgs/users.php"); break; diff --git a/dashboard/log/index.html b/dashboard/log/index.html old mode 100755 new mode 100644 diff --git a/dashboard/pgs/class.node.php b/dashboard/pgs/class.node.php old mode 100755 new mode 100644 diff --git a/dashboard/pgs/class.parsexml.php b/dashboard/pgs/class.parsexml.php old mode 100755 new mode 100644 diff --git a/dashboard/pgs/class.peer.php b/dashboard/pgs/class.peer.php old mode 100755 new mode 100644 diff --git a/dashboard/pgs/class.reflector.php b/dashboard/pgs/class.reflector.php old mode 100755 new mode 100644 index fe6fda7..d4945c8 --- a/dashboard/pgs/class.reflector.php +++ b/dashboard/pgs/class.reflector.php @@ -20,6 +20,7 @@ class xReflector { private $Version = null; private $CallingHomeCountry = null; private $CallingHomeComment = null; + private $CallingHomeOverrideIP = null; public function __construct() { $this->Nodes = array(); @@ -293,7 +294,7 @@ class xReflector { } return $Module; } - + public function GetCallSignsInModules($Module) { $out = array(); for ($i=0;$i<$this->NodeCount();$i++) { @@ -304,17 +305,18 @@ class xReflector { return $out; } - public function SetCallingHome($Active, $DashboardURL, $Hash, $ServerURL, $Country, $Comment) { + public function SetCallingHome($Active, $DashboardURL, $Hash, $ServerURL, $Country, $Comment, $OverrideIP) { $this->CallingHomeActive = ($Active === true); $this->CallingHomeHash = $Hash; $this->CallingHomeDashboardURL = $DashboardURL; $this->CallingHomeServerURL = $ServerURL; $this->CallingHomeCountry = $Country; $this->CallingHomeComment = $Comment; + $this->CallingHomeOverrideIP = $OverrideIP; } public function PushCallingHome() { - $CallingHome = @fopen($this->CallingHomeServerURL."?ReflectorName=".$this->ReflectorName."&ReflectorUptime=".$this->ServiceUptime."&ReflectorHash=".$this->CallingHomeHash."&DashboardURL=".$this->CallingHomeDashboardURL."&Country=".urlencode($this->CallingHomeCountry)."&Comment=".urlencode($this->CallingHomeComment), "r"); + $CallingHome = @fopen($this->CallingHomeServerURL."?ReflectorName=".$this->ReflectorName."&ReflectorUptime=".$this->ServiceUptime."&ReflectorHash=".$this->CallingHomeHash."&DashboardURL=".$this->CallingHomeDashboardURL."&Country=".urlencode($this->CallingHomeCountry)."&Comment=".urlencode($this->CallingHomeComment)."&OverrideIP=".$this->CallingHomeOverrideIP, "r"); //debug($this->CallingHomeServerURL."?ReflectorName=".$this->ReflectorName."&ReflectorUptime=".$this->ServiceUptime."&ReflectorHash=".$this->CallingHomeHash."&DashboardURL=".$this->CallingHomeDashboardURL."&Country=".urlencode($this->CallingHomeCountry)."&Comment=".urlencode($this->CallingHomeComment)); } diff --git a/dashboard/pgs/class.station.php b/dashboard/pgs/class.station.php old mode 100755 new mode 100644 diff --git a/dashboard/pgs/config.inc.php b/dashboard/pgs/config.inc.php index fc737be..6e47859 100644 --- a/dashboard/pgs/config.inc.php +++ b/dashboard/pgs/config.inc.php @@ -14,27 +14,27 @@ $Service = array(); $CallingHome = array(); $PageOptions = array(); -$PageOptions['ContactEmail'] = 'dvc@rlx.lu'; // Support E-Mail address +$PageOptions['ContactEmail'] = 'dvc@rlx.lu'; // Support E-Mail address -$PageOptions['DashboardVersion'] = '2.2.2'; // Dashboard Version +$PageOptions['DashboardVersion'] = '2.2.3'; // Dashboard Version -$PageOptions['PageRefreshActive'] = true; // Activate automatic refresh, true or false +$PageOptions['PageRefreshActive'] = true; // Activate automatic refresh $PageOptions['PageRefreshDelay'] = '10000'; // Page refresh time in miliseconds $PageOptions['RepeatersPage'] = array(); $PageOptions['RepeatersPage']['LimitTo'] = 99; // Number of Repeaters to show -$PageOptions['RepeatersPage']['IPModus'] = 'ShowFullIP'; // See possible options above -$PageOptions['RepeatersPage']['MasqueradeCharacter'] = '*'; // Character used for masquerade +$PageOptions['RepeatersPage']['IPModus'] = 'ShowLast2ByteOfIP'; // See possible options above +$PageOptions['RepeatersPage']['MasqueradeCharacter'] = '*'; // Character used for masquerade $PageOptions['PeerPage'] = array(); $PageOptions['PeerPage']['LimitTo'] = 99; // Number of peers to show $PageOptions['PeerPage']['IPModus'] = 'ShowFullIP'; // See possible options above -$PageOptions['PeerPage']['MasqueradeCharacter'] = '*'; // Character used for masquerade +$PageOptions['PeerPage']['MasqueradeCharacter'] = '*'; // Character used for masquerade -$PageOptions['ModuleNames'] = array(); // Module description +$PageOptions['ModuleNames'] = array(); // Module nomination $PageOptions['ModuleNames']['A'] = 'Int.'; $PageOptions['ModuleNames']['B'] = 'Regional'; $PageOptions['ModuleNames']['C'] = 'National'; @@ -42,8 +42,8 @@ $PageOptions['ModuleNames']['D'] = ''; $PageOptions['MetaDescription'] = 'XLX is a D-Star Reflector System for Ham Radio Operators.'; // Meta Tag Values, usefull for Search Engine -$PageOptions['MetaKeywords'] = 'Ham Radio, D-Star, XReflector, XLX, XRF, DCS, REF, '; // Meta Tag Values, usefull for Search Engine -$PageOptions['MetaAuthor'] = 'YOURCALL'; // Meta Tag Values, usefull for Search Engine +$PageOptions['MetaKeywords'] = 'Ham Radio, D-Star, XReflector, XLX, XRF, DCS, REF, '; // Meta Tag Values, usefull forSearch Engine +$PageOptions['MetaAuthor'] = 'LX1IQ'; // Meta Tag Values, usefull for Search Engine $PageOptions['MetaRevisit'] = 'After 30 Days'; // Meta Tag Values, usefull for Search Engine $PageOptions['MetaRobots'] = 'index,follow'; // Meta Tag Values, usefull for Search Engine @@ -52,11 +52,13 @@ $PageOptions['MetaRobots'] = 'index,follow'; $Service['PIDFile'] = '/var/log/xlxd.pid'; $Service['XMLFile'] = '/var/log/xlxd.xml'; -$CallingHome['Active'] = false; //xlx phone home, true or false -$CallingHome['MyDashBoardURL'] = 'http://your_dashboard'; //dashboard url -$CallingHome['ServerURL'] = 'http://xlxapi.rlx.lu/api.php'; //database server, do not change !!!! -$CallingHome['PushDelay'] = 600; //push delay in seconds -$CallingHome['Country'] = "your_country"; //Country -$CallingHome['Comment'] = "your_comment"; //Comment. Max 100 character +$CallingHome['Active'] = false; // xlx phone home, true or false +$CallingHome['MyDashBoardURL'] = 'http://your_dashboard'; // dashboard url +$CallingHome['ServerURL'] = 'http://xlxapi.rlx.lu/api.php'; // database server, do not change !!!! +$CallingHome['PushDelay'] = 600; // push delay in seconds +$CallingHome['Country'] = "your_country"; // Country +$CallingHome['Comment'] = "your_comment"; // Comment. Max 100 character +$CallingHome['HashFile'] = "/tmp/callinghome.php"; // Make sure the apache user has read and write permissions in this folder. +$CallingHome['OverrideIPAddress'] = ""; // Leave blank for autodetection. -?> \ No newline at end of file +?> diff --git a/dashboard/pgs/country.csv b/dashboard/pgs/country.csv old mode 100755 new mode 100644 index 05cff28..2d1d6c1 --- a/dashboard/pgs/country.csv +++ b/dashboard/pgs/country.csv @@ -107,7 +107,7 @@ Iraq;IQ;YI Ireland;IE;EI-EJ-MI-GI Isle of Man;IM;GD-GT Israel;IL;4X-4Z -Italy;IT;I0-I1-I2-I3-I4-I5-I6-I7-I8-I9-IK-IN-IQ-IR-IS-IT-IU-IW-IZ +Italy;IT;I0-I1-I2-I3-I4-I5-I6-I7-I8-I9-IK-IN-IQ-IR-IS-IT-IU-IV-IW-IZ Jamaica;JM;6Y Japan;JP;JA-JB-JC-JD-JE-JF-JG-JH-JI-JJ-JK-JL-JM-JN-JO-JP-JQ-JR-JS-7J-7K-7L-7M-7N Jersey;JE;GJ-GH @@ -164,7 +164,7 @@ Niue;NU;ZK2 Norfolk Island;NF;VK9N Northern Mariana Islands;MP;KH0 Norway;NO;LA-LB-LC-LD-LE-LF-LG-LH-LI-LJ-LK-LL-LM-LN -Oman;OM;YO-YP-YQ-YR +Oman;OM;YP-YQ-YR Pakistan;PK;AP Palau;PW;T8 Palestine State of;PS;E4 @@ -234,7 +234,7 @@ Uganda;UG;5X Ukraine;UA;UR-US-UT-UU-UV-UW-UX-UY-UZ United Arab Emirates;AE;A6 United Kingdom;GB;2E-M0-M1-M2-M3-M4-M5-M6-M7-M8-M9-MB-MM-G0-G1-G2-G3-G4-G5-G6-G7-G8-G9-GX -United States;US;K0-K1-K2-K3-K4-K5-K6-K7-K8-K9-KA-KB-KC-KD-KE-KF-KG-KI-KJ-KK-KM-KN-KO-KQ-KR-KS-KT-KU-KV-KW-KX-KY-KZ-W0-W1-W2-W3-W4-W5-W6-W7-W8-W9-WA-WB-WD-WV-WX-N0-N1-N2-N3-N4-N5-N6-N7-N8-N9-NS-NO-AA-AB-AC-AD-AE-AF-AG-AH-AI-AJ-AK +United States;US;K0-K1-K2-K3-K4-K5-K6-K7-K8-K9-KA-KB-KC-KD-KE-KF-KG-KI-KJ-KK-KM-KN-KO-KQ-KR-KS-KT-KU-KV-KW-KX-KY-KZ-W0-W1-W2-W3-W4-W5-W6-W7-W8-W9-WA-WB-WD-WV-WX-WZ-N0-N1-N2-N3-N4-N5-N6-N7-N8-N9-NE-NN-NO-NS-AA-AB-AC-AD-AE-AF-AG-AH-AI-AJ-AK United States Minor Outlying Islands;UM; Uruguay;UY;CV-CW-CX Uzbekistan;UZ;UJ-UK-UL-UM diff --git a/dashboard/pgs/functions.php b/dashboard/pgs/functions.php old mode 100755 new mode 100644 diff --git a/dashboard/pgs/liveccs.php b/dashboard/pgs/liveccs.php old mode 100755 new mode 100644 diff --git a/dashboard/pgs/liveircddb.php b/dashboard/pgs/liveircddb.php old mode 100755 new mode 100644 diff --git a/dashboard/pgs/peers.php b/dashboard/pgs/peers.php old mode 100755 new mode 100644 diff --git a/dashboard/pgs/reflectors.php b/dashboard/pgs/reflectors.php old mode 100755 new mode 100644 index 40a3a30..3a12fc0 --- a/dashboard/pgs/reflectors.php +++ b/dashboard/pgs/reflectors.php @@ -21,7 +21,7 @@ $Reflectors = $XML->GetAllElements($Reflectorlist, "reflector"); # Reflector - Country + Country Service Comment diff --git a/dashboard/pgs/repeaters.php b/dashboard/pgs/repeaters.php old mode 100755 new mode 100644 diff --git a/dashboard/pgs/users.php b/dashboard/pgs/users.php old mode 100755 new mode 100644