PageRenderTime 51ms CodeModel.GetById 22ms RepoModel.GetById 0ms app.codeStats 0ms

/input.php

https://github.com/toastbrot/datenlandkarte
PHP | 711 lines | 657 code | 35 blank | 19 comment | 82 complexity | ed6ad26935533692b2a298064c78754e MD5 | raw file
  1. <?php
  2. require_once('lib.php');
  3. if ($_POST) {
  4. $invalid = check_userinput($_POST);
  5. $keys = get_keys_by_vis($_POST);
  6. $data = get_data($_POST, $keys);
  7. if (!$invalid && is_array($data))
  8. {
  9. unset($keys);
  10. unset($data);
  11. include 'select.php';
  12. die();
  13. }
  14. }
  15. // Remove any old created files if there are any
  16. if (!delete_old_created_file($location_creation))
  17. {
  18. die('Could not delete old files. Don\'t want to continue!');
  19. }
  20. // AJAX Request handler
  21. if ($_GET['method'] === 'check_svg') {
  22. $path = (string)select_svg_file($_GET);
  23. if (!file_exists($path))
  24. {
  25. die('Leider ist keine Basiskarte für diese Auswahl verfügbar.');
  26. }
  27. die();
  28. } else if ($_GET['method'] === 'get_data' && !empty($_GET['vis'])) {
  29. $keys = get_keys_by_vis($_GET);
  30. $error_msg_keys_missing = 'Die notwendigen Datensätze sind leider '.
  31. 'noch nicht verfügbar';
  32. $error_msg_keys_missing_html = ' <p class="error">'."\n".
  33. ' '.$error_msg_keys_missing."\n".' </p>'."\n";
  34. if ($_GET['interface'] == 'manual')
  35. {
  36. // 'No key values found' case
  37. if (empty($keys)) {
  38. die($error_msg_keys_missing_html);
  39. }
  40. ?>
  41. <table cellpadding="6">
  42. <?php
  43. foreach ($keys as $key => $value) {
  44. ?>
  45. <tr>
  46. <td><?=htmlspecialchars($value, ENT_NOQUOTES); ?>:</td>
  47. <td><input type="text" name="manual<?=$key; ?>"></td>
  48. </tr>
  49. <?php
  50. }
  51. ?>
  52. </table>
  53. <?php
  54. die();
  55. }
  56. elseif ($_GET['interface'] == 'kvalloc')
  57. {
  58. $keys = get_keys_by_vis($_GET);
  59. if (empty($keys)) {
  60. die($error_msg_keys_missing);
  61. }
  62. $i = 0;
  63. foreach ($keys as $key => $value) {
  64. if ($i == (count($keys)-1))
  65. echo $value.';Wert für '.$value;
  66. else
  67. echo $value.';Wert für '.$value."\n";
  68. $i++;
  69. }
  70. die();
  71. }
  72. elseif ($_GET['interface'] == 'list')
  73. {
  74. $keys = get_keys_by_vis($_GET);
  75. if (empty($keys)) {
  76. die($error_msg_keys_missing);
  77. }
  78. $i = 0;
  79. foreach ($keys as $key => $value) {
  80. if ($i == (count($keys)-1))
  81. echo 'Wert für '.$value;
  82. else
  83. echo 'Wert für '.$value."\n";
  84. $i++;
  85. }
  86. die();
  87. }
  88. elseif ($_GET['interface'] == 'json')
  89. {
  90. $keys = get_keys_by_vis($_GET);
  91. if (empty($keys)) {
  92. die($error_msg_keys_missing);
  93. }
  94. echo "{\n";
  95. $i = 0;
  96. foreach ($keys as $key => $value) {
  97. if ($i != count($keys)-1)
  98. echo ' "'.$value.'" : "Wert für '.$value.'",'."\n";
  99. else
  100. echo ' "'.$value.'" : "Wert für '.$value.'"'."\n";
  101. $i++;
  102. }
  103. die('}');
  104. }
  105. }
  106. // Defaultvalues
  107. // Will be overwritten, if there was an POST Request
  108. // with invalid data. Has to be HTML.
  109. $defaults = array(
  110. 'title' => '',
  111. 'subtitle' => '',
  112. 'fac' => 1,
  113. 'dec' => 2,
  114. 'colors' => 6,
  115. 'grad' => 0,
  116. # visualisation
  117. 'vis' => 'bl',
  118. 'bz_spec' => 'bl',
  119. 'bz_bl' => 1,
  120. 'gm_spec' => 'bl',
  121. 'gm_bl' => 1,
  122. # format
  123. 'format' => 'manual',
  124. 'data' => '',
  125. 'list_delim' => '\n',
  126. 'kvalloc_delim1' => '\n',
  127. 'kvalloc_delim2' => ';'
  128. );
  129. // Overwrite defaults now
  130. if ($_POST)
  131. {
  132. foreach ($defaults as $key => $d)
  133. {
  134. if (array_key_exists($key, $_POST) && !in_array($key, $invalid))
  135. {
  136. $defaults[$key] = htmlspecialchars($_POST[$key], ENT_NOQUOTES);
  137. }
  138. }
  139. if ($_POST['format'] == 'manual')
  140. {
  141. $i = 1;
  142. while (isset($_POST['manual'.$i]))
  143. {
  144. $defaults['manual'.$i] = htmlspecialchars($_POST['manual'.$i], ENT_NOQUOTES);
  145. $i++;
  146. }
  147. }
  148. }
  149. // Default for shareit
  150. $defaults['shareit'] = ($_POST['shareit'] == 'on') ? ' checked="checked"' : '';
  151. ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  152. <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="de-DE"
  153. xmlns:og='http://opengraphprotocol.org/schema/'>
  154. <head profile="http://gmpg.org/xfn/11">
  155. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  156. <title>Datenlandkarte erstellen » Datenlandkarten.at</title>
  157. <meta name="description" content="Hier können Sie selbst Datenlandkarten erstellen. Gleichzeitig werden, falls Sie diese Option aktiviert lassen, die Rohdaten der Visualisierung gespeichert und" />
  158. <meta name="keywords" content="Bezirke, Kärnten, Alle, Ebenen, Daten, Bundesländer" />
  159. <meta name="robots" content="index, follow" />
  160. <link rel="canonical" href="http://www.datenlandkarten.at/datenlandkarte-erstellen/" />
  161. <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8" />
  162. <link rel="stylesheet" href="http://www.datenlandkarten.at/wp-content/themes/datenlandkarten/style.css" type="text/css" media="screen" />
  163. <!--[if IE 6]><link rel="stylesheet" href="http://www.datenlandkarten.at/wp-content/themes/datenlandkarten/style.ie6.css" type="text/css" media="screen" /><![endif]-->
  164. <!--[if IE 7]><link rel="stylesheet" href="http://www.datenlandkarten.at/wp-content/themes/datenlandkarten/style.ie7.css" type="text/css" media="screen" /><![endif]-->
  165. <link rel="pingback" href="http://www.datenlandkarten.at/xmlrpc.php" />
  166. <link rel="alternate" type="application/rss+xml" title="Datenlandkarten.at &raquo; Feed" href="http://www.datenlandkarten.at/feed/" />
  167. <link rel="alternate" type="application/rss+xml" title="Datenlandkarten.at &raquo; Kommentar Feed" href="http://www.datenlandkarten.at/comments/feed/" />
  168. <link rel='stylesheet' id='NextGEN-css' href='http://www.datenlandkarten.at/wp-content/plugins/nextgen-gallery/css/nggallery.css?ver=1.0.0' type='text/css' media='screen' />
  169. <link rel='stylesheet' id='shutter-css' href='http://www.datenlandkarten.at/wp-content/plugins/nextgen-gallery/shutter/shutter-reloaded.css?ver=1.3.0' type='text/css' media='screen' />
  170. <link rel='stylesheet' id='feedreading_style-css' href='http://www.datenlandkarten.at/wp-content/plugins/feed-reading-blogroll/css/feedreading_blogroll.css?ver=1.5.6' type='text/css' media='all' />
  171. <link rel='stylesheet' id='prlipro-post-css' href='http://www.datenlandkarten.at/wp-content/plugins/pretty-link/pro/css/prlipro-post.css?ver=3.0.4' type='text/css' media='all' />
  172. <script type='text/javascript' src='http://www.datenlandkarten.at/wp-content/plugins/nextgen-gallery/shutter/shutter-reloaded.js?ver=1.3.0'></script>
  173. <script type='text/javascript' src='http://www.datenlandkarten.at/wp-includes/js/swfobject.js?ver=2.2'></script>
  174. <script type='text/javascript' src='http://www.datenlandkarten.at/wp-includes/js/jquery/jquery.js?ver=1.4.2'></script>
  175. <script type='text/javascript' src='http://www.datenlandkarten.at/wp-includes/js/comment-reply.js?ver=20090102'></script>
  176. <script type='text/javascript' src='http://www.datenlandkarten.at/wp-content/feedreading_blogroll.js?ver=1.5.6'></script>
  177. <link rel="EditURI" type="application/rsd+xml" title="RSD" href="http://www.datenlandkarten.at/xmlrpc.php?rsd" />
  178. <link rel="wlwmanifest" type="application/wlwmanifest+xml" href="http://www.datenlandkarten.at/wp-includes/wlwmanifest.xml" />
  179. <link rel='index' title='Datenlandkarten.at' href='http://www.datenlandkarten.at/' />
  180. <link rel='next' title='Galerie' href='http://www.datenlandkarten.at/galerie/' />
  181. <meta name="DC.publisher" content="Datenlandkarten.at" />
  182. <meta name="DC.publisher.url" content="http://www.datenlandkarten.at/" />
  183. <meta name="DC.title" content="Datenlandkarte erstellen" />
  184. <meta name="DC.identifier" content="http://www.datenlandkarten.at/datenlandkarte-erstellen/" />
  185. <meta name="DC.date.created" scheme="WTN8601" content="2011-02-02T20:09:28" />
  186. <meta name="DC.created" scheme="WTN8601" content="2011-02-02T20:09:28" />
  187. <meta name="DC.date" scheme="WTN8601" content="2011-02-02T20:09:28" />
  188. <meta name="DC.creator.name" content="Harm, Robert" />
  189. <meta name="DC.creator" content="Harm, Robert" />
  190. <meta name="DC.rights.rightsHolder" content="@RobertHarm" />
  191. <meta name="DC.language" content="de-DE" scheme="rfc1766" />
  192. <meta name="DC.rights.license" content="http://creativecommons.org/licenses/by/3.0/at/" />
  193. <meta name="DC.license" content="http://creativecommons.org/licenses/by/3.0/at/" />
  194. <!--Facebook Like Button OpenGraph Settings Start-->
  195. <meta property="og:site_name" content="Datenlandkarten.at"/>
  196. <meta property="og:title" content="Datenlandkarte erstellen"/>
  197. <meta property="og:description" content="Hier können Sie selbst Datenlandkarten erstellen. Gleichzeitig werden, falls Sie diese Option aktiviert lassen, die Rohdaten der Visualisie"/>
  198. <meta property="og:url" content="http://www.datenlandkarten.at/datenlandkarte-erstellen/"/>
  199. <meta property="fb:admins" content="1039929046" />
  200. <meta property="fb:app_id" content="192140977480316" />
  201. <meta property="og:image" content="http://www.datenlandkarten.at/wp-content/uploads/opengraph.png" />
  202. <meta property="og:type" content="article" />
  203. <!--Facebook Like Button OpenGraph Settings End-->
  204. <link rel="shorturl" href="http://datenlandkarte.at/gs8" />
  205. <meta name='NextGEN' content='1.7.3' />
  206. <script type="text/javascript" src="http://www.datenlandkarten.at/wp-content/themes/datenlandkarten/script.js"></script>
  207. <script type="text/javascript">
  208. <!--
  209. /* jQuery ftw */
  210. jQuery(document).ready(function () {
  211. var selected = (function (name) {
  212. return jQuery('input[name=' + name + ']:checked').val();
  213. });
  214. var write_svg_error = function(data) {jQuery('#svg_error').text(data);};
  215. var write = (function(interfac) {
  216. if (interfac == 'manual')
  217. return (function(data) { jQuery('#manual').html(data); });
  218. else
  219. return (function(data) {
  220. jQuery('textarea[name=data]').val(data); });
  221. });
  222. var update_data_form = (function (todo, interfac) {
  223. var vis = selected('vis');
  224. var bz_spec = selected('bz_spec');
  225. var gm_spec = selected('gm_spec');
  226. var bz_bl = selected('bz_bl');
  227. var gm_bl = selected('gm_bl');
  228. var data = { 'method' : 'get_data', 'interface' : interfac,
  229. 'vis' : vis, 'bz_spec' : bz_spec, 'gm_spec' : gm_spec,
  230. 'bz_bl' : bz_bl, 'gm_bl' : gm_bl };
  231. jQuery.get('input.php', data, todo);
  232. });
  233. var check_svg_exist = (function (todo) {
  234. var vis = selected('vis');
  235. var bz_spec = selected('bz_spec');
  236. var gm_spec = selected('gm_spec');
  237. var bz_bl = selected('bz_bl');
  238. var gm_bl = selected('gm_bl');
  239. var data = { 'method' : 'check_svg', 'vis' : vis,
  240. 'bz_spec' : bz_spec, 'gm_spec' : gm_spec,
  241. 'bz_bl' : bz_bl, 'gm_bl' : gm_bl };
  242. jQuery.get('input.php', data, todo);
  243. });
  244. // hide specialized input field
  245. jQuery('#bz_select, #gm_select, #list').hide();
  246. jQuery('#data_list, #kvalloc').hide();
  247. // logic
  248. jQuery('input').click(function () {
  249. jQuery('#' + jQuery(this).attr('id') + '_select').show();
  250. });
  251. jQuery('#format, input[type=radio]').change(function () {
  252. var v = jQuery('#format option:selected').val();
  253. update_data_form(write(v), v);
  254. check_svg_exist(write_svg_error);
  255. switch (v)
  256. {
  257. case 'manual':
  258. jQuery('#manual').show();
  259. jQuery('#data_list, #kvalloc, #list').hide();
  260. break;
  261. case 'list':
  262. jQuery('#list').show();
  263. case 'json':
  264. if (v == 'json') jQuery('#list').hide();
  265. jQuery('#data_list').show();
  266. jQuery('#kvalloc, #manual').hide();
  267. break;
  268. case 'kvalloc':
  269. jQuery('#data_list, #kvalloc').show();
  270. jQuery('#manual, #list').hide();
  271. break;
  272. }
  273. });
  274. jQuery('#submit').click(function () {
  275. if (jQuery('#manual').text().substring(0, 14) == 'Die notwendigen'
  276. || jQuery('#svg_error').text().length != 0)
  277. return false;
  278. else
  279. return true;
  280. });
  281. });
  282. -->
  283. </script>
  284. <style type="text/css">
  285. <!--
  286. table {
  287. width: 100%;
  288. }
  289. td {
  290. vertical-align: top;
  291. }
  292. select {
  293. min-width: 50%;
  294. }
  295. textarea {
  296. width: 100%;
  297. }
  298. input, textarea { background-color: #CCC; }
  299. input:hover, textarea:hover { background-color: #EEE; }
  300. .error {
  301. color: #F00;
  302. }
  303. .subselect {
  304. margin-left: 30px;
  305. }
  306. .download {
  307. background-color: #EEE;
  308. margin: 20px;
  309. clear: both;
  310. padding: 10px;
  311. }
  312. #data_list {
  313. font-family: "Courier New", Courier, monospace;
  314. }
  315. #cc_header {
  316. border: 2px dashed #000;
  317. padding: 10px;
  318. }
  319. #cc_header_img {
  320. float: left;
  321. }
  322. #cc_header_text {
  323. margin-left: 80px;
  324. }
  325. -->
  326. </style>
  327. </head>
  328. <body class="page page-id-2 page-template page-template-default">
  329. <div id="art-main">
  330. <div class="art-sheet">
  331. <div class="art-sheet-tl"></div>
  332. <div class="art-sheet-tr"></div>
  333. <div class="art-sheet-bl"></div>
  334. <div class="art-sheet-br"></div>
  335. <div class="art-sheet-tc"></div>
  336. <div class="art-sheet-bc"></div>
  337. <div class="art-sheet-cl"></div>
  338. <div class="art-sheet-cr"></div>
  339. <div class="art-sheet-cc"></div>
  340. <div class="art-sheet-body">
  341. <div class="art-header">
  342. <div class="art-header-center">
  343. <div class="art-header-png"></div>
  344. <div class="art-header-jpeg"></div>
  345. </div>
  346. <div class="art-headerobject"></div>
  347. <div class="art-logo">
  348. <h1 id="name-text" class="art-logo-name"><a href="http://www.datenlandkarten.at/">Datenlandkarten.at</a></h1>
  349. <h2 id="slogan-text" class="art-logo-text">Erstelle deine eigene Visualisierung von Gemeinde-, Bezirks-, und Bundesland-Daten</h2>
  350. </div>
  351. </div>
  352. <div class="art-nav">
  353. <div class="art-nav-l"></div>
  354. <div class="art-nav-r"></div>
  355. <ul class="art-menu">
  356. <li><a href="http://www.datenlandkarten.at" title="Startseite"><span class="l"> </span><span class="r"> </span><span class="t">Startseite</span></a>
  357. </li>
  358. <li class="art-menu-li-separator"><span class="art-menu-separator"> </span></li>
  359. <li class="active"><a class="active" href="http://www.datenlandkarten.at/datenlandkarte-erstellen/" title="Datenlandkarte erstellen"><span class="l"> </span><span class="r"> </span><span class="t">Datenlandkarte erstellen</span></a>
  360. </li>
  361. <li class="art-menu-li-separator"><span class="art-menu-separator"> </span></li>
  362. <li><a href="http://www.datenlandkarten.at/rohdaten/" title="Rohdaten"><span class="l"> </span><span class="r"> </span><span class="t">Rohdaten</span></a>
  363. </li>
  364. <li class="art-menu-li-separator"><span class="art-menu-separator"> </span></li>
  365. <li><a href="http://www.datenlandkarten.at/galerie/" title="Galerie"><span class="l"> </span><span class="r"> </span><span class="t">Galerie</span></a>
  366. </li>
  367. <li class="art-menu-li-separator"><span class="art-menu-separator"> </span></li>
  368. <li><a href="http://www.datenlandkarten.at/blog/" title="Blog"><span class="l"> </span><span class="r"> </span><span class="t">Blog</span></a>
  369. </li>
  370. <li class="art-menu-li-separator"><span class="art-menu-separator"> </span></li>
  371. <li><a href="http://www.datenlandkarten.at/impressum/" title="Impressum"><span class="l"> </span><span class="r"> </span><span class="t">Impressum</span></a>
  372. </li>
  373. </ul>
  374. </div>
  375. <div class="art-content-layout">
  376. <div class="art-content-layout-row">
  377. <div class="art-layout-cell art-content">
  378. <div class="art-post post-2 page type-page hentry" id="post-2">
  379. <div class="art-post-body">
  380. <div class="art-post-inner art-article">
  381. <form action="input.php" method="post">
  382. <h2 class="art-postheader">Datenlandkarte erstellen</h2>
  383. <div class="art-postcontent">
  384. <noscript>
  385. <p>
  386. Dieses Formular arbeitet mit Javascript. Bitte aktivieren
  387. Sie Javascript in ihrem Browser, wenn möglich.
  388. </p>
  389. </noscript>
  390. <p style="border:1px solid #000000;padding:10px;background:#e59a9a;margin-bottom:10px;font-size:1.3em;line-height:100%;">
  391. <strong>Hinweis:</strong> <br/>
  392. <span style="font-style:italic">
  393. An diesem Feature wird derzeit noch gearbeitet &ndash;
  394. bitte abonnieren Sie unseren
  395. <a class="liexternal" target="_blank" href="http://feeds.feedburner.com/datenlandkarten">RSS-Feed</a> <br />
  396. oder folgen Sie uns auf
  397. <a class="liexternal" target="_blank"
  398. href="http://twitter.com/datenlandkarten">Twitter</a>, um
  399. über die Fertigstellung informiert zu werden!
  400. </span>
  401. </p>
  402. <div id="cc_header">
  403. <div id="cc_header_img">
  404. <img src="img/cc.png" alt="Creative Commons" width="64">
  405. </div>
  406. <div id="cc_header_text">
  407. <p>
  408. <input type="checkbox" name="shareit" id="check_share"<?=$defaults['shareit']; ?>>
  409. <strong><label for="check_share">
  410. Ja, ich möchte meine Daten öffentlich teilen.
  411. </label></strong><br><br>
  412. Ich stimme zu, dass ich die Daten zuverlässig gesammelt oder
  413. aus einer verlässlichen Quelle gewonnen habe. Ebenso
  414. bestätige ich im zweiteren Fall das Recht zu haben, die
  415. gewonnenen Daten unter der Creative-Commons-Lizenz (XY)
  416. weitergeben zu dürfen. Ich bin damit einverstanden, dass die
  417. eingegebenen Daten langfristig gespeichert werden und der
  418. Öffentlichkeit zugänglich bleiben.
  419. </p>
  420. </div>
  421. </div>
  422. <p>
  423. Fehlende (leere) Angaben werden in der Graphik weiß dargestellt.
  424. </p>
  425. <?php
  426. // a stupid error handler
  427. function o($msg) { echo ' <li>'.$msg."</li>\n"; }
  428. if ($_POST && ($invalid || !is_array($data))) {
  429. ?>
  430. <p style="font-size:120%" class="error">Es traten Fehler auf:</p>
  431. <ul>
  432. <?php
  433. if ($invalid) {
  434. foreach ($invalid as $field) {
  435. if ($field == 'title')
  436. o('Invalider Titel-Parameter. Darf maximal '.
  437. '50 Zeichen lang sein');
  438. if ($field == 'subtitle')
  439. o('Invalider Untertitel-Parameter. Darf maximal '.
  440. '120 Zeichen lang sein');
  441. if ($field == 'fac')
  442. o('Hebefaktor darf nicht 0 sein.');
  443. if ($field == 'dec')
  444. o('Anzahl der Nachkommastellen muss zwischen 0 '.
  445. 'und 3 (inklusive) liegen');
  446. if ($field == 'colors')
  447. o('Anzahl der Farben muss zwischen 2 und 10 '.
  448. '(inklusive) liegen');
  449. if ($field == 'data')
  450. o('Bitte füllen Sie das Feld "Daten" aus');
  451. }
  452. } else {
  453. $msg = _error_msg_for_data($data);
  454. if ($msg !== false)
  455. {
  456. o(htmlspecialchars($msg, ENT_NOQUOTES));
  457. }
  458. }
  459. ?>
  460. </ul>
  461. <?php
  462. }
  463. // I am sorry for the following source code:
  464. ?>
  465. <table cellpadding="6">
  466. <tr>
  467. <td>Titel:</td>
  468. <td><input type="text" maxlength="50" tabindex="1" name="title" value="<?=$defaults['title']; ?>"></td>
  469. </tr>
  470. <tr>
  471. <td>Untertitel:</td>
  472. <td><input type="text" maxlength="120" tabindex="2" name="subtitle" value="<?=$defaults['subtitle']; ?>"></td>
  473. </tr>
  474. <tr>
  475. <td>Visualisierung:</td>
  476. <td>
  477. <?php if ($defaults['vis'] === 'bl') { ?>
  478. <input type="radio" name="vis" value="bl" id="bls" checked="checked">
  479. <label for="bls">Bundesländer Österreichs</label> <br>
  480. <?php } else { ?>
  481. <input type="radio" name="vis" value="bl" id="bls">
  482. <label for="bls">Bundesländer Österreichs</label> <br>
  483. <?php } if ($defaults['vis'] === 'eu') { ?>
  484. <input type="radio" name="vis" value="eu" id="eu" checked="checked">
  485. <label for="eu">Europas Staaten</label> <br>
  486. <?php } else { ?>
  487. <input type="radio" name="vis" value="eu" id="eu">
  488. <label for="eu">Europas Staaten</label> <br>
  489. <?php } if ($defaults['vis'] === 'bz') { ?>
  490. <input type="radio" name="vis" value="bz" id="bz" checked="checked">
  491. <label for="bz">Bezirke</label> <br>
  492. <?php } else { ?>
  493. <input type="radio" name="vis" value="bz" id="bz">
  494. <label for="bz">Bezirke</label> <br>
  495. <?php } ?>
  496. <div id="bz_select" class="subselect">
  497. <?php if ($defaults['bz_spec'] === 'bl') { ?>
  498. <input type="radio" name="bz_spec" value="bl" id="bl" checked="checked">
  499. <label for="bl">eines Bundeslands</label> <br>
  500. <?php } else { ?>
  501. <input type="radio" name="bz_spec" value="bl" id="bl">
  502. <label for="bl">eines Bundeslands</label> <br>
  503. <?php } ?>
  504. <div id="bz_bl_select" class="subselect">
  505. <?php
  506. foreach (get('bundeslaender') as $key => $bl) {
  507. if ($defaults['bz_bl'] == $key)
  508. $ch = ' checked="checked"';
  509. else
  510. $ch = '';
  511. ?>
  512. <input type="radio" name="bz_bl" id="bz_bl<?=$key; ?>" value="<?=$key; ?>"<?=$ch; ?>>
  513. <label for="bz_bl<?=$key; ?>"><?=$bl; ?></label> <br>
  514. <?php } ?>
  515. </div>
  516. <?php if ($defaults['bz_spec'] === 'oe') { ?>
  517. <input type="radio" name="bz_spec" id="oe" value="oe" checked="checked">
  518. <label for="oe">von Österreich</label>
  519. <?php } else { ?>
  520. <input type="radio" name="bz_spec" id="oe" value="oe">
  521. <label for="oe">von Österreich</label>
  522. <?php } ?>
  523. </div>
  524. <?php if ($defaults['vis'] === 'gm') { ?>
  525. <input type="radio" name="vis" value="gm" id="gm" checked="checked">
  526. <label for="gm">Gemeinden</label> <br>
  527. <?php } else { ?>
  528. <input type="radio" name="vis" value="gm" id="gm">
  529. <label for="gm">Gemeinden</label> <br>
  530. <?php } ?>
  531. <div id="gm_select" class="subselect">
  532. <?php if ($defaults['gm_spec'] === 'bl') { ?>
  533. <input type="radio" name="gm_spec" id="gm_spec" value="bl" checked="checked">
  534. <label for="gm_spec">eines Bundeslands</label> <br>
  535. <?php } else { ?>
  536. <input type="radio" name="gm_spec" id="gm_spec" value="bl">
  537. <label for="gm_spec">eines Bundeslands</label> <br>
  538. <?php } ?>
  539. <div id="gm_bl_select" class="subselect">
  540. <?php
  541. foreach (get('bundeslaender') as $key => $bl) {
  542. if ($defaults['gm_bl'] == $key)
  543. $ch = ' checked="checked"';
  544. else
  545. $ch = '';
  546. ?>
  547. <input type="radio" name="gm_bl" id="gm_bl<?=$key; ?>" value="<?=$key; ?>"<?=$ch; ?>>
  548. <label for="gm_bl<?=$key; ?>"><?=$bl; ?></label> <br>
  549. <?php } ?>
  550. </div>
  551. <?php if ($defaults['gm_spec'] === 'oe') { ?>
  552. <input type="radio" name="gm_spec" id="gm_spec" value="oe" checked="checked">
  553. <label for="gm_spec">von Österreich</label>
  554. <?php } else { ?>
  555. <input type="radio" name="gm_spec" id="gm_spec" value="oe">
  556. <label for="gm_spec">von Österreich</label>
  557. <?php } ?>
  558. </div>
  559. <div id="svg_error" class="error"></div>
  560. </td>
  561. </tr>
  562. <tr>
  563. <td>Hebefaktor:</td>
  564. <td><input type="text" name="fac" value="<?=$defaults['fac']; ?>"></td>
  565. </tr>
  566. <tr>
  567. <td>Anzahl der Nachkommastellen (0-3):</td>
  568. <td><input type="text" name="dec" maxlength="1" value="<?=$defaults['dec']; ?>"></td>
  569. </tr>
  570. <tr>
  571. <td>Anzahl der Farben (2-10):</td>
  572. <td><input type="text" name="colors" maxlength="2" value="<?=$defaults['colors']; ?>"></td>
  573. </tr>
  574. <tr>
  575. <td>Farbrichtung:</td>
  576. <td>
  577. <select name="grad">
  578. <?php
  579. foreach ($color_allocation as $key => $c)
  580. {
  581. if ($key == (int)$defaults['grad'])
  582. $ch = ' selected="selected"';
  583. else
  584. $ch = '';
  585. ?>
  586. <option value="<?=$key; ?>"<?=$ch?>><?=$c; ?></option>
  587. <?php } ?>
  588. </select>
  589. </td>
  590. </tr>
  591. <tr>
  592. <td colspan="2">
  593. <strong>Eingabeformat:</strong>
  594. <select name="format" id="format">
  595. <?php
  596. $formats = array(
  597. 'manual' => 'Manuell', 'list' => 'Liste',
  598. 'json' => 'Javascript Object Notation (JSON)', 'kvalloc' => 'Schlüssel-Wert-Zuordnung'
  599. );
  600. foreach ($formats as $key => $f) {
  601. if ($key === $defaults['format'])
  602. $ch = ' selected="selected"';
  603. else
  604. $ch = '';
  605. ?>
  606. <option value="<?=$key; ?>"<?=$ch?>><?=htmlspecialchars($f, ENT_NOQUOTES); ?></option>
  607. <?php } ?>
  608. </select> <br>
  609. <strong>Daten:</strong><br>
  610. <div id="manual">
  611. <table cellpadding="6">
  612. <?php
  613. $i = 1;
  614. if (!$_POST)
  615. $keys = get('bundeslaender');
  616. foreach ($keys as $key => $bl) {
  617. ?>
  618. <tr>
  619. <td><?=htmlspecialchars($bl, ENT_NOQUOTES); ?>:</td>
  620. <td><input type="text" name="manual<?=$key; ?>" value="<?=$defaults['manual'.($i++)]; ?>"></td>
  621. </tr>
  622. <?php } ?>
  623. </table>
  624. </div>
  625. <textarea name="data" rows="5" id="data_list"></textarea>
  626. <div id="list">
  627. Trennzeichen zwischen Datensätzen: (\n für Zeilenumbruch, \\ für Backslash)
  628. <input type="text" name="list_delim" value="<?=$defaults['list_delim']; ?>" size="1" style="float:right; height:15px">
  629. </div>
  630. <div id="kvalloc">
  631. Erstes Trennzeichen (zw. Schlüssel-Wert-Elementen) (\n für Zeilenumbruch, \\ für Backslash)
  632. <input type="text" name="kvalloc_delim1" value="<?=$defaults['kvalloc_delim1']; ?>" size="1" style="float:right; height: 15px"> <br>
  633. Zweites Trennzeichen (zw. Schlüssel und Wert)
  634. <input type="text" name="kvalloc_delim2" value="<?=$defaults['kvalloc_delim2']; ?>" size="1" style="float:right; height: 15px">
  635. </div>
  636. </td>
  637. </tr>
  638. <tr>
  639. <td>&nbsp;</td>
  640. <td><input type="submit" id="submit" value="Erstellen"></td>
  641. </tr>
  642. </table>
  643. </form>
  644. </div>
  645. <div class="cleared"></div>
  646. </div>
  647. <div class="cleared"></div>
  648. </div>
  649. </div>
  650. <div class="cleared"></div>
  651. </div>
  652. </div>
  653. <div class="cleared"></div>
  654. <div class="art-footer">
  655. <div class="art-footer-t"></div>
  656. <div class="art-footer-l"></div>
  657. <div class="art-footer-b"></div>
  658. <div class="art-footer-r"></div>
  659. <div class="art-footer-body">
  660. <div class="art-footer-text">
  661. <p><div style="float:left;"><a href="http://www.open3.at" target="_blank" title="Webseite open3.at aufrufen"><img src="http://www.datenlandkarten.at/wp-content/uploads/open3logo.png" width="177" height="33"></a></div>
  662. <div style="float:right;text-align:right;"><a href="http://www.opendefinition.org/okd/deutsch/" target="_blank" title="Definition "Offenes Wissen" auf http://opendefinition.org/ anzeigen"><img src="http://www.datenlandkarten.at/wp-content/uploads/badge-od.png" width="80" height="15"> <img src="http://www.datenlandkarten.at/wp-content/uploads/badge-ok.png" width="80" height="15"> <img src="http://www.datenlandkarten.at/wp-content/uploads/badge-oc.png" width="80" height="15"></a><br/>
  663. <a href="/impressum" style="text-decoration:none;" title="Impressum anzeigen">Ein Projekt von open3, dem Netzwerk zur Förderung von openSociety, openGovernment und OpenData</a></p></div> </div>
  664. <div class="cleared"></div>
  665. </div>
  666. </div>
  667. <div class="cleared"></div>
  668. </div>
  669. </div>
  670. <div class="cleared"></div>
  671. <p class="art-page-footer"></p>
  672. </div>
  673. <div id="wp-footer">
  674. </div>
  675. </body>
  676. </html>