--- /dev/null
+Deny from all
--- /dev/null
+<?php
+// Get form helper instance
+$helperInstance = ObjectFactory::createObjectByConfiguredName('html_form_helper_class', array($this, 'city_map'));
+
+// Prefetch user instance
+$helperInstance->prefetchValueInstance('user');
+
+// Get manager instance
+$managerInstance = ManagerFactory::createManagerByType('city');
+
+// Now set the extra instance
+$helperInstance->setExtraInstance($managerInstance);
+
+// Get user instance
+$userInstance = Registry::getRegistry()->getInstance('user');
+
+// Is a city already founded?
+if ($userInstance->isGuest()) {
+ // Guests are not allowed to found cities
+ $helperInstance->addFormNote('guest', "Du musst dich beim Spiel {?app_full_name?} anmelden, dann kannst du erst Städte gründen.");
+} elseif (!$managerInstance->isCityAlreadyFounded()) {
+ // No, then generate form:
+ // Add group for city creation (first city only)
+ $helperInstance->addFormGroup('city_create', "Gründe deine erste Stadt.");
+
+ // City name input field
+ $helperInstance->addFormSubGroup('city_name', "Bitte gebe den Namen der Stadt ein.");
+ $helperInstance->addFieldText('city_name', "Dein Stadtname:");
+ $helperInstance->addInputTextField('city_name');
+
+ // CAPTCHA enabled?
+ if ($helperInstance->ifFormSecuredWithCaptcha()) {
+ $helperInstance->addFormGroup('captcha_user', "Die virtuelle Beantragung von Starthilfe ist durch ein CAPTCHA geschützt. Bitte wiederhole den angezeigten Code, damit du die Starthilfe beantragen kannst.");
+ $helperInstance->addCaptcha();
+ } // END - if
+
+ // Final notices
+ $helperInstance->addFormGroup('buttons', "Soll so die Stadt angelegt werden?");
+ $helperInstance->addInputResetButton("Alles nochmal eingeben");
+ $helperInstance->addInputSubmitButton("Stadt anlegen");
+ $helperInstance->addFormNote('more_cities', "Du kannst später auch weitere Städte anlegen, fange aber erstmal klein an.");
+
+ // Flush the finished form
+ $helperInstance->flushContent();
+} else {
+ // Add notice
+ $helperInstance->addFormGroup('city_created', "Deine Stadt {?block_city_name?}:");
+
+ // Assign all data fields
+ $helperInstance->assignField('city_name');
+
+ // A city has already been created, so render it
+ $managerInstance->renderCityMap($helperInstance);
+
+ // Flush the finished form
+ $helperInstance->flushContent();
+}
+
+// [EOC]
+?>
+<div id="government_frame">
+ <div id="government_header">
+ Stadtkarte
+ </div>
+
+ <div id="government_form">
+ {?city_map?}
+ </div>
+</div>
--- /dev/null
+<?php
+// Get form helper instance
+$helperInstance = ObjectFactory::createObjectByConfiguredName('html_form_helper_class', array($this, 'city_government_startup'));
+
+// Prefetch user instance
+$helperInstance->prefetchValueInstance('user');
+
+// Add main form group
+$helperInstance->addFormNote('reality_warning', "WARNUNG: Bitte dieses Formular nicht mit echten Angaben ausfüllen! (Die Profildaten sollte jedoch echt sein.)");
+
+// Add group for personal data
+$helperInstance->addFormGroup('persona_data', "Deine persönliche Daten, die für die Beantragung nötig sind:");
+
+// Display email, surname and family name
+$helperInstance->addFormNote('surname', "Vorname: <span class=\"persona_data\">".$helperInstance->getValueField('surname')."</span>");
+$helperInstance->addFormNote('family', "Nachname: <span class=\"persona_data\">".$helperInstance->getValueField('family')."</span>");
+$helperInstance->addFormNote('email', "Email-Adresse: <span class=\"persona_data\">".$helperInstance->getValueField('email')."</span>");
+$helperInstance->addFormNote('birthday', "Geburtstag: <span class=\"persona_data\">".(int)$helperInstance->getValueField('birth_day').".".(int)$helperInstance->getValueField('birth_month').".".(int)$helperInstance->getValueField('birth_year')."</span>");
+
+// Add link placeholder for profile page
+$helperInstance->addFormNote('profile', "Stimmen die Daten noch? {?city_profile?}");
+
+// Ask again for current account password
+$helperInstance->addFormGroup('password', "Bitte gebe zur Bestätigung dein derzeitiges Passwort ein.");
+$helperInstance->addFieldText('password', "Derzeitiges Passwort:");
+$helperInstance->addInputPasswordField('password');
+
+// CAPTCHA enabled?
+if ($helperInstance->ifFormSecuredWithCaptcha()) {
+ $helperInstance->addFormGroup('captcha_user', "Die virtuelle Beantragung von Starthilfe ist durch ein CAPTCHA geschützt. Bitte wiederhole den angezeigten Code, damit du die Starthilfe beantragen kannst.");
+ $helperInstance->addCaptcha();
+} // END - if
+
+// Final notices
+$helperInstance->addFormGroup('buttons', "Sind alle Daten nun korrekt eingegeben? Dann sende sie mit einem Klick einfach ab!");
+$helperInstance->addInputResetButton("Alles nochmal eingeben");
+$helperInstance->addInputSubmitButton("Starthilfe beantragen");
+$helperInstance->addFormNote('data_protection', "Deine Daten werden nach den gültigen Datenschutzgesetzen gespeichert und werden nicht an Dritte weitergegeben. Weiteres dazu siehe Link "Datenschutz".");
+
+// Flush the finished form
+$helperInstance->flushContent();
+
+// Get link helper for profile link
+$linkInstance = ObjectFactory::createObjectByConfiguredName('html_link_helper_class', array($this, 'city_profile'));
+
+// Add action
+$linkInstance->addActionLinkById('profile', 'profile');
+
+// Flush the finished form
+$linkInstance->flushContent();
+
+// [EOC]
+?>
+<div id="government_frame">
+ <div id="government_header">
+ Virtuelle Beantragung von Starthilfe
+ </div>
+
+ <div id="government_form">
+ {?city_government_startup?}
+ </div>
+</div>
--- /dev/null
+<?php
+// Get form helper instance
+$helperInstance = ObjectFactory::createObjectByConfiguredName('html_form_helper_class', array($this, 'city_government_training'));
+
+// Prefetch user instance
+$helperInstance->prefetchValueInstance('user');
+
+// Add main form group
+$helperInstance->addFormNote('reality_warning', "WARNUNG: Bitte dieses Formular nicht mit echten Angaben ausfüllen!");
+
+// Add group for personal data
+$helperInstance->addFormGroup('persona_data', "Deine persönliche Daten, die für die Kursusteilnahme nötig sind:");
+
+// Ask again for current account password
+$helperInstance->addFormGroup('password', "Bitte gebe zur Bestätigung dein derzeitiges Passwort ein.");
+$helperInstance->addFieldText('password', "Derzeitiges Passwort:");
+$helperInstance->addInputPasswordField('password');
+
+// Display email, surname and family name
+$helperInstance->addFormNote('surname', "Vorname: <span class=\"persona_data\">".$helperInstance->getValueField('surname')."</span>");
+$helperInstance->addFormNote('family', "Nachname: <span class=\"persona_data\">".$helperInstance->getValueField('family')."</span>");
+$helperInstance->addFormNote('email', "Email-Adresse: <span class=\"persona_data\">".$helperInstance->getValueField('email')."</span>");
+$helperInstance->addFormNote('birthday', "Geburtstag: <span class=\"persona_data\">".(int)$helperInstance->getValueField('birth_day').".".(int)$helperInstance->getValueField('birth_month').".".(int)$helperInstance->getValueField('birth_year')."</span>");
+
+// Add link placeholder for profile page
+$helperInstance->addFormNote('profile', "Stimmen die Daten noch? {?city_profile?}");
+
+// CAPTCHA enabled?
+if ($helperInstance->ifFormSecuredWithCaptcha()) {
+ $helperInstance->addFormGroup('captcha_user', "Die virtuelle Beantragung eines Trainingkursus ist durch ein CAPTCHA geschützt. Bitte wiederhole den angezeigten Code, um den Trainingskursus zu beantragen.");
+ $helperInstance->addCaptcha();
+} // END - if
+
+// Final notices
+$helperInstance->addFormGroup('buttons', "Sind alle Daten nun korrekt eingegeben? Dann sende sie mit einem Klick einfach ab!");
+$helperInstance->addInputResetButton("Alles nochmal eingeben");
+$helperInstance->addInputSubmitButton("Trainingskurs beantragen");
+$helperInstance->addFormNote('data_protection', "Deine Daten werden nach den gültigen Datenschutzgesetzen gespeichert und werden nicht an Dritte weitergegeben. Weiteres dazu siehe Link "Datenschutz".");
+
+// Flush the finished form
+$helperInstance->flushContent();
+
+// Get link helper for profile link
+$linkInstance = ObjectFactory::createObjectByConfiguredName('html_link_helper_class', array($this, 'city_profile'));
+
+// Add action
+$linkInstance->addActionLinkById('profile', 'profile');
+
+// Flush the finished form
+$linkInstance->flushContent();
+
+// [EOC]
+?>
+<div id="government_frame">
+ <div id="government_header">
+ Virtuelle Beantragung eines Training-Kursus
+ </div>
+
+ <div id="government_form">
+ {?city_government_training?}
+ </div>
+</div>
--- /dev/null
+<?php
+// Get helper instance
+$helperInstance = ObjectFactory::createObjectByConfiguredName('html_link_helper_class', array($this, 'logout_now'));
+
+// Set link text
+$helperInstance->addLinkWithTextById('logout_now');
+
+// Flush the content
+$helperInstance->flushContent();
+
+// Get helper instance
+$helperInstance = ObjectFactory::createObjectByConfiguredName('html_link_helper_class', array($this, 'return_login'));
+
+// Set link text
+$helperInstance->addLinkWithTextById('return_login');
+
+// Flush the content
+$helperInstance->flushContent();
+
+// [EOC]
+?>
+<div id="logout_box">
+ <div id="logout_header">
+ Willst du dich wirklich aus dem Spiel ausloggen?
+ </div>
+
+ <div id="logouts">
+ {?logout_now?} | {?return_login?}
+ </div>
+</div>
--- /dev/null
+<?php
+// Get helper instance for web forms. This will add the opening form-tag to
+// the helper's render cache which is simply a small variable in the class
+// BaseHelper.
+$helperInstance = ObjectFactory::createObjectByConfiguredName('html_form_helper_class', array($this, "city_profile"));
+
+// Pre-fetch field data with a given registry key
+$helperInstance->prefetchValueInstance('user');
+
+// Password can only be changed when the old one is entered and new one twice!
+$helperInstance->addFormGroup('pass', "Neues Passwort einrichten:");
+$helperInstance->addFormSubGroup('pass', "Bitte gebe zum Ändern deines Passwortes zweimal das gewünschte neue Passwort ein.");
+$helperInstance->addFieldText('pass1', "Neues Passwort:");
+$helperInstance->addInputPasswordField('pass1');
+$helperInstance->addFieldText('pass2', "Neues Passwort, Wiederholung:");
+$helperInstance->addInputPasswordField('pass2');
+
+// Display current email
+$helperInstance->addFormNote('current_email', "Derzeitige Email-Adresse: <span class=\"persona_data\">".$helperInstance->getValueField('email')."</span>");
+
+// Only for changing email address
+if ($helperInstance->ifEmailChangeAllowed()) {
+ $helperInstance->addFormGroup('email', "Änderung deiner Email-Addresse:");
+ $helperInstance->addFormSubGroup('email', "Gebe nur deine Email-Adresse zweimal ein, wenn du diese ändern möchtest!");
+ $helperInstance->addFieldText('email1', "Email-Adresse:");
+ $helperInstance->addInputTextField('email1');
+ $helperInstance->addFieldText('email2', "Wiederholung Email-Adresse:");
+ $helperInstance->addInputTextField('email2');
+
+ if ($helperInstance->ifEmailMustBeUnique()) {
+ $helperInstance->addFormNote('email', "Die von dir eingegebene Email-Adresse darf nur einmal im Spiel verwendet worden sein.");
+ } // END - if
+
+ if ($helperInstance->ifEmailChangeRequireConfirmation()) {
+ $helperInstance->addFormNote('confirm', "Es wird ein Bestätigungslink an deine neue Email-Adresse gesendet. Bitte klicke diesen dann möglichst schnell an.");
+ } // END - if
+} // END - if
+
+// Add form group for user profile
+$helperInstance->addFormGroup('profile', "Hier kannst du deine Profildaten ändern.");
+
+// Persoenliche Daten mit in der Anmeldung abfragen?
+if ($helperInstance->ifRegisterIncludesPersonaData()) {
+ $helperInstance->addFormSubGroup('persona', "Wenn du magst, dann vervollständige deine komplette Adresse mit deinem Namen.");
+ $helperInstance->addFieldText('surname', "Dein Vorname:");
+ $helperInstance->addInputTextFieldWithDefault('surname');
+ $helperInstance->addFieldText('family', "Dein Nachname:");
+ $helperInstance->addInputTextFieldWithDefault('family');
+ $helperInstance->addFieldText('street', "Strasse und Hausnummer:");
+ $helperInstance->addInputTextFieldWithDefault('street');
+ $helperInstance->addFieldText('city', "Wohnort:");
+ $helperInstance->addInputTextFieldWithDefault('city');
+
+ // Include birthday?
+ if ($helperInstance->ifProfileIncludesBirthDay()) {
+ $helperInstance->addFormSubGroup('birthday', "Verrate uns doch dein Geburtsdatum, als Dankeschön erhälst du interessante Prämien - ausschliesslich per Email - zum Geburtstag zugesandt! Gültiges Format: TT.MM.JJJJ");
+ $helperInstance->addInputTextField('birth_day');
+ $helperInstance->addFieldText('birth_day', ".");
+ $helperInstance->addInputTextField('birth_month');
+ $helperInstance->addFieldText('birth_day', ".");
+ $helperInstance->addInputTextField('birth_year');
+ } // END - if
+} // END - if
+
+// Add sub group for zip code
+$helperInstance->addFormSubGroup('zip', "Magst du uns auch deine Postleitzahl verraten?");
+$helperInstance->addFieldText('zip', "Postleitzahl:");
+$helperInstance->addInputTextFieldWithDefault('zip');
+
+// Add sub group for chat protocols
+$helperInstance->addFormSubGroup('chat', "Gebe hier deine Nicknames bzw. Nummern an:");
+
+// Add ICQ chat?
+if ($helperInstance->ifChatEnabled('icq')) {
+ $helperInstance->addFieldText('icq', "ICQ-Nummer:");
+ $helperInstance->addInputTextFieldWithDefault('icq');
+} // END - if
+
+// Add Jabber chat?
+if ($helperInstance->ifChatEnabled('jabber')) {
+ $helperInstance->addFieldText('jabber', "Jabber:");
+ $helperInstance->addInputTextFieldWithDefault('jabber');
+} // END - if
+
+// Add Yahoo! chat?
+if ($helperInstance->ifChatEnabled('yahoo')) {
+ $helperInstance->addFieldText('yahoo', "Yahoo!:");
+ $helperInstance->addInputTextFieldWithDefault('yahoo');
+} // END - if
+
+// Add AOL chat?
+if ($helperInstance->ifChatEnabled('aol')) {
+ $helperInstance->addFieldText('aol', "AOL-Screenname:");
+ $helperInstance->addInputTextFieldWithDefault('aol');
+} // END - if
+
+// Add MSN chat?
+if ($helperInstance->ifChatEnabled('msn')) {
+ $helperInstance->addFieldText('msn', "MSN:");
+ $helperInstance->addInputTextFieldWithDefault('msn');
+} // END - if
+
+if (!$helperInstance->ifRegisterRequiresEmailVerification()) {
+ $helperInstance->addFormExtraNote(1, "Die Benachrichtigungen per Email sind im Loginbereich verfeinerbar, welche du genau haben willst.");
+} // END - if
+
+// Rules already accepted?
+if ($helperInstance->ifRulesHaveChanged()) {
+ $helperInstance->addFormGroup('rules', "Bitte lese dir die Spieleregeln gut durch und kreuze dann "Ja, ich akzeptiere die aktuellen Spielregeln" an.");
+ $helperInstance->addFieldText('rules', "Ja, ich akzeptiere die aktuellen Spielregeln:");
+ $helperInstance->addInputCheckboxField('rules', false);
+} else {
+ $helperInstance->addFormNote('rules_accepted', "Du hast die aktuellen Spielregeln akzeptiert. Vielen Dank!");
+ $helperInstance->addInputHiddenField('rules', "1");
+}
+
+// CAPTCHA enabled?
+if ($helperInstance->ifFormSecuredWithCaptcha()) {
+ $helperInstance->addFormGroup('captcha_user', "Das Ändern von Profildaten ist durch ein CAPTCHA geschützt. Bitte wiederhole den angezeigten Code, damit deine Änderungen gespeichert werden können.");
+ $helperInstance->addCaptcha();
+} // END - if
+
+// Ask again for current account password
+$helperInstance->addFormGroup('pass_old', "Bitte gebe zur Bestätigung der Änderungen dein derzeitiges Passwort ein.");
+$helperInstance->addFieldText('pass_old', "Derzeitiges Passwort:");
+$helperInstance->addInputPasswordField('pass_old');
+
+// Final notices
+$helperInstance->addFormGroup('buttons', "Sind alle Daten nun korrekt eingegeben? Dann sende sie mit einem Klick einfach ab!");
+$helperInstance->addInputResetButton("Alles nochmal eingeben");
+$helperInstance->addInputSubmitButton("Accountdaten aktualisieren");
+$helperInstance->addFormNote('data_protection', "Deine Daten werden nach den gültigen Datenschutzgesetzen gespeichert und werden nicht an Dritte weitergegeben. Weiteres dazu siehe Link "Datenschutz".");
+
+// Flush finished form
+$helperInstance->flushContent();
+
+// [EOC]
+?>
+<div id="content_header">
+ Deine Profildaten bearbeiten
+</div>
+
+<div id="profile_box">
+ {?city_profile?}
+</div>
--- /dev/null
+<?php
+// Get helper instance for web forms. This will add the opening form-tag to
+// the helper's render cache which is simply a small variable in the class
+// BaseHelper.
+$helperInstance = ObjectFactory::createObjectByConfiguredName('html_form_helper_class', array($this, 'resend_link'));
+
+// Pre-fetch field data with a given registry key
+$helperInstance->prefetchValueInstance('user');
+
+// Add submit button or notice
+if ($helperInstance->ifUserAccountUnconfirmed()) {
+ // Add submit button
+ $helperInstance->addInputHiddenFieldWithDefault('email');
+ $helperInstance->addInputSubmitButton("Bestätigungslink erneut aussenden");
+} elseif ($helperInstance->ifUserAccountLocked()) {
+ // Account is locked
+ $helperInstance->addFormNote('status_locked', "Dein Account wurde gesperrt! Grund der Sperre:
+ <span id=\"lock_reason\">".$helperInstance->getValueField('lock_reason')."</span>
+ Bitte melde dich beim Support, damit dieser dir weiterhelfen kann."
+ );
+} elseif ($helperInstance->ifUserAccountGuest()) {
+ // Account is guest account
+ $helperInstance->addFormNote('status_guest', "Gästeaccounts sind in der Funktionalität
+ leicht eingeschränkt. Bitte melde dich an, damit du ein
+ vollwertiges Account bekommst."
+ );
+}
+
+// Flush content and automatically close the form
+$helperInstance->flushContent();
+
+// Build the form for confirmation
+$helperInstance = ObjectFactory::createObjectByConfiguredName('html_form_helper_class', array($this, 'confirm_code'));
+
+// Pre-fetch field data with a given registry key
+$helperInstance->prefetchValueInstance('user');
+
+if ($helperInstance->ifUserAccountUnconfirmed()) {
+ // Add code box
+ $helperInstance->addFormGroup('code', "Bitte gebe hier den Bestätigungscode aus der Willkommensemail ein. Solltest du diese nicht erhalten haben, kannst du dir diesen jetzt zusenden lassen.");
+ $helperInstance->addFieldText('code', "Bestätigungscode aus der Mail:");
+ $helperInstance->addInputTextField('code');
+
+ // Add submit button
+ $helperInstance->addFormGroup('buttons', "Bitte einmal abschicken und das Ergebnis abwarten!");
+ $helperInstance->addInputResetButton("Nochmal eingeben");
+ $helperInstance->addInputSubmitButton("Bestätigungscode absenden");
+} else {
+ // Add message
+ $helperInstance->addFormNote('status_not_unconfirmed', "Möglicherweise hast du einen Bestätigungslink angeklickt, obwohl dein Account bereits freigegeben oder gesperrt ist.");
+}
+
+// Flush content and automatically close the form
+$helperInstance->flushContent();
+
+// [EOC]
+?>
+<div id="content_header">
+ Problem mit deinem Account gefunden:
+</div>
+
+<div id="status_box">
+ Du bist möglicherweise für deine ausgewählte Aktion nicht
+ berechtigt oder du hast noch deine Email-Adresse nicht bestätigt. Du
+ kannst dir nun den Bestätigungslink erneut aussenden lassen, oder den
+ Bestätigungscode unten eingeben.
+
+ <div id="resend_link_box">
+ {?resend_link?}
+ </div>
+
+ <div id="confirm_code_header">
+ Weitere Möglichkeiten:
+ </div>
+
+ <div id="confirm_code_box">
+ {?confirm_code?}
+ </div>
+</div>
--- /dev/null
+<div id="news_frame">
+ {?city_login_news?}
+</div>
--- /dev/null
+<?php
+// Get a helper instance for the profile link (and maybe later more!)
+$helperInstance = ObjectFactory::createObjectByConfiguredName('html_link_helper_class', array($this, 'profile'));
+
+// Prefetch user instance
+$helperInstance->prefetchValueInstance('user');
+
+// Flush the content out
+$helperInstance->flushContent();
+
+// [EOC]
+?>
+<div id="user_name_div" class="block_cell">
+ Spielername: <span id="user_name">{?block_username?}</span>
+</div>
+<div id="user_status_div" class="block_cell">
+ Spielerstatus: <span id="user_status">{?block_user_status?}</span>
+</div>
+<div id="user_points_div" class="block_cell">
+ Kontostand: <span id="user_points">{?block_points?} {?currency?}</span>
+</div>
+<div id="user_profile_div" class="block_cell">
+ {?profile?}
+</div>
+<div id="user_registered_div" class="block_cell">
+ Angemeldet seit: <span id="registered">{?block_registered?}</span>
+</div>
--- /dev/null
+<?php
+// Get a helper instance without a form tag
+$captchaHelper = ObjectFactory::createObjectByConfiguredName('html_form_helper_class', array($this, 'captcha_code', false, false));
+
+// Add input field with text for CAPTCHA code
+$captchaHelper->addFieldText('captcha_code', "Bitte wiederhole den Code:");
+$captchaHelper->addInputTextField('c_code');
+
+// Add hidden field with validation hash
+$captchaHelper->addInputHiddenField('hash', $this->readVariable('captcha_hash'));
+
+// Flush content
+$captchaHelper->flushContent();
+
+// [EOC]
+?>
+<div class="captcha_image">
+ <img src="{?base_url?}/index.php?app={?app_short_name?}&command=code_captcha&encrypt={?encrypted_code?}&request=image"
+ alt="CAPTCHA-Bild" title="CAPTCHA-Bild" class="captcha_img" />
+</div>
+<div class="captcha_code">
+ {?captcha_code?}
+</div>
--- /dev/null
+{?header?}
+
+<div id="master">
+<div id="main_header">
+ {?city_header?}
+</div>
+
+<div id="menu">
+ {?menu?}
+</div>
+
+<div id="advert">
+ {?nav_advert?}
+</div>
+
+<div id="language">
+ {?language_selector?}
+</div>
+
+<div id="main_content">
+ {?main_content?}
+</div>
+
+<div id="main_footer">
+ {?city_footer?}
+</div>
+</div>
+
+{?footer?}
--- /dev/null
+<?php
+// Get helper instance
+$helperInstance = ObjectFactory::createObjectByConfiguredName('html_link_helper_class', array($this, 'direct_login'));
+
+// Set link text
+$helperInstance->addLinkWithTextById('direct_login');
+
+// Flush the content
+$helperInstance->flushContent();
+
+// [EOC]
+?>
+<div id="content_header">
+ Bestätigung Deiner Email-Adresse:
+</div>
+
+<div id="content_body">
+ Hallo <span class="data_username">{?username?}</span>! Du hast heute deine
+ Email-Addresse bestätigt, wodurch alle Spielefunktionen entsperrt
+ worden sind. Viel Spass beim Spielen!
+</div>
+
+<div id="content_footer">
+ {?direct_login?}
+</div>
--- /dev/null
+{?header:title="Problem in application framework detected!"?}
+
+<div id="emergency_message">
+ $content[message]
+</div>
+
+<div id="emergency_backtrace">
+ <div id="backtrace_header">
+ File inclusion backtrace:
+ </div>
+ <div id="backtrace_content">
+ $content[backtrace]
+ </div>
+</div>
+
+<div id="stats_box">
+ <div id="stats_header">
+ Statistics
+ </div>
+ <div id="stats_objects">
+ Total objects: $content[total_objects]
+ </div>
+ <div id="stats_includes">
+ Loaded class files: $content[total_includes]
+ <span class="hint">(Including exception and interfaces.)</span>
+ </div>
+</div>
+
+{?footer_msg:footer_msg="Please contact the support and supply the full above message, if you think you are not qualified to fix this problem."?}
--- /dev/null
+</div> <!-- masterbox //-->
+
+</body>
+</html>
--- /dev/null
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
+<head>
+ <title>
+ {?app_full_name?} - {?title?}
+ </title>
+
+ <meta name="author" content="{?meta_author?}" />
+ <meta name="publisher" content="{?meta_publisher?}" />
+ <meta name="keywords" content="{?meta_keywords?}" />
+ <meta name="robots" content="index,follow" />
+ <meta name="description" content="{?meta_description?}" />
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
+ <meta http-equiv="content-style-type" content="text/css" />
+ <meta http-equiv="content-script-type" content="text/javascript" />
+ <meta http-equiv="language" content="de" />
+ {?header_extras_hook?}
+</head>
+
+<body>
+<div id="masterbox">
--- /dev/null
+<div id="content_header">
+ Willkommen zum <span class="app_name">{?app_full_name?}</span>
+</div>
+
+<div id="news_frame">
+ {?city_news?}
+</div>
+
+<div id="welcome">
+ Hier wird der Gast zum Spiel begrüsst.
+</div>
--- /dev/null
+<?php
+// Get helper instance
+$helperInstance = ObjectFactory::createObjectByConfiguredName('html_link_helper_class', array($this, 'login_retry'));
+
+// Set link text
+$helperInstance->addLinkWithTextById('login_retry');
+
+// Flush the content
+$helperInstance->flushContent();
+
+// [EOC]
+?>
+<div id="content_header">
+ Du bist nicht mehr im Spiel eingeloggt!
+</div>
+
+<div id="content_body">
+ <div id="login_failed_header">
+ Du bist nicht mehr in <span class="app_name">{?app_full_name?}</span> eingeloggt.
+ Dies kann verschiedene Gründe haben:
+ </div>
+
+ <ol id="login_failed_list">
+ <li>Dein Browser nimmt keine Cookies an.</li>
+ <li>Du hast den Loginbereich aus deinen Bookmarks/Favoriten aufgerufen
+ und die Cookies sind gelöscht.</li>
+ <li>Es besteht ein Problem mit dem Server, wofür du meistens nichts
+ kannst. Bitte kontaktiere den Support, falls dieses Problem
+ weiterhin besteht.</li>
+ </ol>
+
+ <div id="login_failed_footer">
+ Wenn du den Support kontaktierst, halte bitte sämtliche relevante
+ Informationen - <span class="important_note">nicht aber dein Passwort</span>
+ - bereit. Du kannst auch einen Screenshot dieser Seite anfertigen und dem
+ Support diesen senden!
+ </div>
+</div>
+
+<div id="content_footer">
+ <div id="login_retry">
+ {?login_retry?}
+ </div>
+
+ Vielen Dank für deine Mitarbeit! :-)
+</div>
--- /dev/null
+<?php
+// Get helper instance for web forms. This will add the opening form-tag to
+// the helper's render cache which is simply a small variable in the class
+// BaseHelper.
+$helperInstance = ObjectFactory::createObjectByConfiguredName('html_form_helper_class', array($this, 'city_user_login'));
+
+// Is the form enabled?
+if ($helperInstance->ifLoginIsEnabled()) {
+ // Form is active
+ $helperInstance->addFormGroup('login', "Gebe hier deine Logindaten ein:");
+
+ // Which login method has been configured?
+ if ($helperInstance->ifLoginWithUsername()) {
+ // Login with user name only
+ $helperInstance->addFormSubGroup('username', "Bitte mit deinem Nickname einloggen.");
+ $helperInstance->addFieldText('username', "Dein Nickname:");
+ $helperInstance->addInputTextField('username');
+ } elseif ($helperInstance->ifLoginWithEmail()) {
+ // Login with email address only
+ $helperInstance->addFormSubGroup('email', "Bitte mit deiner Email-Adresse einloggen.");
+ $helperInstance->addFieldText('email', "Deine Email-Addresse:");
+ $helperInstance->addInputTextField('email');
+ } else {
+ // Login with email address or user name
+ $helperInstance->addFormSubGroup('user_email', "Bitte mit deinem Nickname oder Email-Adresse einloggen.");
+ $helperInstance->addFieldText('user_email', "Dein Nickname/Email:");
+ $helperInstance->addInputTextField('user_email');
+ }
+
+ // Add password input field
+ $helperInstance->addFormSubGroup('pass', "Gebe dein Passwort von der Anmeldung ein.");
+ $helperInstance->addFieldText('pass', "Dein Passwort:");
+ $helperInstance->addInputPasswordField('pass');
+
+ // CAPTCHA enabled?
+ if ($helperInstance->ifFormSecuredWithCaptcha()) {
+ $helperInstance->addFormGroup('captcha_user', "Das Benutzer-Login ist durch ein CAPTCHA geschützt. Bitte wiederhole den angezeigten Code, damit du dich einloggen kannst.");
+ $helperInstance->addCaptcha();
+ } // END - if
+
+ // Submit buttons
+ $helperInstance->addFormGroup('buttons_user', "Alles richtig eingegeben?");
+ $helperInstance->addInputResetButton("Formular leeren");
+ $helperInstance->addInputSubmitButton("Zum Spiel einloggen");
+} else {
+ // Form is inactive
+ $helperInstance->addFormNote('form_deactivated', "Einloggen in's Spiel ist derzeit administrativ deaktiviert worden. Bitte komme später noch mal wieder.");
+ $helperInstance->addFormNote('admin_notice', "Nachricht vom Admin: <span id=\"disabled_reason\">".$this->getConfigInstance()->readConfig('login_disabled_reason')."</span>");
+}
+
+// Formular schliessen
+$helperInstance->flushContent();
+
+// Ist Gastlogin erlaubt?
+if ($helperInstance->ifGuestLoginAllowed()) {
+ // Neue Helper-Instanz holen
+ $helperInstance = ObjectFactory::createObjectByConfiguredName('html_form_helper_class', array($this, 'city_guest_login'));
+ $helperInstance->addInputHiddenConfiguredField('user', 'guest_login');
+ $helperInstance->addInputHiddenConfiguredField('passwd', 'guest_login');
+
+ // CAPTCHA enbaled?
+ if ($helperInstance->ifFormSecuredWithCaptcha()) {
+ $helperInstance->addFormGroup('captcha_guest', "Unser Gast-Login ist durch ein CAPTCHA geschützt. Bitte wiederhole den angezeigten Code, damit du dich einloggen kannst.");
+ $helperInstance->addCaptcha();
+ } // END - if
+
+ // Submit button
+ $helperInstance->addFormGroup('buttons_guest', "Gastlogins sind in der Funkionsweise eingeschränkt. Mehr dazu unter "Gastlogin".");
+ $helperInstance->addInputSubmitButton("Als Gast einloggen");
+ $helperInstance->flushContent();
+}
+
+// Get helper instance
+$helperInstance = ObjectFactory::createObjectByConfiguredName('html_link_helper_class', array($this, 'register'));
+
+// Set link text
+$helperInstance->addLinkWithTextById('register_login');
+
+// Flush the content
+$helperInstance->flushContent();
+
+// [EOC]
+?>
+<div id="content_header">
+ Einloggen zu <span class="app_name">{?app_full_name?}</span>
+</div>
+
+<div id="content_body">
+ <div id="login_box">
+ {?city_user_login?}
+ </div>
+
+ <div id="guest_login">
+ {?city_guest_login?}
+ </div>
+</div>
+
+<div id="content_footer">
+ Noch kein Spieleaccount? {?register?}
+</div>
--- /dev/null
+<?php
+///////////////////////////////
+// Assign personal user data //
+///////////////////////////////
+
+// Get a new instance for personal data
+$blockInstance = ObjectFactory::createObjectByConfiguredName('html_block_helper_class', array($this, 'persona_data'));
+
+// Set the data source instance which must exist in registry
+$blockInstance->prefetchValueInstance('user', 'user_points');
+
+// Assign fields with template variables
+$blockInstance->assignField('username');
+$blockInstance->assignFieldWithFilter('user_status', 'user_status_translator');
+$blockInstance->assignFieldWithFilter('points', 'format_number');
+
+// Shall we include registration date?
+if ($blockInstance->ifIncludeRegistrationStamp()) {
+ // Then assign it as well!
+ $blockInstance->assignFieldWithFilter('registered', 'format_timestamp');
+} // END - if
+
+// Flush the content out to a template variable
+$blockInstance->flushContent();
+
+// Get helper instance
+$linkInstance = ObjectFactory::createObjectByConfiguredName('html_link_helper_class', array($this, 'logout'));
+
+// Add action
+$linkInstance->addActionLinkById('logout', 'logout');
+
+// Flush the content
+$linkInstance->flushContent();
+
+// [EOC]
+?>
+<div id="content_header">
+ Willkommen im Loginbereich von <span class="app_name">{?app_full_name?}</span>!
+</div>
+
+<div id="content_body">
+ {?login_content?}
+</div>
+
+<div id="persona_data" title="Informationen zu Deinem Spieleaccount">
+ <div id="persona_header">
+ Account-Infos:
+ </div>
+
+ <div id="persona_body">
+ {?persona_data?}
+ </div>
+
+ <div id="logout">
+ {?logout?}
+ </div>
+</div>
--- /dev/null
+<?php
+// Get helper instance
+$helperInstance = ObjectFactory::createObjectByConfiguredName('html_link_helper_class', array($this, 'relogin'));
+
+// Set link text
+$helperInstance->addLinkWithTextById('relogin');
+
+// Flush the content
+$helperInstance->flushContent();
+
+// [EOC]
+?>
+<div id="content_header">
+ Du bist jetzt aus dem Spiel ausgeloggt!
+</div>
+
+<div id="content_body">
+ Du kannst dich nun {?relogin?} oder weiter auf unseren Seiten bleiben. ;-)
+</div>
--- /dev/null
+<div class="debug_header">
+ Mail-Debug-Ausgabe:
+</div>
+
+<div class="mail_header">
+ <div class="mail_header_line">
+ <span class="mail_sender">Von:</span> <span class="mail_info">{?sender?}</span>
+ </div>
+ <div class="mail_header_line">
+ <span class="mail_recipient">An:</span> <span class="mail_info">{?recipient?}</span>
+ </div>
+ <div class="mail_header_line">
+ <span class="mail_subject">Betreff:</span> <span class="mail_info">{?subject?}</span>
+ </div>
+</div>
+
+<div class="mail_text_box">
+ <div class="mail_message">
+ Nachricht:
+ </div>
+
+ <div class="mail_content">
+ {?message?}
+ </div>
+</div>
--- /dev/null
+<div id="{?title_id?}" class="{?title_class?}">
+ {?title_text?}
+</div>
+
+<ul>
+{?block_content?}
+</ul>
+
+<div id="{?footer_id?}" class="{?footer_class?}">
+ {?footer_text?}
+</div>
--- /dev/null
+<li id="{?entry_id?}">
+ <a id="{?anchor_id?}" href="{?anchor_href?}" title="{?anchor_title?}">{?anchor_text?}</a>
+</li>
--- /dev/null
+<?php
+// Get helper instance for web forms. This will add the opening form-tag to
+// the helper's render cache which is simply a small variable in the class
+// BaseHelper.
+$helperInstance = ObjectFactory::createObjectByConfiguredName('html_form_helper_class', array($this, 'city_register'));
+
+// Always ask at least for nickname and password
+$helperInstance->addFormGroup('login', "Bitte gebe hier gewünschten Nickname und dein Zugangspasswort ein.");
+$helperInstance->addFormSubGroup('username', "Dein Nickname wird erst nach Absenden des Formulares geprüft. Später bauen wir dann einen automatischen Test ein, der dir sofort zeigt, ob der Nickname bereits vergeben ist.");
+$helperInstance->addFieldText('username', "Nickname im Spiel:");
+$helperInstance->addInputTextField('username');
+$helperInstance->addFormSubGroup('pass', "Dein Passwort sollte nicht zu leicht erratbar sein. Später bauen wir hier noch einen automatischen Test ein, der dir sofort die Passwortstärke anzeigt.");
+$helperInstance->addFieldText('pass1', "Passwort:");
+$helperInstance->addInputPasswordField('pass1');
+$helperInstance->addFieldText('pass2', "Passwortwiederholung:");
+$helperInstance->addInputPasswordField('pass2');
+
+// Does this registration require an email?
+if ($helperInstance->ifRegisterRequiresEmailVerification()) {
+ $helperInstance->addFormGroup('email', "Bitte gebe deine Email zweimal (ein zweites Mal zur Bestätigung) ein, damit wir dir deinen Freischaltlink zusenden können.");
+ $helperInstance->addFieldText('email1', "Email-Adresse:");
+ $helperInstance->addInputTextField('email1');
+ $helperInstance->addFieldText('email2', "Wiederholung Email-Adresse:");
+ $helperInstance->addInputTextField('email2');
+
+ // Must the email address be unique in this system?
+ if ($helperInstance->ifEmailMustBeUnique()) {
+ $helperInstance->addFormNote('email', "Die von dir eingegebene Email-Adresse darf nur einmal im Spiel verwendet worden sein.");
+ } // END - if
+} // END - if
+
+// Shall we also ask some personal data to complete the profile?
+if ($helperInstance->ifRegisterIncludesProfile()) {
+ $helperInstance->addFormGroup('profile', "Hier kannst du zusätzlich deine Profildaten vorweg eingeben, du kannst sie aber auch nach dem Login vervollständigen!");
+
+ if (!$helperInstance->ifRegisterRequiresEmailVerification()) {
+ $helperInstance->addFormSubGroup('email', "Die Angabe deiner Email-Adresse ist nur dann nötig, wenn du auch Email-Benachrichtigungen (<span id=\"add_note\">*1</span>) haben möchtest.");
+ $helperInstance->addFieldText('email1', "Email-Adresse:");
+ $helperInstance->addInputTextField('email1');
+
+ // Must the email address be unique in this system?
+ if ($helperInstance->ifEmailMustBeUnique()) {
+ $helperInstance->addFormNote('email', "Die von dir eingegebene Email-Adresse darf nur einmal im Spiel verwendet worden sein.");
+ } // END - if
+ } // END - if
+
+ // Persoenliche Daten mit in der Anmeldung abfragen?
+ if ($helperInstance->ifRegisterIncludesPersonaData()) {
+ $helperInstance->addFormSubGroup('persona', "Wenn du magst, dann vervollständige deine komplette Adresse mit deinem Namen.");
+ $helperInstance->addFieldText('surname', "Dein Vorname:");
+ $helperInstance->addInputTextField('surname');
+ $helperInstance->addFieldText('family', "Dein Nachname:");
+ $helperInstance->addInputTextField('family');
+ $helperInstance->addFieldText('street', "Strasse und Hausnummer:");
+ $helperInstance->addInputTextField('street');
+ $helperInstance->addFieldText('city', "Wohnort:");
+ $helperInstance->addInputTextField('city');
+
+ // Include birthday?
+ if ($helperInstance->ifProfileIncludesBirthDay()) {
+ $helperInstance->addFormSubGroup('birthday', "Verrate uns doch dein Geburtsdatum, als Dankeschön erhälst du interessante Prämien - ausschliesslich per Email - zum Geburtstag zugesandt! Gültiges Format: TT.MM.JJJJ");
+ $helperInstance->addInputTextField('birth_day');
+ $helperInstance->addFieldText('birth_day', ".");
+ $helperInstance->addInputTextField('birth_month');
+ $helperInstance->addFieldText('birth_day', ".");
+ $helperInstance->addInputTextField('birth_year');
+ } // END - if
+ } // END - if
+
+ $helperInstance->addFormSubGroup('zip', "Magst du uns auch deine Postleitzahl verraten?");
+ $helperInstance->addFieldText('zip', "Postleitzahl:");
+ $helperInstance->addInputTextField('zip');
+
+ $helperInstance->addFormSubGroup('chat', "Gebe hier deine Nicknames bzw. Nummern an:");
+
+ if ($helperInstance->ifChatEnabled('icq')) {
+ $helperInstance->addFieldText('icq', "ICQ-Nummer:");
+ $helperInstance->addInputTextField('icq');
+ } // END - if
+
+ if ($helperInstance->ifChatEnabled('jabber')) {
+ $helperInstance->addFieldText('jabber', "Jabber:");
+ $helperInstance->addInputTextField('jabber');
+ } // END - if
+
+ if ($helperInstance->ifChatEnabled('yahoo')) {
+ $helperInstance->addFieldText('yahoo', "Yahoo!:");
+ $helperInstance->addInputTextField('yahoo');
+ } // END - if
+
+ if ($helperInstance->ifChatEnabled('aol')) {
+ $helperInstance->addFieldText('aol', "AOL-Screenname:");
+ $helperInstance->addInputTextField('aol');
+ } // END - if
+
+ if ($helperInstance->ifChatEnabled('msn')) {
+ $helperInstance->addFieldText('msn', "MSN:");
+ $helperInstance->addInputTextField('msn');
+ } // END - if
+
+ if (!$helperInstance->ifRegisterRequiresEmailVerification()) {
+ $helperInstance->addFormExtraNote(1, "Die Benachrichtigungen per sind im Loginbereich verfeinerbar, welche du genau haben willst.");
+ } // END - Extra note
+
+} // END - ask profile data
+
+// Spielregeln abfragen
+$helperInstance->addFormGroup('rules', "Bitte lese dir die Spieleregeln gut durch und kreuze dann "Ja, ich akzeptiere die aktuellen Spielregeln" an.");
+$helperInstance->addFieldText('rules', "Ja, ich akzeptiere die aktuellen Spielregeln:");
+$helperInstance->addInputCheckboxField('rules', false);
+
+// Add CAPTCHA?
+if ($helperInstance->ifFormSecuredWithCaptcha()) {
+ $helperInstance->addFormGroup('captcha', "Bitte wiederhole den angezeigten Code damit die Anmeldung abgeschlossen werden kann.");
+ $helperInstance->addCaptcha();
+} // END - if
+
+// Final note and submit buttons
+$helperInstance->addFormGroup('buttons', "Wenn du alle benötigten Felder korrekt ausgefüt hast, kannst du die Anmeldung abschliessen.");
+
+$helperInstance->addInputResetButton("Alles nochmal eingeben");
+$helperInstance->addInputSubmitButton("Anmeldung zum Spiel abschliessen");
+$helperInstance->addFormNote('data_protection', "Deine Daten werden nach den gültigen Datenschutzgesetzen gespeichert und werden nicht an Dritte weitergegeben. Weiteres dazu siehe Link "Datenschutz".");
+$helperInstance->flushContent();
+
+// [EOC]
+?>
+<div id="content_header">
+ Anmeldung bei <span class="app_name">{?app_full_name?}</span>
+</div>
+
+<div id="register_box">
+ {?city_register?}
+</div>
+++ /dev/null
-Deny from all
+++ /dev/null
-Deny from all
+++ /dev/null
-<?php
-// Get form helper instance
-$helperInstance = ObjectFactory::createObjectByConfiguredName('html_form_helper_class', array($this, 'city_map'));
-
-// Prefetch user instance
-$helperInstance->prefetchValueInstance('user');
-
-// Get manager instance
-$managerInstance = ManagerFactory::createManagerByType('city');
-
-// Now set the extra instance
-$helperInstance->setExtraInstance($managerInstance);
-
-// Get user instance
-$userInstance = Registry::getRegistry()->getInstance('user');
-
-// Is a city already founded?
-if ($userInstance->isGuest()) {
- // Guests are not allowed to found cities
- $helperInstance->addFormNote('guest', "Du musst dich beim Spiel {?app_full_name?} anmelden, dann kannst du erst Städte gründen.");
-} elseif (!$managerInstance->isCityAlreadyFounded()) {
- // No, then generate form:
- // Add group for city creation (first city only)
- $helperInstance->addFormGroup('city_create', "Gründe deine erste Stadt.");
-
- // City name input field
- $helperInstance->addFormSubGroup('city_name', "Bitte gebe den Namen der Stadt ein.");
- $helperInstance->addFieldText('city_name', "Dein Stadtname:");
- $helperInstance->addInputTextField('city_name');
-
- // CAPTCHA enabled?
- if ($helperInstance->ifFormSecuredWithCaptcha()) {
- $helperInstance->addFormGroup('captcha_user', "Die virtuelle Beantragung von Starthilfe ist durch ein CAPTCHA geschützt. Bitte wiederhole den angezeigten Code, damit du die Starthilfe beantragen kannst.");
- $helperInstance->addCaptcha();
- } // END - if
-
- // Final notices
- $helperInstance->addFormGroup('buttons', "Soll so die Stadt angelegt werden?");
- $helperInstance->addInputResetButton("Alles nochmal eingeben");
- $helperInstance->addInputSubmitButton("Stadt anlegen");
- $helperInstance->addFormNote('more_cities', "Du kannst später auch weitere Städte anlegen, fange aber erstmal klein an.");
-
- // Flush the finished form
- $helperInstance->flushContent();
-} else {
- // Add notice
- $helperInstance->addFormGroup('city_created', "Deine Stadt {?block_city_name?}:");
-
- // Assign all data fields
- $helperInstance->assignField('city_name');
-
- // A city has already been created, so render it
- $managerInstance->renderCityMap($helperInstance);
-
- // Flush the finished form
- $helperInstance->flushContent();
-}
-
-// [EOC]
-?>
-<div id="government_frame">
- <div id="government_header">
- Stadtkarte
- </div>
-
- <div id="government_form">
- {?city_map?}
- </div>
-</div>
+++ /dev/null
-<?php
-// Get form helper instance
-$helperInstance = ObjectFactory::createObjectByConfiguredName('html_form_helper_class', array($this, 'city_government_startup'));
-
-// Prefetch user instance
-$helperInstance->prefetchValueInstance('user');
-
-// Add main form group
-$helperInstance->addFormNote('reality_warning', "WARNUNG: Bitte dieses Formular nicht mit echten Angaben ausfüllen! (Die Profildaten sollte jedoch echt sein.)");
-
-// Add group for personal data
-$helperInstance->addFormGroup('persona_data', "Deine persönliche Daten, die für die Beantragung nötig sind:");
-
-// Display email, surname and family name
-$helperInstance->addFormNote('surname', "Vorname: <span class=\"persona_data\">".$helperInstance->getValueField('surname')."</span>");
-$helperInstance->addFormNote('family', "Nachname: <span class=\"persona_data\">".$helperInstance->getValueField('family')."</span>");
-$helperInstance->addFormNote('email', "Email-Adresse: <span class=\"persona_data\">".$helperInstance->getValueField('email')."</span>");
-$helperInstance->addFormNote('birthday', "Geburtstag: <span class=\"persona_data\">".(int)$helperInstance->getValueField('birth_day').".".(int)$helperInstance->getValueField('birth_month').".".(int)$helperInstance->getValueField('birth_year')."</span>");
-
-// Add link placeholder for profile page
-$helperInstance->addFormNote('profile', "Stimmen die Daten noch? {?city_profile?}");
-
-// Ask again for current account password
-$helperInstance->addFormGroup('password', "Bitte gebe zur Bestätigung dein derzeitiges Passwort ein.");
-$helperInstance->addFieldText('password', "Derzeitiges Passwort:");
-$helperInstance->addInputPasswordField('password');
-
-// CAPTCHA enabled?
-if ($helperInstance->ifFormSecuredWithCaptcha()) {
- $helperInstance->addFormGroup('captcha_user', "Die virtuelle Beantragung von Starthilfe ist durch ein CAPTCHA geschützt. Bitte wiederhole den angezeigten Code, damit du die Starthilfe beantragen kannst.");
- $helperInstance->addCaptcha();
-} // END - if
-
-// Final notices
-$helperInstance->addFormGroup('buttons', "Sind alle Daten nun korrekt eingegeben? Dann sende sie mit einem Klick einfach ab!");
-$helperInstance->addInputResetButton("Alles nochmal eingeben");
-$helperInstance->addInputSubmitButton("Starthilfe beantragen");
-$helperInstance->addFormNote('data_protection', "Deine Daten werden nach den gültigen Datenschutzgesetzen gespeichert und werden nicht an Dritte weitergegeben. Weiteres dazu siehe Link "Datenschutz".");
-
-// Flush the finished form
-$helperInstance->flushContent();
-
-// Get link helper for profile link
-$linkInstance = ObjectFactory::createObjectByConfiguredName('html_link_helper_class', array($this, 'city_profile'));
-
-// Add action
-$linkInstance->addActionLinkById('profile', 'profile');
-
-// Flush the finished form
-$linkInstance->flushContent();
-
-// [EOC]
-?>
-<div id="government_frame">
- <div id="government_header">
- Virtuelle Beantragung von Starthilfe
- </div>
-
- <div id="government_form">
- {?city_government_startup?}
- </div>
-</div>
+++ /dev/null
-<?php
-// Get form helper instance
-$helperInstance = ObjectFactory::createObjectByConfiguredName('html_form_helper_class', array($this, 'city_government_training'));
-
-// Prefetch user instance
-$helperInstance->prefetchValueInstance('user');
-
-// Add main form group
-$helperInstance->addFormNote('reality_warning', "WARNUNG: Bitte dieses Formular nicht mit echten Angaben ausfüllen!");
-
-// Add group for personal data
-$helperInstance->addFormGroup('persona_data', "Deine persönliche Daten, die für die Kursusteilnahme nötig sind:");
-
-// Ask again for current account password
-$helperInstance->addFormGroup('password', "Bitte gebe zur Bestätigung dein derzeitiges Passwort ein.");
-$helperInstance->addFieldText('password', "Derzeitiges Passwort:");
-$helperInstance->addInputPasswordField('password');
-
-// Display email, surname and family name
-$helperInstance->addFormNote('surname', "Vorname: <span class=\"persona_data\">".$helperInstance->getValueField('surname')."</span>");
-$helperInstance->addFormNote('family', "Nachname: <span class=\"persona_data\">".$helperInstance->getValueField('family')."</span>");
-$helperInstance->addFormNote('email', "Email-Adresse: <span class=\"persona_data\">".$helperInstance->getValueField('email')."</span>");
-$helperInstance->addFormNote('birthday', "Geburtstag: <span class=\"persona_data\">".(int)$helperInstance->getValueField('birth_day').".".(int)$helperInstance->getValueField('birth_month').".".(int)$helperInstance->getValueField('birth_year')."</span>");
-
-// Add link placeholder for profile page
-$helperInstance->addFormNote('profile', "Stimmen die Daten noch? {?city_profile?}");
-
-// CAPTCHA enabled?
-if ($helperInstance->ifFormSecuredWithCaptcha()) {
- $helperInstance->addFormGroup('captcha_user', "Die virtuelle Beantragung eines Trainingkursus ist durch ein CAPTCHA geschützt. Bitte wiederhole den angezeigten Code, um den Trainingskursus zu beantragen.");
- $helperInstance->addCaptcha();
-} // END - if
-
-// Final notices
-$helperInstance->addFormGroup('buttons', "Sind alle Daten nun korrekt eingegeben? Dann sende sie mit einem Klick einfach ab!");
-$helperInstance->addInputResetButton("Alles nochmal eingeben");
-$helperInstance->addInputSubmitButton("Trainingskurs beantragen");
-$helperInstance->addFormNote('data_protection', "Deine Daten werden nach den gültigen Datenschutzgesetzen gespeichert und werden nicht an Dritte weitergegeben. Weiteres dazu siehe Link "Datenschutz".");
-
-// Flush the finished form
-$helperInstance->flushContent();
-
-// Get link helper for profile link
-$linkInstance = ObjectFactory::createObjectByConfiguredName('html_link_helper_class', array($this, 'city_profile'));
-
-// Add action
-$linkInstance->addActionLinkById('profile', 'profile');
-
-// Flush the finished form
-$linkInstance->flushContent();
-
-// [EOC]
-?>
-<div id="government_frame">
- <div id="government_header">
- Virtuelle Beantragung eines Training-Kursus
- </div>
-
- <div id="government_form">
- {?city_government_training?}
- </div>
-</div>
+++ /dev/null
-<?php
-// Get helper instance
-$helperInstance = ObjectFactory::createObjectByConfiguredName('html_link_helper_class', array($this, 'logout_now'));
-
-// Set link text
-$helperInstance->addLinkWithTextById('logout_now');
-
-// Flush the content
-$helperInstance->flushContent();
-
-// Get helper instance
-$helperInstance = ObjectFactory::createObjectByConfiguredName('html_link_helper_class', array($this, 'return_login'));
-
-// Set link text
-$helperInstance->addLinkWithTextById('return_login');
-
-// Flush the content
-$helperInstance->flushContent();
-
-// [EOC]
-?>
-<div id="logout_box">
- <div id="logout_header">
- Willst du dich wirklich aus dem Spiel ausloggen?
- </div>
-
- <div id="logouts">
- {?logout_now?} | {?return_login?}
- </div>
-</div>
+++ /dev/null
-<?php
-// Get helper instance for web forms. This will add the opening form-tag to
-// the helper's render cache which is simply a small variable in the class
-// BaseHelper.
-$helperInstance = ObjectFactory::createObjectByConfiguredName('html_form_helper_class', array($this, "city_profile"));
-
-// Pre-fetch field data with a given registry key
-$helperInstance->prefetchValueInstance('user');
-
-// Password can only be changed when the old one is entered and new one twice!
-$helperInstance->addFormGroup('pass', "Neues Passwort einrichten:");
-$helperInstance->addFormSubGroup('pass', "Bitte gebe zum Ändern deines Passwortes zweimal das gewünschte neue Passwort ein.");
-$helperInstance->addFieldText('pass1', "Neues Passwort:");
-$helperInstance->addInputPasswordField('pass1');
-$helperInstance->addFieldText('pass2', "Neues Passwort, Wiederholung:");
-$helperInstance->addInputPasswordField('pass2');
-
-// Display current email
-$helperInstance->addFormNote('current_email', "Derzeitige Email-Adresse: <span class=\"persona_data\">".$helperInstance->getValueField('email')."</span>");
-
-// Only for changing email address
-if ($helperInstance->ifEmailChangeAllowed()) {
- $helperInstance->addFormGroup('email', "Änderung deiner Email-Addresse:");
- $helperInstance->addFormSubGroup('email', "Gebe nur deine Email-Adresse zweimal ein, wenn du diese ändern möchtest!");
- $helperInstance->addFieldText('email1', "Email-Adresse:");
- $helperInstance->addInputTextField('email1');
- $helperInstance->addFieldText('email2', "Wiederholung Email-Adresse:");
- $helperInstance->addInputTextField('email2');
-
- if ($helperInstance->ifEmailMustBeUnique()) {
- $helperInstance->addFormNote('email', "Die von dir eingegebene Email-Adresse darf nur einmal im Spiel verwendet worden sein.");
- } // END - if
-
- if ($helperInstance->ifEmailChangeRequireConfirmation()) {
- $helperInstance->addFormNote('confirm', "Es wird ein Bestätigungslink an deine neue Email-Adresse gesendet. Bitte klicke diesen dann möglichst schnell an.");
- } // END - if
-} // END - if
-
-// Add form group for user profile
-$helperInstance->addFormGroup('profile', "Hier kannst du deine Profildaten ändern.");
-
-// Persoenliche Daten mit in der Anmeldung abfragen?
-if ($helperInstance->ifRegisterIncludesPersonaData()) {
- $helperInstance->addFormSubGroup('persona', "Wenn du magst, dann vervollständige deine komplette Adresse mit deinem Namen.");
- $helperInstance->addFieldText('surname', "Dein Vorname:");
- $helperInstance->addInputTextFieldWithDefault('surname');
- $helperInstance->addFieldText('family', "Dein Nachname:");
- $helperInstance->addInputTextFieldWithDefault('family');
- $helperInstance->addFieldText('street', "Strasse und Hausnummer:");
- $helperInstance->addInputTextFieldWithDefault('street');
- $helperInstance->addFieldText('city', "Wohnort:");
- $helperInstance->addInputTextFieldWithDefault('city');
-
- // Include birthday?
- if ($helperInstance->ifProfileIncludesBirthDay()) {
- $helperInstance->addFormSubGroup('birthday', "Verrate uns doch dein Geburtsdatum, als Dankeschön erhälst du interessante Prämien - ausschliesslich per Email - zum Geburtstag zugesandt! Gültiges Format: TT.MM.JJJJ");
- $helperInstance->addInputTextField('birth_day');
- $helperInstance->addFieldText('birth_day', ".");
- $helperInstance->addInputTextField('birth_month');
- $helperInstance->addFieldText('birth_day', ".");
- $helperInstance->addInputTextField('birth_year');
- } // END - if
-} // END - if
-
-// Add sub group for zip code
-$helperInstance->addFormSubGroup('zip', "Magst du uns auch deine Postleitzahl verraten?");
-$helperInstance->addFieldText('zip', "Postleitzahl:");
-$helperInstance->addInputTextFieldWithDefault('zip');
-
-// Add sub group for chat protocols
-$helperInstance->addFormSubGroup('chat', "Gebe hier deine Nicknames bzw. Nummern an:");
-
-// Add ICQ chat?
-if ($helperInstance->ifChatEnabled('icq')) {
- $helperInstance->addFieldText('icq', "ICQ-Nummer:");
- $helperInstance->addInputTextFieldWithDefault('icq');
-} // END - if
-
-// Add Jabber chat?
-if ($helperInstance->ifChatEnabled('jabber')) {
- $helperInstance->addFieldText('jabber', "Jabber:");
- $helperInstance->addInputTextFieldWithDefault('jabber');
-} // END - if
-
-// Add Yahoo! chat?
-if ($helperInstance->ifChatEnabled('yahoo')) {
- $helperInstance->addFieldText('yahoo', "Yahoo!:");
- $helperInstance->addInputTextFieldWithDefault('yahoo');
-} // END - if
-
-// Add AOL chat?
-if ($helperInstance->ifChatEnabled('aol')) {
- $helperInstance->addFieldText('aol', "AOL-Screenname:");
- $helperInstance->addInputTextFieldWithDefault('aol');
-} // END - if
-
-// Add MSN chat?
-if ($helperInstance->ifChatEnabled('msn')) {
- $helperInstance->addFieldText('msn', "MSN:");
- $helperInstance->addInputTextFieldWithDefault('msn');
-} // END - if
-
-if (!$helperInstance->ifRegisterRequiresEmailVerification()) {
- $helperInstance->addFormExtraNote(1, "Die Benachrichtigungen per Email sind im Loginbereich verfeinerbar, welche du genau haben willst.");
-} // END - if
-
-// Rules already accepted?
-if ($helperInstance->ifRulesHaveChanged()) {
- $helperInstance->addFormGroup('rules', "Bitte lese dir die Spieleregeln gut durch und kreuze dann "Ja, ich akzeptiere die aktuellen Spielregeln" an.");
- $helperInstance->addFieldText('rules', "Ja, ich akzeptiere die aktuellen Spielregeln:");
- $helperInstance->addInputCheckboxField('rules', false);
-} else {
- $helperInstance->addFormNote('rules_accepted', "Du hast die aktuellen Spielregeln akzeptiert. Vielen Dank!");
- $helperInstance->addInputHiddenField('rules', "1");
-}
-
-// CAPTCHA enabled?
-if ($helperInstance->ifFormSecuredWithCaptcha()) {
- $helperInstance->addFormGroup('captcha_user', "Das Ändern von Profildaten ist durch ein CAPTCHA geschützt. Bitte wiederhole den angezeigten Code, damit deine Änderungen gespeichert werden können.");
- $helperInstance->addCaptcha();
-} // END - if
-
-// Ask again for current account password
-$helperInstance->addFormGroup('pass_old', "Bitte gebe zur Bestätigung der Änderungen dein derzeitiges Passwort ein.");
-$helperInstance->addFieldText('pass_old', "Derzeitiges Passwort:");
-$helperInstance->addInputPasswordField('pass_old');
-
-// Final notices
-$helperInstance->addFormGroup('buttons', "Sind alle Daten nun korrekt eingegeben? Dann sende sie mit einem Klick einfach ab!");
-$helperInstance->addInputResetButton("Alles nochmal eingeben");
-$helperInstance->addInputSubmitButton("Accountdaten aktualisieren");
-$helperInstance->addFormNote('data_protection', "Deine Daten werden nach den gültigen Datenschutzgesetzen gespeichert und werden nicht an Dritte weitergegeben. Weiteres dazu siehe Link "Datenschutz".");
-
-// Flush finished form
-$helperInstance->flushContent();
-
-// [EOC]
-?>
-<div id="content_header">
- Deine Profildaten bearbeiten
-</div>
-
-<div id="profile_box">
- {?city_profile?}
-</div>
+++ /dev/null
-<?php
-// Get helper instance for web forms. This will add the opening form-tag to
-// the helper's render cache which is simply a small variable in the class
-// BaseHelper.
-$helperInstance = ObjectFactory::createObjectByConfiguredName('html_form_helper_class', array($this, 'resend_link'));
-
-// Pre-fetch field data with a given registry key
-$helperInstance->prefetchValueInstance('user');
-
-// Add submit button or notice
-if ($helperInstance->ifUserAccountUnconfirmed()) {
- // Add submit button
- $helperInstance->addInputHiddenFieldWithDefault('email');
- $helperInstance->addInputSubmitButton("Bestätigungslink erneut aussenden");
-} elseif ($helperInstance->ifUserAccountLocked()) {
- // Account is locked
- $helperInstance->addFormNote('status_locked', "Dein Account wurde gesperrt! Grund der Sperre:
- <span id=\"lock_reason\">".$helperInstance->getValueField('lock_reason')."</span>
- Bitte melde dich beim Support, damit dieser dir weiterhelfen kann."
- );
-} elseif ($helperInstance->ifUserAccountGuest()) {
- // Account is guest account
- $helperInstance->addFormNote('status_guest', "Gästeaccounts sind in der Funktionalität
- leicht eingeschränkt. Bitte melde dich an, damit du ein
- vollwertiges Account bekommst."
- );
-}
-
-// Flush content and automatically close the form
-$helperInstance->flushContent();
-
-// Build the form for confirmation
-$helperInstance = ObjectFactory::createObjectByConfiguredName('html_form_helper_class', array($this, 'confirm_code'));
-
-// Pre-fetch field data with a given registry key
-$helperInstance->prefetchValueInstance('user');
-
-if ($helperInstance->ifUserAccountUnconfirmed()) {
- // Add code box
- $helperInstance->addFormGroup('code', "Bitte gebe hier den Bestätigungscode aus der Willkommensemail ein. Solltest du diese nicht erhalten haben, kannst du dir diesen jetzt zusenden lassen.");
- $helperInstance->addFieldText('code', "Bestätigungscode aus der Mail:");
- $helperInstance->addInputTextField('code');
-
- // Add submit button
- $helperInstance->addFormGroup('buttons', "Bitte einmal abschicken und das Ergebnis abwarten!");
- $helperInstance->addInputResetButton("Nochmal eingeben");
- $helperInstance->addInputSubmitButton("Bestätigungscode absenden");
-} else {
- // Add message
- $helperInstance->addFormNote('status_not_unconfirmed', "Möglicherweise hast du einen Bestätigungslink angeklickt, obwohl dein Account bereits freigegeben oder gesperrt ist.");
-}
-
-// Flush content and automatically close the form
-$helperInstance->flushContent();
-
-// [EOC]
-?>
-<div id="content_header">
- Problem mit deinem Account gefunden:
-</div>
-
-<div id="status_box">
- Du bist möglicherweise für deine ausgewählte Aktion nicht
- berechtigt oder du hast noch deine Email-Adresse nicht bestätigt. Du
- kannst dir nun den Bestätigungslink erneut aussenden lassen, oder den
- Bestätigungscode unten eingeben.
-
- <div id="resend_link_box">
- {?resend_link?}
- </div>
-
- <div id="confirm_code_header">
- Weitere Möglichkeiten:
- </div>
-
- <div id="confirm_code_box">
- {?confirm_code?}
- </div>
-</div>
+++ /dev/null
-<div id="news_frame">
- {?city_login_news?}
-</div>
+++ /dev/null
-<?php
-// Get a helper instance for the profile link (and maybe later more!)
-$helperInstance = ObjectFactory::createObjectByConfiguredName('html_link_helper_class', array($this, 'profile'));
-
-// Prefetch user instance
-$helperInstance->prefetchValueInstance('user');
-
-// Flush the content out
-$helperInstance->flushContent();
-
-// [EOC]
-?>
-<div id="user_name_div" class="block_cell">
- Spielername: <span id="user_name">{?block_username?}</span>
-</div>
-<div id="user_status_div" class="block_cell">
- Spielerstatus: <span id="user_status">{?block_user_status?}</span>
-</div>
-<div id="user_points_div" class="block_cell">
- Kontostand: <span id="user_points">{?block_points?} {?currency?}</span>
-</div>
-<div id="user_profile_div" class="block_cell">
- {?profile?}
-</div>
-<div id="user_registered_div" class="block_cell">
- Angemeldet seit: <span id="registered">{?block_registered?}</span>
-</div>
+++ /dev/null
-<?php
-// Get a helper instance without a form tag
-$captchaHelper = ObjectFactory::createObjectByConfiguredName('html_form_helper_class', array($this, 'captcha_code', false, false));
-
-// Add input field with text for CAPTCHA code
-$captchaHelper->addFieldText('captcha_code', "Bitte wiederhole den Code:");
-$captchaHelper->addInputTextField('c_code');
-
-// Add hidden field with validation hash
-$captchaHelper->addInputHiddenField('hash', $this->readVariable('captcha_hash'));
-
-// Flush content
-$captchaHelper->flushContent();
-
-// [EOC]
-?>
-<div class="captcha_image">
- <img src="{?base_url?}/index.php?app={?app_short_name?}&command=code_captcha&encrypt={?encrypted_code?}&request=image"
- alt="CAPTCHA-Bild" title="CAPTCHA-Bild" class="captcha_img" />
-</div>
-<div class="captcha_code">
- {?captcha_code?}
-</div>
+++ /dev/null
-{?header?}
-
-<div id="master">
-<div id="main_header">
- {?city_header?}
-</div>
-
-<div id="menu">
- {?menu?}
-</div>
-
-<div id="advert">
- {?nav_advert?}
-</div>
-
-<div id="language">
- {?language_selector?}
-</div>
-
-<div id="main_content">
- {?main_content?}
-</div>
-
-<div id="main_footer">
- {?city_footer?}
-</div>
-</div>
-
-{?footer?}
+++ /dev/null
-<?php
-// Get helper instance
-$helperInstance = ObjectFactory::createObjectByConfiguredName('html_link_helper_class', array($this, 'direct_login'));
-
-// Set link text
-$helperInstance->addLinkWithTextById('direct_login');
-
-// Flush the content
-$helperInstance->flushContent();
-
-// [EOC]
-?>
-<div id="content_header">
- Bestätigung Deiner Email-Adresse:
-</div>
-
-<div id="content_body">
- Hallo <span class="data_username">{?username?}</span>! Du hast heute deine
- Email-Addresse bestätigt, wodurch alle Spielefunktionen entsperrt
- worden sind. Viel Spass beim Spielen!
-</div>
-
-<div id="content_footer">
- {?direct_login?}
-</div>
+++ /dev/null
-{?header:title="Problem in application framework detected!"?}
-
-<div id="emergency_message">
- $content[message]
-</div>
-
-<div id="emergency_backtrace">
- <div id="backtrace_header">
- File inclusion backtrace:
- </div>
- <div id="backtrace_content">
- $content[backtrace]
- </div>
-</div>
-
-<div id="stats_box">
- <div id="stats_header">
- Statistics
- </div>
- <div id="stats_objects">
- Total objects: $content[total_objects]
- </div>
- <div id="stats_includes">
- Loaded class files: $content[total_includes]
- <span class="hint">(Including exception and interfaces.)</span>
- </div>
-</div>
-
-{?footer_msg:footer_msg="Please contact the support and supply the full above message, if you think you are not qualified to fix this problem."?}
+++ /dev/null
-</div> <!-- masterbox //-->
-
-</body>
-</html>
+++ /dev/null
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
-<head>
- <title>
- {?app_full_name?} - {?title?}
- </title>
-
- <meta name="author" content="{?meta_author?}" />
- <meta name="publisher" content="{?meta_publisher?}" />
- <meta name="keywords" content="{?meta_keywords?}" />
- <meta name="robots" content="index,follow" />
- <meta name="description" content="{?meta_description?}" />
- <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
- <meta http-equiv="content-style-type" content="text/css" />
- <meta http-equiv="content-script-type" content="text/javascript" />
- <meta http-equiv="language" content="de" />
- {?header_extras_hook?}
-</head>
-
-<body>
-<div id="masterbox">
+++ /dev/null
-<div id="content_header">
- Willkommen zum <span class="app_name">{?app_full_name?}</span>
-</div>
-
-<div id="news_frame">
- {?city_news?}
-</div>
-
-<div id="welcome">
- Hier wird der Gast zum Spiel begrüsst.
-</div>
+++ /dev/null
-<?php
-// Get helper instance
-$helperInstance = ObjectFactory::createObjectByConfiguredName('html_link_helper_class', array($this, 'login_retry'));
-
-// Set link text
-$helperInstance->addLinkWithTextById('login_retry');
-
-// Flush the content
-$helperInstance->flushContent();
-
-// [EOC]
-?>
-<div id="content_header">
- Du bist nicht mehr im Spiel eingeloggt!
-</div>
-
-<div id="content_body">
- <div id="login_failed_header">
- Du bist nicht mehr in <span class="app_name">{?app_full_name?}</span> eingeloggt.
- Dies kann verschiedene Gründe haben:
- </div>
-
- <ol id="login_failed_list">
- <li>Dein Browser nimmt keine Cookies an.</li>
- <li>Du hast den Loginbereich aus deinen Bookmarks/Favoriten aufgerufen
- und die Cookies sind gelöscht.</li>
- <li>Es besteht ein Problem mit dem Server, wofür du meistens nichts
- kannst. Bitte kontaktiere den Support, falls dieses Problem
- weiterhin besteht.</li>
- </ol>
-
- <div id="login_failed_footer">
- Wenn du den Support kontaktierst, halte bitte sämtliche relevante
- Informationen - <span class="important_note">nicht aber dein Passwort</span>
- - bereit. Du kannst auch einen Screenshot dieser Seite anfertigen und dem
- Support diesen senden!
- </div>
-</div>
-
-<div id="content_footer">
- <div id="login_retry">
- {?login_retry?}
- </div>
-
- Vielen Dank für deine Mitarbeit! :-)
-</div>
+++ /dev/null
-<?php
-// Get helper instance for web forms. This will add the opening form-tag to
-// the helper's render cache which is simply a small variable in the class
-// BaseHelper.
-$helperInstance = ObjectFactory::createObjectByConfiguredName('html_form_helper_class', array($this, 'city_user_login'));
-
-// Is the form enabled?
-if ($helperInstance->ifLoginIsEnabled()) {
- // Form is active
- $helperInstance->addFormGroup('login', "Gebe hier deine Logindaten ein:");
-
- // Which login method has been configured?
- if ($helperInstance->ifLoginWithUsername()) {
- // Login with user name only
- $helperInstance->addFormSubGroup('username', "Bitte mit deinem Nickname einloggen.");
- $helperInstance->addFieldText('username', "Dein Nickname:");
- $helperInstance->addInputTextField('username');
- } elseif ($helperInstance->ifLoginWithEmail()) {
- // Login with email address only
- $helperInstance->addFormSubGroup('email', "Bitte mit deiner Email-Adresse einloggen.");
- $helperInstance->addFieldText('email', "Deine Email-Addresse:");
- $helperInstance->addInputTextField('email');
- } else {
- // Login with email address or user name
- $helperInstance->addFormSubGroup('user_email', "Bitte mit deinem Nickname oder Email-Adresse einloggen.");
- $helperInstance->addFieldText('user_email', "Dein Nickname/Email:");
- $helperInstance->addInputTextField('user_email');
- }
-
- // Add password input field
- $helperInstance->addFormSubGroup('pass', "Gebe dein Passwort von der Anmeldung ein.");
- $helperInstance->addFieldText('pass', "Dein Passwort:");
- $helperInstance->addInputPasswordField('pass');
-
- // CAPTCHA enabled?
- if ($helperInstance->ifFormSecuredWithCaptcha()) {
- $helperInstance->addFormGroup('captcha_user', "Das Benutzer-Login ist durch ein CAPTCHA geschützt. Bitte wiederhole den angezeigten Code, damit du dich einloggen kannst.");
- $helperInstance->addCaptcha();
- } // END - if
-
- // Submit buttons
- $helperInstance->addFormGroup('buttons_user', "Alles richtig eingegeben?");
- $helperInstance->addInputResetButton("Formular leeren");
- $helperInstance->addInputSubmitButton("Zum Spiel einloggen");
-} else {
- // Form is inactive
- $helperInstance->addFormNote('form_deactivated', "Einloggen in's Spiel ist derzeit administrativ deaktiviert worden. Bitte komme später noch mal wieder.");
- $helperInstance->addFormNote('admin_notice', "Nachricht vom Admin: <span id=\"disabled_reason\">".$this->getConfigInstance()->readConfig('login_disabled_reason')."</span>");
-}
-
-// Formular schliessen
-$helperInstance->flushContent();
-
-// Ist Gastlogin erlaubt?
-if ($helperInstance->ifGuestLoginAllowed()) {
- // Neue Helper-Instanz holen
- $helperInstance = ObjectFactory::createObjectByConfiguredName('html_form_helper_class', array($this, 'city_guest_login'));
- $helperInstance->addInputHiddenConfiguredField('user', 'guest_login');
- $helperInstance->addInputHiddenConfiguredField('passwd', 'guest_login');
-
- // CAPTCHA enbaled?
- if ($helperInstance->ifFormSecuredWithCaptcha()) {
- $helperInstance->addFormGroup('captcha_guest', "Unser Gast-Login ist durch ein CAPTCHA geschützt. Bitte wiederhole den angezeigten Code, damit du dich einloggen kannst.");
- $helperInstance->addCaptcha();
- } // END - if
-
- // Submit button
- $helperInstance->addFormGroup('buttons_guest', "Gastlogins sind in der Funkionsweise eingeschränkt. Mehr dazu unter "Gastlogin".");
- $helperInstance->addInputSubmitButton("Als Gast einloggen");
- $helperInstance->flushContent();
-}
-
-// Get helper instance
-$helperInstance = ObjectFactory::createObjectByConfiguredName('html_link_helper_class', array($this, 'register'));
-
-// Set link text
-$helperInstance->addLinkWithTextById('register_login');
-
-// Flush the content
-$helperInstance->flushContent();
-
-// [EOC]
-?>
-<div id="content_header">
- Einloggen zu <span class="app_name">{?app_full_name?}</span>
-</div>
-
-<div id="content_body">
- <div id="login_box">
- {?city_user_login?}
- </div>
-
- <div id="guest_login">
- {?city_guest_login?}
- </div>
-</div>
-
-<div id="content_footer">
- Noch kein Spieleaccount? {?register?}
-</div>
+++ /dev/null
-<?php
-///////////////////////////////
-// Assign personal user data //
-///////////////////////////////
-
-// Get a new instance for personal data
-$blockInstance = ObjectFactory::createObjectByConfiguredName('html_block_helper_class', array($this, 'persona_data'));
-
-// Set the data source instance which must exist in registry
-$blockInstance->prefetchValueInstance('user', 'user_points');
-
-// Assign fields with template variables
-$blockInstance->assignField('username');
-$blockInstance->assignFieldWithFilter('user_status', 'user_status_translator');
-$blockInstance->assignFieldWithFilter('points', 'format_number');
-
-// Shall we include registration date?
-if ($blockInstance->ifIncludeRegistrationStamp()) {
- // Then assign it as well!
- $blockInstance->assignFieldWithFilter('registered', 'format_timestamp');
-} // END - if
-
-// Flush the content out to a template variable
-$blockInstance->flushContent();
-
-// Get helper instance
-$linkInstance = ObjectFactory::createObjectByConfiguredName('html_link_helper_class', array($this, 'logout'));
-
-// Add action
-$linkInstance->addActionLinkById('logout', 'logout');
-
-// Flush the content
-$linkInstance->flushContent();
-
-// [EOC]
-?>
-<div id="content_header">
- Willkommen im Loginbereich von <span class="app_name">{?app_full_name?}</span>!
-</div>
-
-<div id="content_body">
- {?login_content?}
-</div>
-
-<div id="persona_data" title="Informationen zu Deinem Spieleaccount">
- <div id="persona_header">
- Account-Infos:
- </div>
-
- <div id="persona_body">
- {?persona_data?}
- </div>
-
- <div id="logout">
- {?logout?}
- </div>
-</div>
+++ /dev/null
-<?php
-// Get helper instance
-$helperInstance = ObjectFactory::createObjectByConfiguredName('html_link_helper_class', array($this, 'relogin'));
-
-// Set link text
-$helperInstance->addLinkWithTextById('relogin');
-
-// Flush the content
-$helperInstance->flushContent();
-
-// [EOC]
-?>
-<div id="content_header">
- Du bist jetzt aus dem Spiel ausgeloggt!
-</div>
-
-<div id="content_body">
- Du kannst dich nun {?relogin?} oder weiter auf unseren Seiten bleiben. ;-)
-</div>
+++ /dev/null
-<div class="debug_header">
- Mail-Debug-Ausgabe:
-</div>
-
-<div class="mail_header">
- <div class="mail_header_line">
- <span class="mail_sender">Von:</span> <span class="mail_info">{?sender?}</span>
- </div>
- <div class="mail_header_line">
- <span class="mail_recipient">An:</span> <span class="mail_info">{?recipient?}</span>
- </div>
- <div class="mail_header_line">
- <span class="mail_subject">Betreff:</span> <span class="mail_info">{?subject?}</span>
- </div>
-</div>
-
-<div class="mail_text_box">
- <div class="mail_message">
- Nachricht:
- </div>
-
- <div class="mail_content">
- {?message?}
- </div>
-</div>
+++ /dev/null
-<div id="{?title_id?}" class="{?title_class?}">
- {?title_text?}
-</div>
-
-<ul>
-{?block_content?}
-</ul>
-
-<div id="{?footer_id?}" class="{?footer_class?}">
- {?footer_text?}
-</div>
+++ /dev/null
-<li id="{?entry_id?}">
- <a id="{?anchor_id?}" href="{?anchor_href?}" title="{?anchor_title?}">{?anchor_text?}</a>
-</li>
+++ /dev/null
-<?php
-// Get helper instance for web forms. This will add the opening form-tag to
-// the helper's render cache which is simply a small variable in the class
-// BaseHelper.
-$helperInstance = ObjectFactory::createObjectByConfiguredName('html_form_helper_class', array($this, 'city_register'));
-
-// Always ask at least for nickname and password
-$helperInstance->addFormGroup('login', "Bitte gebe hier gewünschten Nickname und dein Zugangspasswort ein.");
-$helperInstance->addFormSubGroup('username', "Dein Nickname wird erst nach Absenden des Formulares geprüft. Später bauen wir dann einen automatischen Test ein, der dir sofort zeigt, ob der Nickname bereits vergeben ist.");
-$helperInstance->addFieldText('username', "Nickname im Spiel:");
-$helperInstance->addInputTextField('username');
-$helperInstance->addFormSubGroup('pass', "Dein Passwort sollte nicht zu leicht erratbar sein. Später bauen wir hier noch einen automatischen Test ein, der dir sofort die Passwortstärke anzeigt.");
-$helperInstance->addFieldText('pass1', "Passwort:");
-$helperInstance->addInputPasswordField('pass1');
-$helperInstance->addFieldText('pass2', "Passwortwiederholung:");
-$helperInstance->addInputPasswordField('pass2');
-
-// Does this registration require an email?
-if ($helperInstance->ifRegisterRequiresEmailVerification()) {
- $helperInstance->addFormGroup('email', "Bitte gebe deine Email zweimal (ein zweites Mal zur Bestätigung) ein, damit wir dir deinen Freischaltlink zusenden können.");
- $helperInstance->addFieldText('email1', "Email-Adresse:");
- $helperInstance->addInputTextField('email1');
- $helperInstance->addFieldText('email2', "Wiederholung Email-Adresse:");
- $helperInstance->addInputTextField('email2');
-
- // Must the email address be unique in this system?
- if ($helperInstance->ifEmailMustBeUnique()) {
- $helperInstance->addFormNote('email', "Die von dir eingegebene Email-Adresse darf nur einmal im Spiel verwendet worden sein.");
- } // END - if
-} // END - if
-
-// Shall we also ask some personal data to complete the profile?
-if ($helperInstance->ifRegisterIncludesProfile()) {
- $helperInstance->addFormGroup('profile', "Hier kannst du zusätzlich deine Profildaten vorweg eingeben, du kannst sie aber auch nach dem Login vervollständigen!");
-
- if (!$helperInstance->ifRegisterRequiresEmailVerification()) {
- $helperInstance->addFormSubGroup('email', "Die Angabe deiner Email-Adresse ist nur dann nötig, wenn du auch Email-Benachrichtigungen (<span id=\"add_note\">*1</span>) haben möchtest.");
- $helperInstance->addFieldText('email1', "Email-Adresse:");
- $helperInstance->addInputTextField('email1');
-
- // Must the email address be unique in this system?
- if ($helperInstance->ifEmailMustBeUnique()) {
- $helperInstance->addFormNote('email', "Die von dir eingegebene Email-Adresse darf nur einmal im Spiel verwendet worden sein.");
- } // END - if
- } // END - if
-
- // Persoenliche Daten mit in der Anmeldung abfragen?
- if ($helperInstance->ifRegisterIncludesPersonaData()) {
- $helperInstance->addFormSubGroup('persona', "Wenn du magst, dann vervollständige deine komplette Adresse mit deinem Namen.");
- $helperInstance->addFieldText('surname', "Dein Vorname:");
- $helperInstance->addInputTextField('surname');
- $helperInstance->addFieldText('family', "Dein Nachname:");
- $helperInstance->addInputTextField('family');
- $helperInstance->addFieldText('street', "Strasse und Hausnummer:");
- $helperInstance->addInputTextField('street');
- $helperInstance->addFieldText('city', "Wohnort:");
- $helperInstance->addInputTextField('city');
-
- // Include birthday?
- if ($helperInstance->ifProfileIncludesBirthDay()) {
- $helperInstance->addFormSubGroup('birthday', "Verrate uns doch dein Geburtsdatum, als Dankeschön erhälst du interessante Prämien - ausschliesslich per Email - zum Geburtstag zugesandt! Gültiges Format: TT.MM.JJJJ");
- $helperInstance->addInputTextField('birth_day');
- $helperInstance->addFieldText('birth_day', ".");
- $helperInstance->addInputTextField('birth_month');
- $helperInstance->addFieldText('birth_day', ".");
- $helperInstance->addInputTextField('birth_year');
- } // END - if
- } // END - if
-
- $helperInstance->addFormSubGroup('zip', "Magst du uns auch deine Postleitzahl verraten?");
- $helperInstance->addFieldText('zip', "Postleitzahl:");
- $helperInstance->addInputTextField('zip');
-
- $helperInstance->addFormSubGroup('chat', "Gebe hier deine Nicknames bzw. Nummern an:");
-
- if ($helperInstance->ifChatEnabled('icq')) {
- $helperInstance->addFieldText('icq', "ICQ-Nummer:");
- $helperInstance->addInputTextField('icq');
- } // END - if
-
- if ($helperInstance->ifChatEnabled('jabber')) {
- $helperInstance->addFieldText('jabber', "Jabber:");
- $helperInstance->addInputTextField('jabber');
- } // END - if
-
- if ($helperInstance->ifChatEnabled('yahoo')) {
- $helperInstance->addFieldText('yahoo', "Yahoo!:");
- $helperInstance->addInputTextField('yahoo');
- } // END - if
-
- if ($helperInstance->ifChatEnabled('aol')) {
- $helperInstance->addFieldText('aol', "AOL-Screenname:");
- $helperInstance->addInputTextField('aol');
- } // END - if
-
- if ($helperInstance->ifChatEnabled('msn')) {
- $helperInstance->addFieldText('msn', "MSN:");
- $helperInstance->addInputTextField('msn');
- } // END - if
-
- if (!$helperInstance->ifRegisterRequiresEmailVerification()) {
- $helperInstance->addFormExtraNote(1, "Die Benachrichtigungen per sind im Loginbereich verfeinerbar, welche du genau haben willst.");
- } // END - Extra note
-
-} // END - ask profile data
-
-// Spielregeln abfragen
-$helperInstance->addFormGroup('rules', "Bitte lese dir die Spieleregeln gut durch und kreuze dann "Ja, ich akzeptiere die aktuellen Spielregeln" an.");
-$helperInstance->addFieldText('rules', "Ja, ich akzeptiere die aktuellen Spielregeln:");
-$helperInstance->addInputCheckboxField('rules', false);
-
-// Add CAPTCHA?
-if ($helperInstance->ifFormSecuredWithCaptcha()) {
- $helperInstance->addFormGroup('captcha', "Bitte wiederhole den angezeigten Code damit die Anmeldung abgeschlossen werden kann.");
- $helperInstance->addCaptcha();
-} // END - if
-
-// Final note and submit buttons
-$helperInstance->addFormGroup('buttons', "Wenn du alle benötigten Felder korrekt ausgefüt hast, kannst du die Anmeldung abschliessen.");
-
-$helperInstance->addInputResetButton("Alles nochmal eingeben");
-$helperInstance->addInputSubmitButton("Anmeldung zum Spiel abschliessen");
-$helperInstance->addFormNote('data_protection', "Deine Daten werden nach den gültigen Datenschutzgesetzen gespeichert und werden nicht an Dritte weitergegeben. Weiteres dazu siehe Link "Datenschutz".");
-$helperInstance->flushContent();
-
-// [EOC]
-?>
-<div id="content_header">
- Anmeldung bei <span class="app_name">{?app_full_name?}</span>
-</div>
-
-<div id="register_box">
- {?city_register?}
-</div>
+++ /dev/null
-Deny from all
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8" ?>
-<text-mail>
- <mail-data>
- <sender-address value="{?admin_email?}" />
- <subject-line><![CDATA[Anforderung deines Bestätigungslinks]]></subject-line>
- <recipient-address value="{?email?}" />
- <message>
- <![CDATA[Hallo {?username?}!
-
-Du (oder ein anderer) hattest soeben deinen Bestätigungslink erneut angefordert. Solltest du dies nicht gewesen sein, bitten wir dich den Vorfall zu entschuldigen.
-
-Hier ist nun dein Bestätigungslink. Der alte aus der Anmeldemail ist somit nicht mehr gültig!
-
-{?base_url?}/index.php?app={?app_short_name?}&command=confirm&username={?username?}&confirm={?confirm_hash?}
-
-Solltest du die URL nicht anklicken können, versuche diese in die Adresszeile deines Browsers zu kopieren.
-
-Alternativ kannst du im Spielebereich unter Bestätigungscode den folgenden Code reinkopieren oder eingeben:
-
-{?confirm_hash?}
-
-Solltest du Fragen dazu oder Probleme mit der Bestätigung haben, so melde dich bitte beim Support-Team.
-
-Mit freundlichen Grüßen,
- Dein {?app_short_name?}-Team
-
-{?mail_footer?}]]>
- </message>
- </mail-data>
-</text-mail>
+++ /dev/null
-Deny from all
+++ /dev/null
-Deny from all
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8" ?>
-<image>
- <type value="{?image_type?}" />
- <base>
- <name value="{?image_name?}" />
- </base>
- <resolution>
- <width value="{?image_width?}" />
- <height value="{?image_height?}" />
- </resolution>
- <background-color>
- <red value="{?image_bg_red?}" />
- <green value="{?image_bg_green?}" />
- <blue value="{?image_bg_blue?}" />
- </background-color>
- <foreground-color>
- <red value="{?image_fg_red?}" />
- <green value="{?image_fg_green?}" />
- <blue value="{?image_fg_blue?}" />
- </foreground-color>
- <image-string value="groupable">
- <string-name value="{?image_string_name?}" />
- <x value="{?image_x?}" />
- <y value="{?image_y?}" />
- <font-size value="{?image_size?}" />
- <text value="{?image_string?}" />
- </image-string>
-</image>
+++ /dev/null
-<?php
-// Needed in every image template to initialy set the image type
-$helper = ImageHelper::createImageHelper($this, 'png');
-$helper->setImageName('code_captcha');
-$helper->setBaseImage('base_code');
-
-// Set image dimensions
-$helper->setWidth(100);
-$helper->setHeight(50);
-
-// Get random number
-$rand = $helper->getRngInstance()->randomNumber(0, 6);
-
-// Background and foreground color
-switch ($rand) {
- case 1:
- // First varriant
- $helper->setBackgroundColorRedGreenBlue('rand', 0x90 , 0x00 );
- $helper->setForegroundColorRedGreenBlue(0x00 , 0xff , 'rand');
- break;
-
- case 2:
- // Second varriant
- $helper->setBackgroundColorRedGreenBlue(0x90 , 'rand', 0x00 );
- $helper->setForegroundColorRedGreenBlue(0xff , 0x00 , 'rand');
- break;
-
- case 3:
- // Third varriant
- $helper->setBackgroundColorRedGreenBlue('rand', 0x00 , 0x90 );
- $helper->setForegroundColorRedGreenBlue(0x00 , 'rand', 0xff );
- break;
-
- case 4:
- // Forth varriant
- $helper->setBackgroundColorRedGreenBlue(0x00 , 0x90 , 'rand');
- $helper->setForegroundColorRedGreenBlue(0x00 , 'rand', 0xa0 );
- break;
-
- case 5:
- // Fith varriant
- $helper->setBackgroundColorRedGreenBlue('rand', 0x00 , 0x90 );
- $helper->setForegroundColorRedGreenBlue(0x00 , 0xe0 , 'rand');
- break;
-
- default:
- // Last varriant
- $helper->setBackgroundColorRedGreenBlue(0x00 , 'rand', 0x90 );
- $helper->setForegroundColorRedGreenBlue(0xff , 0x00 , 'rand');
- break;
-}
-
-// Random X/Y factors...
-$xRand = $helper->getRngInstance()->randomNumber(0, 45);
-$yRand = $helper->getRngInstance()->randomNumber(0, 25);
-
-// Add code
-$helper->addTextLine('code');
-$helper->setCoord((5 + $xRand), (5 + $yRand));
-$helper->setFontSize('rand');
-$helper->setImageString('{?decrypted_code?}');
-
-// Only for debug!
-/*
-$helper->addTextLine('debug');
-$helper->setCoord(90, 35);
-$helper->setFontSize(3);
-$helper->setImageString($rand);
-*/
-
-// Flush content to the template engine
-$helper->flushContent();
-
-// Comment this out if image is done
-//$this->debugInstance();
-
-// [EOF]
-?>
+++ /dev/null
-<?php
-// Needed in every image template to initialy set the image type
-$helper = ImageHelper::createImageHelper($this, 'png');
-$helper->setImageName('emergency_exit');
-$helper->setBaseImage('base_exit');
-
-// Set image dimensions
-$helper->setWidth(100);
-$helper->setHeight(50);
-
-// Flush content to the template engine
-//$helper->flushContent();
-
-// Comment this out if image is done
-$this->debugInstance();
-
-// [EOF]
-?>
+++ /dev/null
-Deny from all
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8" ?>
-<!--
-A general menu XML file. This should be later converted to a DTD.
-
-@author Roland Haeder <webmaster@ship-simu.org>
-@version 0.0.0
-@copyright Copyright (c) 2015 City Developer Team
-@license GNU GPL 3.0 or any newer version
-@link http://www.ship-simu.org
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>
-//-->
-<menu>
- <block-list block-count="{?block_count?}">
- <block>
- <block-header>
- <title>
- <title-id>{?menu_title_id?}</title-id>
- <title-class>{!menu_title_class?}</title-class>
- <title-text>{?menu_title?}</title-text>
- </title>
- </block-header>
- <entry-list entry-count="{?entry_count?}">
- <entry>
- <entry-id>{?entry_id?}</entry-id>
- <anchor>
- <anchor-id>{?anchor_id?}</anchor-id>
- <anchor-text>{?anchor_text?}</anchor-text>
- <anchor-title>{?anchor_title?}</anchor-title>
- <anchor-href>{?anchor_href?}</anchor-href>
- </anchor>
- </entry>
- </entry-list>
- <block-footer>
- <footer-id>{!footer_id?}</footer>
- <footer-class>{?footer_design_class?}</footer-class>
- <footer-text>{?menu_footer?}</footer-text>
- </block-footer>
- </block>
- </block-list>
-</menu>
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8" ?>
-<!--
-Generic menu entries. You should not touch this template for smooth upgrades.
-
-@author Roland Haeder <webmaster@ship-simu.org>
-@version 0.0.0
-@copyright Copyright (c) 2015 City Developer Team
-@license GNU GPL 3.0 or any newer version
-@link http://www.ship-simu.org
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>
-//-->
-<menu>
- <block-list block-count="{?block_count?}">
- <block>
- <block-header>
- <title>
- <title-id><![CDATA[home_menu_title]]></title-id>
- <title-class><![CDATA[menu_title]]></title-class>
- <title-text><![CDATA[Home:]]></title-text>
- </title>
- </block-header>
-
- <entry-list entry-count="{?entry_count?}">
- <entry>
- <entry-id><![CDATA[home_entry]]></entry-id>
- <anchor>
- <anchor-id><![CDATA[menu_home]]></anchor-id>
- <anchor-text><![CDATA[Home]]></anchor-text>
- <anchor-title><![CDATA[Zur Startseite]]></anchor-title>
- <anchor-href><![CDATA[index.php?app={?app_short_name?}]]></anchor-href>
- </anchor>
- </entry>
-
- <entry>
- <entry-id><![CDATA[login_entry]]></entry-id>
- <anchor>
- <anchor-id><![CDATA[menu_login]]></anchor-id>
- <anchor-text><![CDATA[Einloggen]]></anchor-text>
- <anchor-title><![CDATA[Zum Spiel {?app_full_name?} einloggen]]></anchor-title>
- <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=login]]></anchor-href>
- </anchor>
- </entry>
-
- <entry>
- <entry-id><![CDATA[register_entry]]></entry-id>
- <anchor>
- <anchor-id><![CDATA[menu_register]]></anchor-id>
- <anchor-text><![CDATA[Anmeldung]]></anchor-text>
- <anchor-title><![CDATA[Zur Anmeldeseite]]></anchor-title>
- <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=register]]></anchor-href>
- </anchor>
- </entry>
-
- <entry>
- <entry-id><![CDATA[infos_entry]]></entry-id>
- <anchor>
- <anchor-id><![CDATA[menu_infos]]></anchor-id>
- <anchor-text><![CDATA[Informationen]]></anchor-text>
- <anchor-title><![CDATA[Über dieses Spiel]]></anchor-title>
- <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=infos]]></anchor-href>
- </anchor>
- </entry>
-
- <entry>
- <entry-id><![CDATA[pillory_entry]]></entry-id>
- <anchor>
- <anchor-id><![CDATA[menu_pillory]]></anchor-id>
- <anchor-text><![CDATA[Pranger]]></anchor-text>
- <anchor-title><![CDATA[Zum Pranger]]></anchor-title>
- <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=pillory]]></anchor-href>
- </anchor>
- </entry>
- </entry-list>
-
- <block-footer>
- <footer-id><![CDATA[home_menu_footer]]></footer-id>
- <footer-class><![CDATA[menu_footer]]></footer-class>
- <footer-text><![CDATA[Unterhalb Hauptauswahl]]></footer-text>
- </block-footer>
- </block>
-
- <block>
- <block-header>
- <title>
- <title-id><![CDATA[law_menu_title]]></title-id>
- <title-class><![CDATA[menu_title]]></title-class>
- <title-text><![CDATA[Rechtliches:]]></title-text>
- </title>
- </block-header>
-
- <entry-list entry-count="{?entry_count?}">
- <entry>
- <entry-id><![CDATA[imprint_entry]]></entry-id>
- <anchor>
- <anchor-id><![CDATA[menu_imprint]]></anchor-id>
- <anchor-text><![CDATA[Impressum]]></anchor-text>
- <anchor-title><![CDATA[Impressum]]></anchor-title>
- <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=imprint]]></anchor-href>
- </anchor>
- </entry>
-
- <entry>
- <entry-id><![CDATA[terms_entry]]></entry-id>
- <anchor>
- <anchor-id><![CDATA[menu_terms]]></anchor-id>
- <anchor-text><![CDATA[Spielregeln]]></anchor-text>
- <anchor-title><![CDATA[Zu den Spielregeln]]></anchor-title>
- <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=terms]]></anchor-href>
- </anchor>
- </entry>
- </entry-list>
-
- <block-footer>
- <footer-id><![CDATA[law_menu_footer]]></footer-id>
- <footer-class><![CDATA[menu_footer]]></footer-class>
- <footer-text><![CDATA[Unterhalb Rechtliches]]></footer-text>
- </block-footer>
- </block>
- </block-list>
-</menu>
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8" ?>
-<!--
-Login area menu entries. You should not touch this template for smooth upgrades.
-
-@author Roland Haeder <webmaster@ship-simu.org>
-@version 0.0.0
-@copyright Copyright (c) 2015 City Developer Team
-@license GNU GPL 3.0 or any newer version
-@link http://www.ship-simu.org
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>
-//-->
-<menu>
- <block-list block-count="{?block_count?}">
- <block>
- <block-header>
- <title>
- <title-id><![CDATA[home_menu_title]]></title-id>
- <title-class><![CDATA[menu_title]]></title-class>
- <title-text><![CDATA[Home:]]></title-text>
- </title>
- </block-header>
-
- <entry-list entry-count="{?entry_count?}">
- <entry>
- <entry-id><![CDATA[welcome_entry]]></entry-id>
- <anchor>
- <anchor-id><![CDATA[menu_welcome]]></anchor-id>
- <anchor-text><![CDATA[Home]]></anchor-text>
- <anchor-title><![CDATA[Zur Eingangsseite]]></anchor-title>
- <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=login_area]]></anchor-href>
- </anchor>
- </entry>
-
- <entry>
- <entry-id><![CDATA[city_map_entry]]></entry-id>
- <anchor>
- <anchor-id><![CDATA[menu_city_map]]></anchor-id>
- <anchor-text><![CDATA[Stadtkarte]]></anchor-text>
- <anchor-title><![CDATA[Zur Stadtkarte]]></anchor-title>
- <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=login_area&action=city_map]]></anchor-href>
- </anchor>
- </entry>
-
- <entry>
- <entry-id><![CDATA[region_map_entry]]></entry-id>
- <anchor>
- <anchor-id><![CDATA[menu_region_map]]></anchor-id>
- <anchor-text><![CDATA[Gebietskarte]]></anchor-text>
- <anchor-title><![CDATA[Zur Gebietskarte]]></anchor-title>
- <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=login_area&action=region_map]]></anchor-href>
- </anchor>
- </entry>
-
- <entry>
- <entry-id><![CDATA[government_entry]]></entry-id>
- <anchor>
- <anchor-id><![CDATA[menu_government]]></anchor-id>
- <anchor-text><![CDATA[Öffentliche Hand]]></anchor-text>
- <anchor-title><![CDATA[Zur öffentlichen Hand]]></anchor-title>
- <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=login_area&action=government]]></anchor-href>
- </anchor>
- </entry>
-
- <entry>
- <entry-id><![CDATA[profile_entry]]></entry-id>
- <anchor>
- <anchor-id><![CDATA[menu_profile]]></anchor-id>
- <anchor-text><![CDATA[Mein Profil]]></anchor-text>
- <anchor-title><![CDATA[Zum Spielerprofil]]></anchor-title>
- <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=login_area&action=profile]]></anchor-href>
- </anchor>
- </entry>
- </entry-list>
-
- <block-footer>
- <footer-id><![CDATA[overview_menu_footer]]></footer-id>
- <footer-class><![CDATA[menu_footer]]></footer-class>
- <footer-text><![CDATA[Unterhalb Hauptauswahl]]></footer-text>
- </block-footer>
- </block>
-
- <block>
- <block-header>
- <title>
- <title-id><![CDATA[misc_menu_title]]></title-id>
- <title-class><![CDATA[menu_title]]></title-class>
- <title-text><![CDATA[Weiteres:]]></title-text>
- </title>
- </block-header>
-
- <entry-list entry-count="{?entry_count?}">
- <entry>
- <entry-id><![CDATA[support_entry]]></entry-id>
- <anchor>
- <anchor-id><![CDATA[menu_support]]></anchor-id>
- <anchor-text><![CDATA[Support]]></anchor-text>
- <anchor-title><![CDATA[Zum Support Kontakt aufnehmen]]></anchor-title>
- <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=support]]></anchor-href>
- </anchor>
- </entry>
-
- <entry>
- <entry-id><![CDATA[terms_entry]]></entry-id>
- <anchor>
- <anchor-id><![CDATA[menu_terms]]></anchor-id>
- <anchor-text><![CDATA[Spielregeln]]></anchor-text>
- <anchor-title><![CDATA[Zu den Spielregeln]]></anchor-title>
- <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=terms]]></anchor-href>
- </anchor>
- </entry>
-
- <entry>
- <entry-id><![CDATA[pillory_entry]]></entry-id>
- <anchor>
- <anchor-id><![CDATA[menu_pillory]]></anchor-id>
- <anchor-text><![CDATA[Pranger]]></anchor-text>
- <anchor-title><![CDATA[Zum Pranger]]></anchor-title>
- <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=pillory]]></anchor-href>
- </anchor>
- </entry>
- </entry-list>
-
- <block-footer>
- <footer-id><![CDATA[law_menu_footer]]></footer-id>
- <footer-class><![CDATA[menu_footer]]></footer-class>
- <footer-text><![CDATA[Unterhalb Weiteres]]></footer-text>
- </block-footer>
- </block>
- </block-list>
-</menu>
--- /dev/null
+Deny from all
--- /dev/null
+<?xml version="1.0" encoding="UTF-8" ?>
+<text-mail>
+ <mail-data>
+ <sender-address value="{?admin_email?}" />
+ <subject-line><![CDATA[Anforderung deines Bestätigungslinks]]></subject-line>
+ <recipient-address value="{?email?}" />
+ <message>
+ <![CDATA[Hallo {?username?}!
+
+Du (oder ein anderer) hattest soeben deinen Bestätigungslink erneut angefordert. Solltest du dies nicht gewesen sein, bitten wir dich den Vorfall zu entschuldigen.
+
+Hier ist nun dein Bestätigungslink. Der alte aus der Anmeldemail ist somit nicht mehr gültig!
+
+{?base_url?}/index.php?app={?app_short_name?}&command=confirm&username={?username?}&confirm={?confirm_hash?}
+
+Solltest du die URL nicht anklicken können, versuche diese in die Adresszeile deines Browsers zu kopieren.
+
+Alternativ kannst du im Spielebereich unter Bestätigungscode den folgenden Code reinkopieren oder eingeben:
+
+{?confirm_hash?}
+
+Solltest du Fragen dazu oder Probleme mit der Bestätigung haben, so melde dich bitte beim Support-Team.
+
+Mit freundlichen Grüßen,
+ Dein {?app_short_name?}-Team
+
+{?mail_footer?}]]>
+ </message>
+ </mail-data>
+</text-mail>
--- /dev/null
+Deny from all
--- /dev/null
+Deny from all
--- /dev/null
+<?xml version="1.0" encoding="UTF-8" ?>
+<image>
+ <type value="{?image_type?}" />
+ <base>
+ <name value="{?image_name?}" />
+ </base>
+ <resolution>
+ <width value="{?image_width?}" />
+ <height value="{?image_height?}" />
+ </resolution>
+ <background-color>
+ <red value="{?image_bg_red?}" />
+ <green value="{?image_bg_green?}" />
+ <blue value="{?image_bg_blue?}" />
+ </background-color>
+ <foreground-color>
+ <red value="{?image_fg_red?}" />
+ <green value="{?image_fg_green?}" />
+ <blue value="{?image_fg_blue?}" />
+ </foreground-color>
+ <image-string value="groupable">
+ <string-name value="{?image_string_name?}" />
+ <x value="{?image_x?}" />
+ <y value="{?image_y?}" />
+ <font-size value="{?image_size?}" />
+ <text value="{?image_string?}" />
+ </image-string>
+</image>
--- /dev/null
+<?php
+// Needed in every image template to initialy set the image type
+$helper = ImageHelper::createImageHelper($this, 'png');
+$helper->setImageName('code_captcha');
+$helper->setBaseImage('base_code');
+
+// Set image dimensions
+$helper->setWidth(100);
+$helper->setHeight(50);
+
+// Get random number
+$rand = $helper->getRngInstance()->randomNumber(0, 6);
+
+// Background and foreground color
+switch ($rand) {
+ case 1:
+ // First varriant
+ $helper->setBackgroundColorRedGreenBlue('rand', 0x90 , 0x00 );
+ $helper->setForegroundColorRedGreenBlue(0x00 , 0xff , 'rand');
+ break;
+
+ case 2:
+ // Second varriant
+ $helper->setBackgroundColorRedGreenBlue(0x90 , 'rand', 0x00 );
+ $helper->setForegroundColorRedGreenBlue(0xff , 0x00 , 'rand');
+ break;
+
+ case 3:
+ // Third varriant
+ $helper->setBackgroundColorRedGreenBlue('rand', 0x00 , 0x90 );
+ $helper->setForegroundColorRedGreenBlue(0x00 , 'rand', 0xff );
+ break;
+
+ case 4:
+ // Forth varriant
+ $helper->setBackgroundColorRedGreenBlue(0x00 , 0x90 , 'rand');
+ $helper->setForegroundColorRedGreenBlue(0x00 , 'rand', 0xa0 );
+ break;
+
+ case 5:
+ // Fith varriant
+ $helper->setBackgroundColorRedGreenBlue('rand', 0x00 , 0x90 );
+ $helper->setForegroundColorRedGreenBlue(0x00 , 0xe0 , 'rand');
+ break;
+
+ default:
+ // Last varriant
+ $helper->setBackgroundColorRedGreenBlue(0x00 , 'rand', 0x90 );
+ $helper->setForegroundColorRedGreenBlue(0xff , 0x00 , 'rand');
+ break;
+}
+
+// Random X/Y factors...
+$xRand = $helper->getRngInstance()->randomNumber(0, 45);
+$yRand = $helper->getRngInstance()->randomNumber(0, 25);
+
+// Add code
+$helper->addTextLine('code');
+$helper->setCoord((5 + $xRand), (5 + $yRand));
+$helper->setFontSize('rand');
+$helper->setImageString('{?decrypted_code?}');
+
+// Only for debug!
+/*
+$helper->addTextLine('debug');
+$helper->setCoord(90, 35);
+$helper->setFontSize(3);
+$helper->setImageString($rand);
+*/
+
+// Flush content to the template engine
+$helper->flushContent();
+
+// Comment this out if image is done
+//$this->debugInstance();
+
+// [EOF]
+?>
--- /dev/null
+<?php
+// Needed in every image template to initialy set the image type
+$helper = ImageHelper::createImageHelper($this, 'png');
+$helper->setImageName('emergency_exit');
+$helper->setBaseImage('base_exit');
+
+// Set image dimensions
+$helper->setWidth(100);
+$helper->setHeight(50);
+
+// Flush content to the template engine
+//$helper->flushContent();
+
+// Comment this out if image is done
+$this->debugInstance();
+
+// [EOF]
+?>
--- /dev/null
+Deny from all
--- /dev/null
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+A general menu XML file. This should be later converted to a DTD.
+
+@author Roland Haeder <webmaster@ship-simu.org>
+@version 0.0.0
+@copyright Copyright (c) 2015 City Developer Team
+@license GNU GPL 3.0 or any newer version
+@link http://www.ship-simu.org
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>
+//-->
+<menu>
+ <block-list block-count="{?block_count?}">
+ <block>
+ <block-header>
+ <title>
+ <title-id>{?menu_title_id?}</title-id>
+ <title-class>{!menu_title_class?}</title-class>
+ <title-text>{?menu_title?}</title-text>
+ </title>
+ </block-header>
+ <entry-list entry-count="{?entry_count?}">
+ <entry>
+ <entry-id>{?entry_id?}</entry-id>
+ <anchor>
+ <anchor-id>{?anchor_id?}</anchor-id>
+ <anchor-text>{?anchor_text?}</anchor-text>
+ <anchor-title>{?anchor_title?}</anchor-title>
+ <anchor-href>{?anchor_href?}</anchor-href>
+ </anchor>
+ </entry>
+ </entry-list>
+ <block-footer>
+ <footer-id>{!footer_id?}</footer>
+ <footer-class>{?footer_design_class?}</footer-class>
+ <footer-text>{?menu_footer?}</footer-text>
+ </block-footer>
+ </block>
+ </block-list>
+</menu>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+Generic menu entries. You should not touch this template for smooth upgrades.
+
+@author Roland Haeder <webmaster@ship-simu.org>
+@version 0.0.0
+@copyright Copyright (c) 2015 City Developer Team
+@license GNU GPL 3.0 or any newer version
+@link http://www.ship-simu.org
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>
+//-->
+<menu>
+ <block-list block-count="{?block_count?}">
+ <block>
+ <block-header>
+ <title>
+ <title-id><![CDATA[home_menu_title]]></title-id>
+ <title-class><![CDATA[menu_title]]></title-class>
+ <title-text><![CDATA[Home:]]></title-text>
+ </title>
+ </block-header>
+
+ <entry-list entry-count="{?entry_count?}">
+ <entry>
+ <entry-id><![CDATA[home_entry]]></entry-id>
+ <anchor>
+ <anchor-id><![CDATA[menu_home]]></anchor-id>
+ <anchor-text><![CDATA[Home]]></anchor-text>
+ <anchor-title><![CDATA[Zur Startseite]]></anchor-title>
+ <anchor-href><![CDATA[index.php?app={?app_short_name?}]]></anchor-href>
+ </anchor>
+ </entry>
+
+ <entry>
+ <entry-id><![CDATA[login_entry]]></entry-id>
+ <anchor>
+ <anchor-id><![CDATA[menu_login]]></anchor-id>
+ <anchor-text><![CDATA[Einloggen]]></anchor-text>
+ <anchor-title><![CDATA[Zum Spiel {?app_full_name?} einloggen]]></anchor-title>
+ <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=login]]></anchor-href>
+ </anchor>
+ </entry>
+
+ <entry>
+ <entry-id><![CDATA[register_entry]]></entry-id>
+ <anchor>
+ <anchor-id><![CDATA[menu_register]]></anchor-id>
+ <anchor-text><![CDATA[Anmeldung]]></anchor-text>
+ <anchor-title><![CDATA[Zur Anmeldeseite]]></anchor-title>
+ <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=register]]></anchor-href>
+ </anchor>
+ </entry>
+
+ <entry>
+ <entry-id><![CDATA[infos_entry]]></entry-id>
+ <anchor>
+ <anchor-id><![CDATA[menu_infos]]></anchor-id>
+ <anchor-text><![CDATA[Informationen]]></anchor-text>
+ <anchor-title><![CDATA[Über dieses Spiel]]></anchor-title>
+ <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=infos]]></anchor-href>
+ </anchor>
+ </entry>
+
+ <entry>
+ <entry-id><![CDATA[pillory_entry]]></entry-id>
+ <anchor>
+ <anchor-id><![CDATA[menu_pillory]]></anchor-id>
+ <anchor-text><![CDATA[Pranger]]></anchor-text>
+ <anchor-title><![CDATA[Zum Pranger]]></anchor-title>
+ <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=pillory]]></anchor-href>
+ </anchor>
+ </entry>
+ </entry-list>
+
+ <block-footer>
+ <footer-id><![CDATA[home_menu_footer]]></footer-id>
+ <footer-class><![CDATA[menu_footer]]></footer-class>
+ <footer-text><![CDATA[Unterhalb Hauptauswahl]]></footer-text>
+ </block-footer>
+ </block>
+
+ <block>
+ <block-header>
+ <title>
+ <title-id><![CDATA[law_menu_title]]></title-id>
+ <title-class><![CDATA[menu_title]]></title-class>
+ <title-text><![CDATA[Rechtliches:]]></title-text>
+ </title>
+ </block-header>
+
+ <entry-list entry-count="{?entry_count?}">
+ <entry>
+ <entry-id><![CDATA[imprint_entry]]></entry-id>
+ <anchor>
+ <anchor-id><![CDATA[menu_imprint]]></anchor-id>
+ <anchor-text><![CDATA[Impressum]]></anchor-text>
+ <anchor-title><![CDATA[Impressum]]></anchor-title>
+ <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=imprint]]></anchor-href>
+ </anchor>
+ </entry>
+
+ <entry>
+ <entry-id><![CDATA[terms_entry]]></entry-id>
+ <anchor>
+ <anchor-id><![CDATA[menu_terms]]></anchor-id>
+ <anchor-text><![CDATA[Spielregeln]]></anchor-text>
+ <anchor-title><![CDATA[Zu den Spielregeln]]></anchor-title>
+ <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=terms]]></anchor-href>
+ </anchor>
+ </entry>
+ </entry-list>
+
+ <block-footer>
+ <footer-id><![CDATA[law_menu_footer]]></footer-id>
+ <footer-class><![CDATA[menu_footer]]></footer-class>
+ <footer-text><![CDATA[Unterhalb Rechtliches]]></footer-text>
+ </block-footer>
+ </block>
+ </block-list>
+</menu>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+Login area menu entries. You should not touch this template for smooth upgrades.
+
+@author Roland Haeder <webmaster@ship-simu.org>
+@version 0.0.0
+@copyright Copyright (c) 2015 City Developer Team
+@license GNU GPL 3.0 or any newer version
+@link http://www.ship-simu.org
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>
+//-->
+<menu>
+ <block-list block-count="{?block_count?}">
+ <block>
+ <block-header>
+ <title>
+ <title-id><![CDATA[home_menu_title]]></title-id>
+ <title-class><![CDATA[menu_title]]></title-class>
+ <title-text><![CDATA[Home:]]></title-text>
+ </title>
+ </block-header>
+
+ <entry-list entry-count="{?entry_count?}">
+ <entry>
+ <entry-id><![CDATA[welcome_entry]]></entry-id>
+ <anchor>
+ <anchor-id><![CDATA[menu_welcome]]></anchor-id>
+ <anchor-text><![CDATA[Home]]></anchor-text>
+ <anchor-title><![CDATA[Zur Eingangsseite]]></anchor-title>
+ <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=login_area]]></anchor-href>
+ </anchor>
+ </entry>
+
+ <entry>
+ <entry-id><![CDATA[city_map_entry]]></entry-id>
+ <anchor>
+ <anchor-id><![CDATA[menu_city_map]]></anchor-id>
+ <anchor-text><![CDATA[Stadtkarte]]></anchor-text>
+ <anchor-title><![CDATA[Zur Stadtkarte]]></anchor-title>
+ <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=login_area&action=city_map]]></anchor-href>
+ </anchor>
+ </entry>
+
+ <entry>
+ <entry-id><![CDATA[region_map_entry]]></entry-id>
+ <anchor>
+ <anchor-id><![CDATA[menu_region_map]]></anchor-id>
+ <anchor-text><![CDATA[Gebietskarte]]></anchor-text>
+ <anchor-title><![CDATA[Zur Gebietskarte]]></anchor-title>
+ <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=login_area&action=region_map]]></anchor-href>
+ </anchor>
+ </entry>
+
+ <entry>
+ <entry-id><![CDATA[government_entry]]></entry-id>
+ <anchor>
+ <anchor-id><![CDATA[menu_government]]></anchor-id>
+ <anchor-text><![CDATA[Öffentliche Hand]]></anchor-text>
+ <anchor-title><![CDATA[Zur öffentlichen Hand]]></anchor-title>
+ <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=login_area&action=government]]></anchor-href>
+ </anchor>
+ </entry>
+
+ <entry>
+ <entry-id><![CDATA[profile_entry]]></entry-id>
+ <anchor>
+ <anchor-id><![CDATA[menu_profile]]></anchor-id>
+ <anchor-text><![CDATA[Mein Profil]]></anchor-text>
+ <anchor-title><![CDATA[Zum Spielerprofil]]></anchor-title>
+ <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=login_area&action=profile]]></anchor-href>
+ </anchor>
+ </entry>
+ </entry-list>
+
+ <block-footer>
+ <footer-id><![CDATA[overview_menu_footer]]></footer-id>
+ <footer-class><![CDATA[menu_footer]]></footer-class>
+ <footer-text><![CDATA[Unterhalb Hauptauswahl]]></footer-text>
+ </block-footer>
+ </block>
+
+ <block>
+ <block-header>
+ <title>
+ <title-id><![CDATA[misc_menu_title]]></title-id>
+ <title-class><![CDATA[menu_title]]></title-class>
+ <title-text><![CDATA[Weiteres:]]></title-text>
+ </title>
+ </block-header>
+
+ <entry-list entry-count="{?entry_count?}">
+ <entry>
+ <entry-id><![CDATA[support_entry]]></entry-id>
+ <anchor>
+ <anchor-id><![CDATA[menu_support]]></anchor-id>
+ <anchor-text><![CDATA[Support]]></anchor-text>
+ <anchor-title><![CDATA[Zum Support Kontakt aufnehmen]]></anchor-title>
+ <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=support]]></anchor-href>
+ </anchor>
+ </entry>
+
+ <entry>
+ <entry-id><![CDATA[terms_entry]]></entry-id>
+ <anchor>
+ <anchor-id><![CDATA[menu_terms]]></anchor-id>
+ <anchor-text><![CDATA[Spielregeln]]></anchor-text>
+ <anchor-title><![CDATA[Zu den Spielregeln]]></anchor-title>
+ <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=terms]]></anchor-href>
+ </anchor>
+ </entry>
+
+ <entry>
+ <entry-id><![CDATA[pillory_entry]]></entry-id>
+ <anchor>
+ <anchor-id><![CDATA[menu_pillory]]></anchor-id>
+ <anchor-text><![CDATA[Pranger]]></anchor-text>
+ <anchor-title><![CDATA[Zum Pranger]]></anchor-title>
+ <anchor-href><![CDATA[index.php?app={?app_short_name?}&command=pillory]]></anchor-href>
+ </anchor>
+ </entry>
+ </entry-list>
+
+ <block-footer>
+ <footer-id><![CDATA[law_menu_footer]]></footer-id>
+ <footer-class><![CDATA[menu_footer]]></footer-class>
+ <footer-text><![CDATA[Unterhalb Weiteres]]></footer-text>
+ </block-footer>
+ </block>
+ </block-list>
+</menu>