A lot naming conventions applied:
authorRoland Häder <roland@mxchange.org>
Sun, 26 Oct 2008 16:14:52 +0000 (16:14 +0000)
committerRoland Häder <roland@mxchange.org>
Sun, 26 Oct 2008 16:14:52 +0000 (16:14 +0000)
- All action templates and classes now contains the application name
- This is needed for the admin area where we need to add special filters for
  user rights validation
- Class "BaseApplication" added which registers the ApplicationHelper class
  for later usage.
- Some minor fixes

66 files changed:
.gitattributes
application/admin/class_ApplicationHelper.php
application/admin/templates/de/code/action_admin_login_logout.ctp [new file with mode: 0644]
application/admin/templates/de/code/action_admin_login_profile.ctp [new file with mode: 0644]
application/admin/templates/de/code/action_admin_login_status_problem.ctp [new file with mode: 0644]
application/admin/templates/de/code/action_admin_login_welcome.ctp [new file with mode: 0644]
application/admin/templates/de/code/action_admin_status_problem.ctp [new file with mode: 0644]
application/admin/templates/de/code/action_login_logout.ctp [deleted file]
application/admin/templates/de/code/action_login_profile.ctp [deleted file]
application/admin/templates/de/code/action_login_status_problem.ctp [deleted file]
application/admin/templates/de/code/action_login_welcome.ctp [deleted file]
application/admin/templates/de/code/login_main.ctp
application/blog/class_ApplicationHelper.php
application/blog/templates/de/code/action_blog_login_logout.ctp [new file with mode: 0644]
application/blog/templates/de/code/action_blog_login_profile.ctp [new file with mode: 0644]
application/blog/templates/de/code/action_blog_login_status_problem.ctp [new file with mode: 0644]
application/blog/templates/de/code/action_blog_login_welcome.ctp [new file with mode: 0644]
application/blog/templates/de/code/action_login_logout.ctp [deleted file]
application/blog/templates/de/code/action_login_profile.ctp [deleted file]
application/blog/templates/de/code/action_login_status_problem.ctp [deleted file]
application/blog/templates/de/code/action_login_welcome.ctp [deleted file]
application/selector/class_ApplicationHelper.php
application/ship-simu/class_ApplicationHelper.php
application/ship-simu/config.php
application/ship-simu/main/actions/ship-simu/class_ShipSimuProfileAction.php
application/ship-simu/main/actions/web/class_WebLogin [deleted file]
application/ship-simu/main/actions/web/class_WebLoginCompanyAction.php [deleted file]
application/ship-simu/main/actions/web/class_WebLoginRefillAction.php [deleted file]
application/ship-simu/main/actions/web/class_WebShipSimuLogin [new file with mode: 0644]
application/ship-simu/main/actions/web/class_WebShipSimuLoginCompanyAction.php [new file with mode: 0644]
application/ship-simu/main/actions/web/class_WebShipSimuLoginRefillAction.php [new file with mode: 0644]
application/ship-simu/templates/de/code/action_login_company.ctp [deleted file]
application/ship-simu/templates/de/code/action_login_logout.ctp [deleted file]
application/ship-simu/templates/de/code/action_login_profile.ctp [deleted file]
application/ship-simu/templates/de/code/action_login_refill.ctp [deleted file]
application/ship-simu/templates/de/code/action_login_status_problem.ctp [deleted file]
application/ship-simu/templates/de/code/action_login_welcome.ctp [deleted file]
application/ship-simu/templates/de/code/action_ship_simu_login_company.ctp [new file with mode: 0644]
application/ship-simu/templates/de/code/action_ship_simu_login_logout.ctp [new file with mode: 0644]
application/ship-simu/templates/de/code/action_ship_simu_login_profile.ctp [new file with mode: 0644]
application/ship-simu/templates/de/code/action_ship_simu_login_refill.ctp [new file with mode: 0644]
application/ship-simu/templates/de/code/action_ship_simu_login_status_problem.ctp [new file with mode: 0644]
application/ship-simu/templates/de/code/action_ship_simu_login_welcome.ctp [new file with mode: 0644]
application/shoutbox/class_ApplicationHelper.php
application/shoutbox/templates/de/code/action_login_logout.ctp [deleted file]
application/shoutbox/templates/de/code/action_login_profile.ctp [deleted file]
application/shoutbox/templates/de/code/action_login_status_problem.ctp [deleted file]
application/shoutbox/templates/de/code/action_login_welcome.ctp [deleted file]
application/shoutbox/templates/de/code/action_shoutbox_login_logout.ctp [new file with mode: 0644]
application/shoutbox/templates/de/code/action_shoutbox_login_profile.ctp [new file with mode: 0644]
application/shoutbox/templates/de/code/action_shoutbox_login_status_problem.ctp [new file with mode: 0644]
application/shoutbox/templates/de/code/action_shoutbox_login_welcome.ctp [new file with mode: 0644]
application/todo/class_ApplicationHelper.php
application/todo/templates/de/code/action_login_logout.ctp [deleted file]
application/todo/templates/de/code/action_login_profile.ctp [deleted file]
application/todo/templates/de/code/action_login_status_problem.ctp [deleted file]
application/todo/templates/de/code/action_login_welcome.ctp [deleted file]
application/todo/templates/de/code/action_todo_login_logout.ctp [new file with mode: 0644]
application/todo/templates/de/code/action_todo_login_profile.ctp [new file with mode: 0644]
application/todo/templates/de/code/action_todo_login_status_problem.ctp [new file with mode: 0644]
application/todo/templates/de/code/action_todo_login_welcome.ctp [new file with mode: 0644]
inc/classes/main/application/.htaccess [new file with mode: 0644]
inc/classes/main/application/class_BaseApplication.php [new file with mode: 0644]
inc/classes/main/commands/web/class_WebLoginAreaCommand.php
inc/classes/main/helper/web/links/class_WebLinkHelper.php
inc/classes/main/resolver/action/class_BaseActionResolver.php

index 7ed6550..6621d2a 100644 (file)
@@ -23,10 +23,11 @@ application/admin/main/login/helper/class_AdminLoginHelper.php -text
 application/admin/starter.php -text
 application/admin/templates/.htaccess -text
 application/admin/templates/de/.htaccess -text
-application/admin/templates/de/code/action_login_logout.ctp -text
-application/admin/templates/de/code/action_login_profile.ctp -text
-application/admin/templates/de/code/action_login_status_problem.ctp -text
-application/admin/templates/de/code/action_login_welcome.ctp -text
+application/admin/templates/de/code/action_admin_login_logout.ctp -text
+application/admin/templates/de/code/action_admin_login_profile.ctp -text
+application/admin/templates/de/code/action_admin_login_status_problem.ctp -text
+application/admin/templates/de/code/action_admin_login_welcome.ctp -text
+application/admin/templates/de/code/action_admin_status_problem.ctp -text
 application/admin/templates/de/code/admin_main.ctp -text
 application/admin/templates/de/code/block_persona_data.ctp -text
 application/admin/templates/de/code/captch_graphic_code.ctp -text
@@ -65,10 +66,10 @@ application/blog/main/class_ -text
 application/blog/starter.php -text
 application/blog/templates/.htaccess -text
 application/blog/templates/de/.htaccess -text
-application/blog/templates/de/code/action_login_logout.ctp -text
-application/blog/templates/de/code/action_login_profile.ctp -text
-application/blog/templates/de/code/action_login_status_problem.ctp -text
-application/blog/templates/de/code/action_login_welcome.ctp -text
+application/blog/templates/de/code/action_blog_login_logout.ctp -text
+application/blog/templates/de/code/action_blog_login_profile.ctp -text
+application/blog/templates/de/code/action_blog_login_status_problem.ctp -text
+application/blog/templates/de/code/action_blog_login_welcome.ctp -text
 application/blog/templates/de/code/block_persona_data.ctp -text
 application/blog/templates/de/code/blog_main.ctp -text
 application/blog/templates/de/code/captch_graphic_code.ctp -text
@@ -155,9 +156,9 @@ application/ship-simu/main/actions/ship-simu/.htaccess -text
 application/ship-simu/main/actions/ship-simu/class_ShipSimuLoginAction.php -text
 application/ship-simu/main/actions/ship-simu/class_ShipSimuProfileAction.php -text
 application/ship-simu/main/actions/web/.htaccess -text
-application/ship-simu/main/actions/web/class_WebLogin -text
-application/ship-simu/main/actions/web/class_WebLoginCompanyAction.php -text
-application/ship-simu/main/actions/web/class_WebLoginRefillAction.php -text
+application/ship-simu/main/actions/web/class_WebShipSimuLogin -text
+application/ship-simu/main/actions/web/class_WebShipSimuLoginCompanyAction.php -text
+application/ship-simu/main/actions/web/class_WebShipSimuLoginRefillAction.php -text
 application/ship-simu/main/bank/.htaccess -text
 application/ship-simu/main/bank/class_MoneyBank.php -text
 application/ship-simu/main/class_ -text
@@ -254,12 +255,12 @@ application/ship-simu/main/wrapper/class_UserGovermentDatabaseWrapper.php -text
 application/ship-simu/starter.php -text
 application/ship-simu/templates/.htaccess -text
 application/ship-simu/templates/de/.htaccess -text
-application/ship-simu/templates/de/code/action_login_company.ctp -text
-application/ship-simu/templates/de/code/action_login_logout.ctp -text
-application/ship-simu/templates/de/code/action_login_profile.ctp -text
-application/ship-simu/templates/de/code/action_login_refill.ctp -text
-application/ship-simu/templates/de/code/action_login_status_problem.ctp -text
-application/ship-simu/templates/de/code/action_login_welcome.ctp -text
+application/ship-simu/templates/de/code/action_ship_simu_login_company.ctp -text
+application/ship-simu/templates/de/code/action_ship_simu_login_logout.ctp -text
+application/ship-simu/templates/de/code/action_ship_simu_login_profile.ctp -text
+application/ship-simu/templates/de/code/action_ship_simu_login_refill.ctp -text
+application/ship-simu/templates/de/code/action_ship_simu_login_status_problem.ctp -text
+application/ship-simu/templates/de/code/action_ship_simu_login_welcome.ctp -text
 application/ship-simu/templates/de/code/block_company_data.ctp -text
 application/ship-simu/templates/de/code/block_persona_data.ctp -text
 application/ship-simu/templates/de/code/captch_graphic_code.ctp -text
@@ -300,10 +301,10 @@ application/shoutbox/main/class_ -text
 application/shoutbox/starter.php -text
 application/shoutbox/templates/.htaccess -text
 application/shoutbox/templates/de/.htaccess -text
-application/shoutbox/templates/de/code/action_login_logout.ctp -text
-application/shoutbox/templates/de/code/action_login_profile.ctp -text
-application/shoutbox/templates/de/code/action_login_status_problem.ctp -text
-application/shoutbox/templates/de/code/action_login_welcome.ctp -text
+application/shoutbox/templates/de/code/action_shoutbox_login_logout.ctp -text
+application/shoutbox/templates/de/code/action_shoutbox_login_profile.ctp -text
+application/shoutbox/templates/de/code/action_shoutbox_login_status_problem.ctp -text
+application/shoutbox/templates/de/code/action_shoutbox_login_welcome.ctp -text
 application/shoutbox/templates/de/code/block_persona_data.ctp -text
 application/shoutbox/templates/de/code/captch_graphic_code.ctp -text
 application/shoutbox/templates/de/code/confirm_link.ctp -text
@@ -343,10 +344,10 @@ application/todo/main/class_ -text
 application/todo/starter.php -text
 application/todo/templates/.htaccess -text
 application/todo/templates/de/.htaccess -text
-application/todo/templates/de/code/action_login_logout.ctp -text
-application/todo/templates/de/code/action_login_profile.ctp -text
-application/todo/templates/de/code/action_login_status_problem.ctp -text
-application/todo/templates/de/code/action_login_welcome.ctp -text
+application/todo/templates/de/code/action_todo_login_logout.ctp -text
+application/todo/templates/de/code/action_todo_login_profile.ctp -text
+application/todo/templates/de/code/action_todo_login_status_problem.ctp -text
+application/todo/templates/de/code/action_todo_login_welcome.ctp -text
 application/todo/templates/de/code/block_persona_data.ctp -text
 application/todo/templates/de/code/captch_graphic_code.ctp -text
 application/todo/templates/de/code/confirm_link.ctp -text
@@ -595,6 +596,8 @@ inc/classes/main/actions/post_registration/.htaccess -text
 inc/classes/main/actions/post_registration/class_LoginAfterRegistrationAction.php -text
 inc/classes/main/actions/web/.htaccess -text
 inc/classes/main/actions/web/class_WebLoginProfileAction.php -text
+inc/classes/main/application/.htaccess -text
+inc/classes/main/application/class_BaseApplication.php -text
 inc/classes/main/auth/.htaccess -text
 inc/classes/main/auth/class_CookieAuth.php -text
 inc/classes/main/cache/.htaccess -text
index 35888cd..c041e08 100644 (file)
@@ -39,7 +39,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-class ApplicationHelper extends BaseFrameworkSystem implements ManageableApplication {
+class ApplicationHelper extends BaseApplication implements ManageableApplication, Registerable {
        /**
         * The version number of this application
         */
@@ -78,10 +78,6 @@ class ApplicationHelper extends BaseFrameworkSystem implements ManageableApplica
        protected function __construct () {
                // Call parent constructor
                parent::__construct(__CLASS__);
-
-               // Tidy up a little
-               $this->removeSystemArray();
-               $this->removeNumberFormaters();
        }
 
        /**
diff --git a/application/admin/templates/de/code/action_admin_login_logout.ctp b/application/admin/templates/de/code/action_admin_login_logout.ctp
new file mode 100644 (file)
index 0000000..07431f5
--- /dev/null
@@ -0,0 +1,30 @@
+<?php
+// Get helper instance
+$helper = WebLinkHelper::createWebLinkHelper($this, 'logout_now_link', 'index.php?app={?app_short_name?}&amp;page=logout');
+
+// Set link text
+$helper->addLinkWithTextById('logout_now_link_text');
+
+// Flush the content
+$helper->flushContent();
+
+// Get helper instance
+$helper = WebLinkHelper::createWebLinkHelper($this, 'return_login_link', 'index.php?app={?app_short_name?}&amp;page=login_area');
+
+// Set link text
+$helper->addLinkWithTextById('return_login_link_text');
+
+// Flush the content
+$helper->flushContent();
+
+// [EOF]
+?>
+<div id="logout_box">
+       <div id="logout_header">
+               Willst du dich wirklich aus dem {?app_full_name?} aussloggen?
+       </div>
+
+       <div id="logout_links">
+               {?logout_now_link?} | {?return_login_link?}
+       </div>
+</div>
diff --git a/application/admin/templates/de/code/action_admin_login_profile.ctp b/application/admin/templates/de/code/action_admin_login_profile.ctp
new file mode 100644 (file)
index 0000000..7e7fd47
--- /dev/null
@@ -0,0 +1,117 @@
+<?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.
+$helper = WebFormHelper::createWebFormHelper($this, "admin_profile");
+
+// Pre-fetch field data with a given registry key
+$helper->prefetchValueInstance('user');
+
+// Password can only be changed when the old one is entered and new one twice!
+$helper->addFormGroup('pass', "Neues Passwort einrichten:");
+$helper->addFormSubGroup('pass', "Bitte gebe zum &Auml;ndern deines Passwortes zweimal das gew&uuml;nschte neue Passwort ein.");
+$helper->addFieldText('pass1', "Neues Passwort:");
+$helper->addInputPasswordField('pass1');
+$helper->addFieldText('pass2', "Neues Passwort, Wiederholung:");
+$helper->addInputPasswordField('pass2');
+
+// Display current email
+$helper->addFormNote('current_email', "Derzeitige Email-Adresse: <span id=\"displayed_field\">".$helper->getValueField('email')."</span>");
+
+// Only for changing email address
+if ($helper->ifEmailChangeAllowed()) {
+       $helper->addFormGroup('email', "&Auml;nderung deiner Email-Addresse:");
+       $helper->addFormSubGroup('email', "Gebe nur deine Email-Adresse zweimal ein, wenn du diese &auml;ndern m&ouml;chtest!");
+       $helper->addFieldText('email1', "Email-Adresse:");
+       $helper->addInputTextField('email1');
+       $helper->addFieldText('email2', "Wiederholung Email-Adresse:");
+       $helper->addInputTextField('email2');
+
+       if ($helper->ifEmailMustBeUnique()) {
+               $helper->addFormNote('email', "Die von dir eingegebene Email-Adresse darf nur einmal im {?app_full_name?} verwendet worden sein.");
+       } // END - Unique email addresses
+
+       if ($helper->ifEmailChangeRequireConfirmation()) {
+               $helper->addFormNote('confirm_link', "Es wird ein Best&auml;tigungslink an deine neue Email-Adresse gesendet. Bitte klicke diesen dann m&ouml;glichst schnell an.");
+       } // END - Change requires confirmation
+} // END - email change allowed
+
+$helper->addFormGroup('profile', "Hier kannst du deine Profildaten &auml;ndern.");
+
+// Persoenliche Daten mit in der Anmeldung abfragen?
+if ($helper->ifRegisterIncludesPersonaData()) {
+       $helper->addFormSubGroup('persona', "Wenn du magst, dann vervollst&auml;ndige deine komplette Adresse mit deinem Namen.");
+       $helper->addFieldText('surname', "Dein Vorname:");
+       $helper->addInputTextFieldWithDefault('surname');
+       $helper->addFieldText('family', "Dein Nachname:");
+       $helper->addInputTextFieldWithDefault('family');
+       $helper->addFieldText('street', "Strasse und Hausnummer:");
+       $helper->addInputTextFieldWithDefault('street');
+       $helper->addFieldText('city', "Wohnort:");
+       $helper->addInputTextFieldWithDefault('city');
+} // END - Persona data
+
+$helper->addFormSubGroup('zip', "Magst du uns auch deine Postleitzahl verraten?");
+$helper->addFieldText('zip', "Postleitzahl:");
+$helper->addInputTextFieldWithDefault('zip');
+
+$helper->addFormSubGroup('chat', "Gebe hier deine Nicknames bzw. Nummern an:");
+
+if ($helper->ifChatEnabled('icq')) {
+       $helper->addFieldText('icq', "ICQ-Nummer:");
+       $helper->addInputTextFieldWithDefault('icq');
+} // END - if
+
+if ($helper->ifChatEnabled('jabber')) {
+       $helper->addFieldText('jabber', "Jabber:");
+       $helper->addInputTextFieldWithDefault('jabber');
+} // END - if
+
+if ($helper->ifChatEnabled('yahoo')) {
+       $helper->addFieldText('yahoo', "Yahoo!:");
+       $helper->addInputTextFieldWithDefault('yahoo');
+} // END - if
+
+if ($helper->ifChatEnabled('aol')) {
+       $helper->addFieldText('aol', "AOL-Screenname:");
+       $helper->addInputTextFieldWithDefault('aol');
+} // END - if
+
+if ($helper->ifChatEnabled('msn')) {
+       $helper->addFieldText('msn', "MSN:");
+       $helper->addInputTextFieldWithDefault('msn');
+} // END - if
+
+if (!$helper->ifRegisterRequiresEmailVerification()) {
+       $helper->addFormExtraNote(1, "Die Benachrichtigungen per sind im Loginbereich verfeinerbar, welche du genau haben willst.");
+} // END - Extra note
+
+// Rules already accepted?
+if ($helper->ifRulesHaveChanged()) {
+       $helper->addFormGroup('rules', "Bitte lese dir die Administrationsregeln gut durch und kreuze dann &quot;Ja, ich akzeptiere die aktuellen Administrationsregeln&quot; an.");
+       $helper->addFieldText('rules', "Ja, ich akzeptiere die aktuellen Administrationsregeln:");
+       $helper->addInputCheckboxField('rules', false);
+} else {
+       $helper->addFormNote('rules_accepted', "Du hast die aktuellen Administrationsregeln akzeptiert. Vielen Dank!");
+       $helper->addInputHiddenField('rules', "1");
+}
+
+// Ask again for current account password
+$helper->addFormGroup('pass_old', "Bitte gebe zur Best&auml;tigung der &Auml;nderungen dein derzeitiges Passwort ein.");
+$helper->addFieldText('pass_old', "Altes Passwort:");
+$helper->addInputPasswordField('pass_old');
+
+// Abschliessender Hinweis und Abschluss des Formulars
+$helper->addFormGroup('buttons', "Sind alle Daten nun korrekt eingegeben? Dann sende sie mit einem Klick einfach ab!");
+$helper->addInputResetButton("Alles nochmal eingeben");
+$helper->addInputSubmitButton("Accountdaten aktualisieren");
+$helper->addFormNote('data_protection', "Deine Daten werden nach den g&uuml;ltigen Datenschutzgesetzten gespeichert und werden nicht an Dritte weitergegeben. Weiteres dazu siehe Link &quot;Datenschutz&quot;.");
+$helper->flushContent();
+?>
+<div id="content_header">
+       Deine Profildaten bearbeiten
+</div>
+
+<div id="profile_box">
+       {?admin_profile?}
+</div>
diff --git a/application/admin/templates/de/code/action_admin_login_status_problem.ctp b/application/admin/templates/de/code/action_admin_login_status_problem.ctp
new file mode 100644 (file)
index 0000000..4c57125
--- /dev/null
@@ -0,0 +1,61 @@
+<?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.
+$helper = WebFormHelper::createWebFormHelper($this, "resend_link");
+
+// Pre-fetch field data with a given registry key
+$helper->prefetchValueInstance('user');
+
+// Add submit button or notice
+if ($helper->ifUserAccountUnconfirmed()) {
+       // Add submit button
+       $helper->addInputHiddenFieldWithDefault('email');
+       $helper->addInputSubmitButton("Best&auml;tigungslink erneut aussenden");
+} elseif ($helper->ifUserAccountLocked()) {
+       // Account is locked
+       $helper->addFormNote('status_locked', "Dein Account wurde gesperrt! Grund der Sperre:
+               <span id=\"lock_reason\">".$helper->getValueField('lock_reason')."</span>
+               Bitte melde dich beim Support, damit dieser dir weiterhelfen kann."
+       );
+}
+
+// Flush content and automatically close the form
+$helper->flushContent();
+
+if ($helper->ifUserAccountUnconfirmed()) {
+       // Build the form for confirmation
+       $helper = WebFormHelper::createWebFormHelper($this, "confirm_code");
+
+       // Add code box
+       $helper->addFormGroup('code', "Bitte gebe hier den Best&auml;tigungscode aus der Willkommensemail ein. Solltest du diese nicht erhalten haben, kannst du dir diesen jetzt zusenden lassen.");
+       $helper->addFieldText('code', "Best&auml;tigungscode aus der Mail:");
+       $helper->addInputTextField('code');
+
+       // Add submit button
+       $helper->addFormGroup('buttons', "Bitte einmal abschicken und das Ergebnis abwarten!");
+       $helper->addInputResetButton("Nochmal eingeben");
+       $helper->addInputSubmitButton("Best&auml;tigungscode absenden");
+
+       // Flush content and automatically close the form
+       $helper->flushContent();
+} // END - if
+?>
+<div id="content_header">
+       Problem mit deinem Account gefunden:
+</div>
+
+<div id="status_box">
+       Du bist m&ouml;glicherweise f&uuml;r deine ausgew&auml;hlte Aktion nicht
+       berechtigt oder du hast noch deine Email-Adresse nicht best&auml;tigt. Du
+       kannst dir nun den Best&auml;tigungslink erneut aussenden lassen, oder den
+       Best&auml;tigungscode unten eingeben.
+
+       <div id="resend_link_box">
+               {?resend_link?}
+       </div>
+
+       <div id="confirm_code_box">
+               {?confirm_code?}
+       </div>
+</div>
diff --git a/application/admin/templates/de/code/action_admin_login_welcome.ctp b/application/admin/templates/de/code/action_admin_login_welcome.ctp
new file mode 100644 (file)
index 0000000..749b239
--- /dev/null
@@ -0,0 +1,13 @@
+<div id="overview_frame">
+       {?admin_overview?}
+</div>
+
+<div id="updates_frame">
+       <div id="updates_header">
+               {?updates_header?}
+       </div>
+
+       <div id="updates_content">
+               {?updates_content?}
+       </div>
+</div>
diff --git a/application/admin/templates/de/code/action_admin_status_problem.ctp b/application/admin/templates/de/code/action_admin_status_problem.ctp
new file mode 100644 (file)
index 0000000..4c57125
--- /dev/null
@@ -0,0 +1,61 @@
+<?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.
+$helper = WebFormHelper::createWebFormHelper($this, "resend_link");
+
+// Pre-fetch field data with a given registry key
+$helper->prefetchValueInstance('user');
+
+// Add submit button or notice
+if ($helper->ifUserAccountUnconfirmed()) {
+       // Add submit button
+       $helper->addInputHiddenFieldWithDefault('email');
+       $helper->addInputSubmitButton("Best&auml;tigungslink erneut aussenden");
+} elseif ($helper->ifUserAccountLocked()) {
+       // Account is locked
+       $helper->addFormNote('status_locked', "Dein Account wurde gesperrt! Grund der Sperre:
+               <span id=\"lock_reason\">".$helper->getValueField('lock_reason')."</span>
+               Bitte melde dich beim Support, damit dieser dir weiterhelfen kann."
+       );
+}
+
+// Flush content and automatically close the form
+$helper->flushContent();
+
+if ($helper->ifUserAccountUnconfirmed()) {
+       // Build the form for confirmation
+       $helper = WebFormHelper::createWebFormHelper($this, "confirm_code");
+
+       // Add code box
+       $helper->addFormGroup('code', "Bitte gebe hier den Best&auml;tigungscode aus der Willkommensemail ein. Solltest du diese nicht erhalten haben, kannst du dir diesen jetzt zusenden lassen.");
+       $helper->addFieldText('code', "Best&auml;tigungscode aus der Mail:");
+       $helper->addInputTextField('code');
+
+       // Add submit button
+       $helper->addFormGroup('buttons', "Bitte einmal abschicken und das Ergebnis abwarten!");
+       $helper->addInputResetButton("Nochmal eingeben");
+       $helper->addInputSubmitButton("Best&auml;tigungscode absenden");
+
+       // Flush content and automatically close the form
+       $helper->flushContent();
+} // END - if
+?>
+<div id="content_header">
+       Problem mit deinem Account gefunden:
+</div>
+
+<div id="status_box">
+       Du bist m&ouml;glicherweise f&uuml;r deine ausgew&auml;hlte Aktion nicht
+       berechtigt oder du hast noch deine Email-Adresse nicht best&auml;tigt. Du
+       kannst dir nun den Best&auml;tigungslink erneut aussenden lassen, oder den
+       Best&auml;tigungscode unten eingeben.
+
+       <div id="resend_link_box">
+               {?resend_link?}
+       </div>
+
+       <div id="confirm_code_box">
+               {?confirm_code?}
+       </div>
+</div>
diff --git a/application/admin/templates/de/code/action_login_logout.ctp b/application/admin/templates/de/code/action_login_logout.ctp
deleted file mode 100644 (file)
index 07431f5..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-// Get helper instance
-$helper = WebLinkHelper::createWebLinkHelper($this, 'logout_now_link', 'index.php?app={?app_short_name?}&amp;page=logout');
-
-// Set link text
-$helper->addLinkWithTextById('logout_now_link_text');
-
-// Flush the content
-$helper->flushContent();
-
-// Get helper instance
-$helper = WebLinkHelper::createWebLinkHelper($this, 'return_login_link', 'index.php?app={?app_short_name?}&amp;page=login_area');
-
-// Set link text
-$helper->addLinkWithTextById('return_login_link_text');
-
-// Flush the content
-$helper->flushContent();
-
-// [EOF]
-?>
-<div id="logout_box">
-       <div id="logout_header">
-               Willst du dich wirklich aus dem {?app_full_name?} aussloggen?
-       </div>
-
-       <div id="logout_links">
-               {?logout_now_link?} | {?return_login_link?}
-       </div>
-</div>
diff --git a/application/admin/templates/de/code/action_login_profile.ctp b/application/admin/templates/de/code/action_login_profile.ctp
deleted file mode 100644 (file)
index 7e7fd47..0000000
+++ /dev/null
@@ -1,117 +0,0 @@
-<?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.
-$helper = WebFormHelper::createWebFormHelper($this, "admin_profile");
-
-// Pre-fetch field data with a given registry key
-$helper->prefetchValueInstance('user');
-
-// Password can only be changed when the old one is entered and new one twice!
-$helper->addFormGroup('pass', "Neues Passwort einrichten:");
-$helper->addFormSubGroup('pass', "Bitte gebe zum &Auml;ndern deines Passwortes zweimal das gew&uuml;nschte neue Passwort ein.");
-$helper->addFieldText('pass1', "Neues Passwort:");
-$helper->addInputPasswordField('pass1');
-$helper->addFieldText('pass2', "Neues Passwort, Wiederholung:");
-$helper->addInputPasswordField('pass2');
-
-// Display current email
-$helper->addFormNote('current_email', "Derzeitige Email-Adresse: <span id=\"displayed_field\">".$helper->getValueField('email')."</span>");
-
-// Only for changing email address
-if ($helper->ifEmailChangeAllowed()) {
-       $helper->addFormGroup('email', "&Auml;nderung deiner Email-Addresse:");
-       $helper->addFormSubGroup('email', "Gebe nur deine Email-Adresse zweimal ein, wenn du diese &auml;ndern m&ouml;chtest!");
-       $helper->addFieldText('email1', "Email-Adresse:");
-       $helper->addInputTextField('email1');
-       $helper->addFieldText('email2', "Wiederholung Email-Adresse:");
-       $helper->addInputTextField('email2');
-
-       if ($helper->ifEmailMustBeUnique()) {
-               $helper->addFormNote('email', "Die von dir eingegebene Email-Adresse darf nur einmal im {?app_full_name?} verwendet worden sein.");
-       } // END - Unique email addresses
-
-       if ($helper->ifEmailChangeRequireConfirmation()) {
-               $helper->addFormNote('confirm_link', "Es wird ein Best&auml;tigungslink an deine neue Email-Adresse gesendet. Bitte klicke diesen dann m&ouml;glichst schnell an.");
-       } // END - Change requires confirmation
-} // END - email change allowed
-
-$helper->addFormGroup('profile', "Hier kannst du deine Profildaten &auml;ndern.");
-
-// Persoenliche Daten mit in der Anmeldung abfragen?
-if ($helper->ifRegisterIncludesPersonaData()) {
-       $helper->addFormSubGroup('persona', "Wenn du magst, dann vervollst&auml;ndige deine komplette Adresse mit deinem Namen.");
-       $helper->addFieldText('surname', "Dein Vorname:");
-       $helper->addInputTextFieldWithDefault('surname');
-       $helper->addFieldText('family', "Dein Nachname:");
-       $helper->addInputTextFieldWithDefault('family');
-       $helper->addFieldText('street', "Strasse und Hausnummer:");
-       $helper->addInputTextFieldWithDefault('street');
-       $helper->addFieldText('city', "Wohnort:");
-       $helper->addInputTextFieldWithDefault('city');
-} // END - Persona data
-
-$helper->addFormSubGroup('zip', "Magst du uns auch deine Postleitzahl verraten?");
-$helper->addFieldText('zip', "Postleitzahl:");
-$helper->addInputTextFieldWithDefault('zip');
-
-$helper->addFormSubGroup('chat', "Gebe hier deine Nicknames bzw. Nummern an:");
-
-if ($helper->ifChatEnabled('icq')) {
-       $helper->addFieldText('icq', "ICQ-Nummer:");
-       $helper->addInputTextFieldWithDefault('icq');
-} // END - if
-
-if ($helper->ifChatEnabled('jabber')) {
-       $helper->addFieldText('jabber', "Jabber:");
-       $helper->addInputTextFieldWithDefault('jabber');
-} // END - if
-
-if ($helper->ifChatEnabled('yahoo')) {
-       $helper->addFieldText('yahoo', "Yahoo!:");
-       $helper->addInputTextFieldWithDefault('yahoo');
-} // END - if
-
-if ($helper->ifChatEnabled('aol')) {
-       $helper->addFieldText('aol', "AOL-Screenname:");
-       $helper->addInputTextFieldWithDefault('aol');
-} // END - if
-
-if ($helper->ifChatEnabled('msn')) {
-       $helper->addFieldText('msn', "MSN:");
-       $helper->addInputTextFieldWithDefault('msn');
-} // END - if
-
-if (!$helper->ifRegisterRequiresEmailVerification()) {
-       $helper->addFormExtraNote(1, "Die Benachrichtigungen per sind im Loginbereich verfeinerbar, welche du genau haben willst.");
-} // END - Extra note
-
-// Rules already accepted?
-if ($helper->ifRulesHaveChanged()) {
-       $helper->addFormGroup('rules', "Bitte lese dir die Administrationsregeln gut durch und kreuze dann &quot;Ja, ich akzeptiere die aktuellen Administrationsregeln&quot; an.");
-       $helper->addFieldText('rules', "Ja, ich akzeptiere die aktuellen Administrationsregeln:");
-       $helper->addInputCheckboxField('rules', false);
-} else {
-       $helper->addFormNote('rules_accepted', "Du hast die aktuellen Administrationsregeln akzeptiert. Vielen Dank!");
-       $helper->addInputHiddenField('rules', "1");
-}
-
-// Ask again for current account password
-$helper->addFormGroup('pass_old', "Bitte gebe zur Best&auml;tigung der &Auml;nderungen dein derzeitiges Passwort ein.");
-$helper->addFieldText('pass_old', "Altes Passwort:");
-$helper->addInputPasswordField('pass_old');
-
-// Abschliessender Hinweis und Abschluss des Formulars
-$helper->addFormGroup('buttons', "Sind alle Daten nun korrekt eingegeben? Dann sende sie mit einem Klick einfach ab!");
-$helper->addInputResetButton("Alles nochmal eingeben");
-$helper->addInputSubmitButton("Accountdaten aktualisieren");
-$helper->addFormNote('data_protection', "Deine Daten werden nach den g&uuml;ltigen Datenschutzgesetzten gespeichert und werden nicht an Dritte weitergegeben. Weiteres dazu siehe Link &quot;Datenschutz&quot;.");
-$helper->flushContent();
-?>
-<div id="content_header">
-       Deine Profildaten bearbeiten
-</div>
-
-<div id="profile_box">
-       {?admin_profile?}
-</div>
diff --git a/application/admin/templates/de/code/action_login_status_problem.ctp b/application/admin/templates/de/code/action_login_status_problem.ctp
deleted file mode 100644 (file)
index 4c57125..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-<?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.
-$helper = WebFormHelper::createWebFormHelper($this, "resend_link");
-
-// Pre-fetch field data with a given registry key
-$helper->prefetchValueInstance('user');
-
-// Add submit button or notice
-if ($helper->ifUserAccountUnconfirmed()) {
-       // Add submit button
-       $helper->addInputHiddenFieldWithDefault('email');
-       $helper->addInputSubmitButton("Best&auml;tigungslink erneut aussenden");
-} elseif ($helper->ifUserAccountLocked()) {
-       // Account is locked
-       $helper->addFormNote('status_locked', "Dein Account wurde gesperrt! Grund der Sperre:
-               <span id=\"lock_reason\">".$helper->getValueField('lock_reason')."</span>
-               Bitte melde dich beim Support, damit dieser dir weiterhelfen kann."
-       );
-}
-
-// Flush content and automatically close the form
-$helper->flushContent();
-
-if ($helper->ifUserAccountUnconfirmed()) {
-       // Build the form for confirmation
-       $helper = WebFormHelper::createWebFormHelper($this, "confirm_code");
-
-       // Add code box
-       $helper->addFormGroup('code', "Bitte gebe hier den Best&auml;tigungscode aus der Willkommensemail ein. Solltest du diese nicht erhalten haben, kannst du dir diesen jetzt zusenden lassen.");
-       $helper->addFieldText('code', "Best&auml;tigungscode aus der Mail:");
-       $helper->addInputTextField('code');
-
-       // Add submit button
-       $helper->addFormGroup('buttons', "Bitte einmal abschicken und das Ergebnis abwarten!");
-       $helper->addInputResetButton("Nochmal eingeben");
-       $helper->addInputSubmitButton("Best&auml;tigungscode absenden");
-
-       // Flush content and automatically close the form
-       $helper->flushContent();
-} // END - if
-?>
-<div id="content_header">
-       Problem mit deinem Account gefunden:
-</div>
-
-<div id="status_box">
-       Du bist m&ouml;glicherweise f&uuml;r deine ausgew&auml;hlte Aktion nicht
-       berechtigt oder du hast noch deine Email-Adresse nicht best&auml;tigt. Du
-       kannst dir nun den Best&auml;tigungslink erneut aussenden lassen, oder den
-       Best&auml;tigungscode unten eingeben.
-
-       <div id="resend_link_box">
-               {?resend_link?}
-       </div>
-
-       <div id="confirm_code_box">
-               {?confirm_code?}
-       </div>
-</div>
diff --git a/application/admin/templates/de/code/action_login_welcome.ctp b/application/admin/templates/de/code/action_login_welcome.ctp
deleted file mode 100644 (file)
index df64eaf..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-<div id="news_frame">
-       {?admin_login_news?}
-</div>
index fecb5d1..edfdab6 100644 (file)
@@ -34,14 +34,14 @@ $helper->flushContent();
 // End of all PHP commands
 ?>
 <div id="content_header">
-       Willkommen im Loginbereich zum {?app_full_name?}!
+       Willkommen zum {?app_full_name?}!
 </div>
 
 <div id="content_body">
        {?login_content?}
 </div>
 
-<div id="persona_data" title="Informationen zu Deinem Loginaccount">
+<div id="persona_data" title="Informationen zum Adminaccount">
        <div id="persona_header">
                Account-Infos:
        </div>
index fcbafe2..b14778f 100644 (file)
@@ -39,7 +39,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-class ApplicationHelper extends BaseFrameworkSystem implements ManageableApplication {
+class ApplicationHelper extends BaseApplication implements ManageableApplication, Registerable {
        /**
         * The version number of this application
         */
@@ -78,10 +78,6 @@ class ApplicationHelper extends BaseFrameworkSystem implements ManageableApplica
        protected function __construct () {
                // Call parent constructor
                parent::__construct(__CLASS__);
-
-               // Tidy up a little
-               $this->removeSystemArray();
-               $this->removeNumberFormaters();
        }
 
        /**
diff --git a/application/blog/templates/de/code/action_blog_login_logout.ctp b/application/blog/templates/de/code/action_blog_login_logout.ctp
new file mode 100644 (file)
index 0000000..4dd47d9
--- /dev/null
@@ -0,0 +1,30 @@
+<?php
+// Get helper instance
+$helper = WebLinkHelper::createWebLinkHelper($this, 'logout_now_link', 'index.php?app={?app_short_name?}&amp;page=logout');
+
+// Set link text
+$helper->addLinkWithTextById('logout_now_link_text');
+
+// Flush the content
+$helper->flushContent();
+
+// Get helper instance
+$helper = WebLinkHelper::createWebLinkHelper($this, 'return_login_link', 'index.php?app={?app_short_name?}&amp;page=login_area');
+
+// Set link text
+$helper->addLinkWithTextById('return_login_link_text');
+
+// Flush the content
+$helper->flushContent();
+
+// [EOF]
+?>
+<div id="logout_box">
+       <div id="logout_header">
+               Willst du dich wirklich aus dem Blog aussloggen?
+       </div>
+
+       <div id="logout_links">
+               {?logout_now_link?} | {?return_login_link?}
+       </div>
+</div>
diff --git a/application/blog/templates/de/code/action_blog_login_profile.ctp b/application/blog/templates/de/code/action_blog_login_profile.ctp
new file mode 100644 (file)
index 0000000..51d442f
--- /dev/null
@@ -0,0 +1,117 @@
+<?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.
+$helper = WebFormHelper::createWebFormHelper($this, "blog_profile");
+
+// Pre-fetch field data with a given registry key
+$helper->prefetchValueInstance('user');
+
+// Password can only be changed when the old one is entered and new one twice!
+$helper->addFormGroup('pass', "Neues Passwort einrichten:");
+$helper->addFormSubGroup('pass', "Bitte gebe zum &Auml;ndern deines Passwortes zweimal das gew&uuml;nschte neue Passwort ein.");
+$helper->addFieldText('pass1', "Neues Passwort:");
+$helper->addInputPasswordField('pass1');
+$helper->addFieldText('pass2', "Neues Passwort, Wiederholung:");
+$helper->addInputPasswordField('pass2');
+
+// Display current email
+$helper->addFormNote('current_email', "Derzeitige Email-Adresse: <span id=\"displayed_field\">".$helper->getValueField('email')."</span>");
+
+// Only for changing email address
+if ($helper->ifEmailChangeAllowed()) {
+       $helper->addFormGroup('email', "&Auml;nderung deiner Email-Addresse:");
+       $helper->addFormSubGroup('email', "Gebe nur deine Email-Adresse zweimal ein, wenn du diese &auml;ndern m&ouml;chtest!");
+       $helper->addFieldText('email1', "Email-Adresse:");
+       $helper->addInputTextField('email1');
+       $helper->addFieldText('email2', "Wiederholung Email-Adresse:");
+       $helper->addInputTextField('email2');
+
+       if ($helper->ifEmailMustBeUnique()) {
+               $helper->addFormNote('email', "Die von dir eingegebene Email-Adresse darf nur einmal im Blog verwendet worden sein.");
+       } // END - Unique email addresses
+
+       if ($helper->ifEmailChangeRequireConfirmation()) {
+               $helper->addFormNote('confirm_link', "Es wird ein Best&auml;tigungslink an deine neue Email-Adresse gesendet. Bitte klicke diesen dann m&ouml;glichst schnell an.");
+       } // END - Change requires confirmation
+} // END - email change allowed
+
+$helper->addFormGroup('profile', "Hier kannst du deine Profildaten &auml;ndern.");
+
+// Persoenliche Daten mit in der Anmeldung abfragen?
+if ($helper->ifRegisterIncludesPersonaData()) {
+       $helper->addFormSubGroup('persona', "Wenn du magst, dann vervollst&auml;ndige deine komplette Adresse mit deinem Namen.");
+       $helper->addFieldText('surname', "Dein Vorname:");
+       $helper->addInputTextFieldWithDefault('surname');
+       $helper->addFieldText('family', "Dein Nachname:");
+       $helper->addInputTextFieldWithDefault('family');
+       $helper->addFieldText('street', "Strasse und Hausnummer:");
+       $helper->addInputTextFieldWithDefault('street');
+       $helper->addFieldText('city', "Wohnort:");
+       $helper->addInputTextFieldWithDefault('city');
+} // END - Persona data
+
+$helper->addFormSubGroup('zip', "Magst du uns auch deine Postleitzahl verraten?");
+$helper->addFieldText('zip', "Postleitzahl:");
+$helper->addInputTextFieldWithDefault('zip');
+
+$helper->addFormSubGroup('chat', "Gebe hier deine Nicknames bzw. Nummern an:");
+
+if ($helper->ifChatEnabled('icq')) {
+       $helper->addFieldText('icq', "ICQ-Nummer:");
+       $helper->addInputTextFieldWithDefault('icq');
+} // END - if
+
+if ($helper->ifChatEnabled('jabber')) {
+       $helper->addFieldText('jabber', "Jabber:");
+       $helper->addInputTextFieldWithDefault('jabber');
+} // END - if
+
+if ($helper->ifChatEnabled('yahoo')) {
+       $helper->addFieldText('yahoo', "Yahoo!:");
+       $helper->addInputTextFieldWithDefault('yahoo');
+} // END - if
+
+if ($helper->ifChatEnabled('aol')) {
+       $helper->addFieldText('aol', "AOL-Screenname:");
+       $helper->addInputTextFieldWithDefault('aol');
+} // END - if
+
+if ($helper->ifChatEnabled('msn')) {
+       $helper->addFieldText('msn', "MSN:");
+       $helper->addInputTextFieldWithDefault('msn');
+} // END - if
+
+if (!$helper->ifRegisterRequiresEmailVerification()) {
+       $helper->addFormExtraNote(1, "Die Benachrichtigungen per sind im Loginbereich verfeinerbar, welche du genau haben willst.");
+} // END - Extra note
+
+// Rules already accepted?
+if ($helper->ifRulesHaveChanged()) {
+       $helper->addFormGroup('rules', "Bitte lese dir die Blogeregeln gut durch und kreuze dann &quot;Ja, ich akzeptiere die aktuellen Blogregeln&quot; an.");
+       $helper->addFieldText('rules', "Ja, ich akzeptiere die aktuellen Blogregeln:");
+       $helper->addInputCheckboxField('rules', false);
+} else {
+       $helper->addFormNote('rules_accepted', "Du hast die aktuellen Blogregeln akzeptiert. Vielen Dank!");
+       $helper->addInputHiddenField('rules', "1");
+}
+
+// Ask again for current account password
+$helper->addFormGroup('pass_old', "Bitte gebe zur Best&auml;tigung der &Auml;nderungen dein derzeitiges Passwort ein.");
+$helper->addFieldText('pass_old', "Altes Passwort:");
+$helper->addInputPasswordField('pass_old');
+
+// Abschliessender Hinweis und Abschluss des Formulars
+$helper->addFormGroup('buttons', "Sind alle Daten nun korrekt eingegeben? Dann sende sie mit einem Klick einfach ab!");
+$helper->addInputResetButton("Alles nochmal eingeben");
+$helper->addInputSubmitButton("Accountdaten aktualisieren");
+$helper->addFormNote('data_protection', "Deine Daten werden nach den g&uuml;ltigen Datenschutzgesetzten gespeichert und werden nicht an Dritte weitergegeben. Weiteres dazu siehe Link &quot;Datenschutz&quot;.");
+$helper->flushContent();
+?>
+<div id="content_header">
+       Deine Profildaten bearbeiten
+</div>
+
+<div id="profile_box">
+       {?blog_profile?}
+</div>
diff --git a/application/blog/templates/de/code/action_blog_login_status_problem.ctp b/application/blog/templates/de/code/action_blog_login_status_problem.ctp
new file mode 100644 (file)
index 0000000..88a47b1
--- /dev/null
@@ -0,0 +1,67 @@
+<?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.
+$helper = WebFormHelper::createWebFormHelper($this, "resend_link");
+
+// Pre-fetch field data with a given registry key
+$helper->prefetchValueInstance('user');
+
+// Add submit button or notice
+if ($helper->ifUserAccountUnconfirmed()) {
+       // Add submit button
+       $helper->addInputHiddenFieldWithDefault('email');
+       $helper->addInputSubmitButton("Best&auml;tigungslink erneut aussenden");
+} elseif ($helper->ifUserAccountLocked()) {
+       // Account is locked
+       $helper->addFormNote('status_locked', "Dein Account wurde gesperrt! Grund der Sperre:
+               <span id=\"lock_reason\">".$helper->getValueField('lock_reason')."</span>
+               Bitte melde dich beim Support, damit dieser dir weiterhelfen kann."
+       );
+} elseif ($helper->ifUserAccountGuest()) {
+       // Account is guest account
+       $helper->addFormNote('status_guest', "G&auml;steaccounts sind in der Funktionalit&auml;t
+               leicht eingeschr&auml;nkt. Bitte melde dich an, damit du ein
+               vollwertiges Account bekommst."
+       );
+}
+
+// Flush content and automatically close the form
+$helper->flushContent();
+
+if ($helper->ifUserAccountUnconfirmed()) {
+       // Build the form for confirmation
+       $helper = WebFormHelper::createWebFormHelper($this, "confirm_code");
+
+       // Add code box
+       $helper->addFormGroup('code', "Bitte gebe hier den Best&auml;tigungscode aus der Willkommensemail ein. Solltest du diese nicht erhalten haben, kannst du dir diesen jetzt zusenden lassen.");
+       $helper->addFieldText('code', "Best&auml;tigungscode aus der Mail:");
+       $helper->addInputTextField('code');
+
+       // Add submit button
+       $helper->addFormGroup('buttons', "Bitte einmal abschicken und das Ergebnis abwarten!");
+       $helper->addInputResetButton("Nochmal eingeben");
+       $helper->addInputSubmitButton("Best&auml;tigungscode absenden");
+
+       // Flush content and automatically close the form
+       $helper->flushContent();
+} // END - if
+?>
+<div id="content_header">
+       Problem mit deinem Account gefunden:
+</div>
+
+<div id="status_box">
+       Du bist m&ouml;glicherweise f&uuml;r deine ausgew&auml;hlte Aktion nicht
+       berechtigt oder du hast noch deine Email-Adresse nicht best&auml;tigt. Du
+       kannst dir nun den Best&auml;tigungslink erneut aussenden lassen, oder den
+       Best&auml;tigungscode unten eingeben.
+
+       <div id="resend_link_box">
+               {?resend_link?}
+       </div>
+
+       <div id="confirm_code_box">
+               {?confirm_code?}
+       </div>
+</div>
diff --git a/application/blog/templates/de/code/action_blog_login_welcome.ctp b/application/blog/templates/de/code/action_blog_login_welcome.ctp
new file mode 100644 (file)
index 0000000..f307fa8
--- /dev/null
@@ -0,0 +1,3 @@
+<div id="news_frame">
+       {?blog_login_news?}
+</div>
diff --git a/application/blog/templates/de/code/action_login_logout.ctp b/application/blog/templates/de/code/action_login_logout.ctp
deleted file mode 100644 (file)
index 4dd47d9..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-// Get helper instance
-$helper = WebLinkHelper::createWebLinkHelper($this, 'logout_now_link', 'index.php?app={?app_short_name?}&amp;page=logout');
-
-// Set link text
-$helper->addLinkWithTextById('logout_now_link_text');
-
-// Flush the content
-$helper->flushContent();
-
-// Get helper instance
-$helper = WebLinkHelper::createWebLinkHelper($this, 'return_login_link', 'index.php?app={?app_short_name?}&amp;page=login_area');
-
-// Set link text
-$helper->addLinkWithTextById('return_login_link_text');
-
-// Flush the content
-$helper->flushContent();
-
-// [EOF]
-?>
-<div id="logout_box">
-       <div id="logout_header">
-               Willst du dich wirklich aus dem Blog aussloggen?
-       </div>
-
-       <div id="logout_links">
-               {?logout_now_link?} | {?return_login_link?}
-       </div>
-</div>
diff --git a/application/blog/templates/de/code/action_login_profile.ctp b/application/blog/templates/de/code/action_login_profile.ctp
deleted file mode 100644 (file)
index 51d442f..0000000
+++ /dev/null
@@ -1,117 +0,0 @@
-<?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.
-$helper = WebFormHelper::createWebFormHelper($this, "blog_profile");
-
-// Pre-fetch field data with a given registry key
-$helper->prefetchValueInstance('user');
-
-// Password can only be changed when the old one is entered and new one twice!
-$helper->addFormGroup('pass', "Neues Passwort einrichten:");
-$helper->addFormSubGroup('pass', "Bitte gebe zum &Auml;ndern deines Passwortes zweimal das gew&uuml;nschte neue Passwort ein.");
-$helper->addFieldText('pass1', "Neues Passwort:");
-$helper->addInputPasswordField('pass1');
-$helper->addFieldText('pass2', "Neues Passwort, Wiederholung:");
-$helper->addInputPasswordField('pass2');
-
-// Display current email
-$helper->addFormNote('current_email', "Derzeitige Email-Adresse: <span id=\"displayed_field\">".$helper->getValueField('email')."</span>");
-
-// Only for changing email address
-if ($helper->ifEmailChangeAllowed()) {
-       $helper->addFormGroup('email', "&Auml;nderung deiner Email-Addresse:");
-       $helper->addFormSubGroup('email', "Gebe nur deine Email-Adresse zweimal ein, wenn du diese &auml;ndern m&ouml;chtest!");
-       $helper->addFieldText('email1', "Email-Adresse:");
-       $helper->addInputTextField('email1');
-       $helper->addFieldText('email2', "Wiederholung Email-Adresse:");
-       $helper->addInputTextField('email2');
-
-       if ($helper->ifEmailMustBeUnique()) {
-               $helper->addFormNote('email', "Die von dir eingegebene Email-Adresse darf nur einmal im Blog verwendet worden sein.");
-       } // END - Unique email addresses
-
-       if ($helper->ifEmailChangeRequireConfirmation()) {
-               $helper->addFormNote('confirm_link', "Es wird ein Best&auml;tigungslink an deine neue Email-Adresse gesendet. Bitte klicke diesen dann m&ouml;glichst schnell an.");
-       } // END - Change requires confirmation
-} // END - email change allowed
-
-$helper->addFormGroup('profile', "Hier kannst du deine Profildaten &auml;ndern.");
-
-// Persoenliche Daten mit in der Anmeldung abfragen?
-if ($helper->ifRegisterIncludesPersonaData()) {
-       $helper->addFormSubGroup('persona', "Wenn du magst, dann vervollst&auml;ndige deine komplette Adresse mit deinem Namen.");
-       $helper->addFieldText('surname', "Dein Vorname:");
-       $helper->addInputTextFieldWithDefault('surname');
-       $helper->addFieldText('family', "Dein Nachname:");
-       $helper->addInputTextFieldWithDefault('family');
-       $helper->addFieldText('street', "Strasse und Hausnummer:");
-       $helper->addInputTextFieldWithDefault('street');
-       $helper->addFieldText('city', "Wohnort:");
-       $helper->addInputTextFieldWithDefault('city');
-} // END - Persona data
-
-$helper->addFormSubGroup('zip', "Magst du uns auch deine Postleitzahl verraten?");
-$helper->addFieldText('zip', "Postleitzahl:");
-$helper->addInputTextFieldWithDefault('zip');
-
-$helper->addFormSubGroup('chat', "Gebe hier deine Nicknames bzw. Nummern an:");
-
-if ($helper->ifChatEnabled('icq')) {
-       $helper->addFieldText('icq', "ICQ-Nummer:");
-       $helper->addInputTextFieldWithDefault('icq');
-} // END - if
-
-if ($helper->ifChatEnabled('jabber')) {
-       $helper->addFieldText('jabber', "Jabber:");
-       $helper->addInputTextFieldWithDefault('jabber');
-} // END - if
-
-if ($helper->ifChatEnabled('yahoo')) {
-       $helper->addFieldText('yahoo', "Yahoo!:");
-       $helper->addInputTextFieldWithDefault('yahoo');
-} // END - if
-
-if ($helper->ifChatEnabled('aol')) {
-       $helper->addFieldText('aol', "AOL-Screenname:");
-       $helper->addInputTextFieldWithDefault('aol');
-} // END - if
-
-if ($helper->ifChatEnabled('msn')) {
-       $helper->addFieldText('msn', "MSN:");
-       $helper->addInputTextFieldWithDefault('msn');
-} // END - if
-
-if (!$helper->ifRegisterRequiresEmailVerification()) {
-       $helper->addFormExtraNote(1, "Die Benachrichtigungen per sind im Loginbereich verfeinerbar, welche du genau haben willst.");
-} // END - Extra note
-
-// Rules already accepted?
-if ($helper->ifRulesHaveChanged()) {
-       $helper->addFormGroup('rules', "Bitte lese dir die Blogeregeln gut durch und kreuze dann &quot;Ja, ich akzeptiere die aktuellen Blogregeln&quot; an.");
-       $helper->addFieldText('rules', "Ja, ich akzeptiere die aktuellen Blogregeln:");
-       $helper->addInputCheckboxField('rules', false);
-} else {
-       $helper->addFormNote('rules_accepted', "Du hast die aktuellen Blogregeln akzeptiert. Vielen Dank!");
-       $helper->addInputHiddenField('rules', "1");
-}
-
-// Ask again for current account password
-$helper->addFormGroup('pass_old', "Bitte gebe zur Best&auml;tigung der &Auml;nderungen dein derzeitiges Passwort ein.");
-$helper->addFieldText('pass_old', "Altes Passwort:");
-$helper->addInputPasswordField('pass_old');
-
-// Abschliessender Hinweis und Abschluss des Formulars
-$helper->addFormGroup('buttons', "Sind alle Daten nun korrekt eingegeben? Dann sende sie mit einem Klick einfach ab!");
-$helper->addInputResetButton("Alles nochmal eingeben");
-$helper->addInputSubmitButton("Accountdaten aktualisieren");
-$helper->addFormNote('data_protection', "Deine Daten werden nach den g&uuml;ltigen Datenschutzgesetzten gespeichert und werden nicht an Dritte weitergegeben. Weiteres dazu siehe Link &quot;Datenschutz&quot;.");
-$helper->flushContent();
-?>
-<div id="content_header">
-       Deine Profildaten bearbeiten
-</div>
-
-<div id="profile_box">
-       {?blog_profile?}
-</div>
diff --git a/application/blog/templates/de/code/action_login_status_problem.ctp b/application/blog/templates/de/code/action_login_status_problem.ctp
deleted file mode 100644 (file)
index 88a47b1..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-<?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.
-$helper = WebFormHelper::createWebFormHelper($this, "resend_link");
-
-// Pre-fetch field data with a given registry key
-$helper->prefetchValueInstance('user');
-
-// Add submit button or notice
-if ($helper->ifUserAccountUnconfirmed()) {
-       // Add submit button
-       $helper->addInputHiddenFieldWithDefault('email');
-       $helper->addInputSubmitButton("Best&auml;tigungslink erneut aussenden");
-} elseif ($helper->ifUserAccountLocked()) {
-       // Account is locked
-       $helper->addFormNote('status_locked', "Dein Account wurde gesperrt! Grund der Sperre:
-               <span id=\"lock_reason\">".$helper->getValueField('lock_reason')."</span>
-               Bitte melde dich beim Support, damit dieser dir weiterhelfen kann."
-       );
-} elseif ($helper->ifUserAccountGuest()) {
-       // Account is guest account
-       $helper->addFormNote('status_guest', "G&auml;steaccounts sind in der Funktionalit&auml;t
-               leicht eingeschr&auml;nkt. Bitte melde dich an, damit du ein
-               vollwertiges Account bekommst."
-       );
-}
-
-// Flush content and automatically close the form
-$helper->flushContent();
-
-if ($helper->ifUserAccountUnconfirmed()) {
-       // Build the form for confirmation
-       $helper = WebFormHelper::createWebFormHelper($this, "confirm_code");
-
-       // Add code box
-       $helper->addFormGroup('code', "Bitte gebe hier den Best&auml;tigungscode aus der Willkommensemail ein. Solltest du diese nicht erhalten haben, kannst du dir diesen jetzt zusenden lassen.");
-       $helper->addFieldText('code', "Best&auml;tigungscode aus der Mail:");
-       $helper->addInputTextField('code');
-
-       // Add submit button
-       $helper->addFormGroup('buttons', "Bitte einmal abschicken und das Ergebnis abwarten!");
-       $helper->addInputResetButton("Nochmal eingeben");
-       $helper->addInputSubmitButton("Best&auml;tigungscode absenden");
-
-       // Flush content and automatically close the form
-       $helper->flushContent();
-} // END - if
-?>
-<div id="content_header">
-       Problem mit deinem Account gefunden:
-</div>
-
-<div id="status_box">
-       Du bist m&ouml;glicherweise f&uuml;r deine ausgew&auml;hlte Aktion nicht
-       berechtigt oder du hast noch deine Email-Adresse nicht best&auml;tigt. Du
-       kannst dir nun den Best&auml;tigungslink erneut aussenden lassen, oder den
-       Best&auml;tigungscode unten eingeben.
-
-       <div id="resend_link_box">
-               {?resend_link?}
-       </div>
-
-       <div id="confirm_code_box">
-               {?confirm_code?}
-       </div>
-</div>
diff --git a/application/blog/templates/de/code/action_login_welcome.ctp b/application/blog/templates/de/code/action_login_welcome.ctp
deleted file mode 100644 (file)
index f307fa8..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-<div id="news_frame">
-       {?blog_login_news?}
-</div>
index d51ca02..005c1e6 100644 (file)
@@ -39,7 +39,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-class ApplicationHelper extends BaseFrameworkSystem implements ManageableApplication {
+class ApplicationHelper extends BaseApplication implements ManageableApplication, Registerable {
        /**
         * The version number of this application
         */
@@ -73,10 +73,6 @@ class ApplicationHelper extends BaseFrameworkSystem implements ManageableApplica
        protected function __construct () {
                // Call parent constructor
                parent::__construct(__CLASS__);
-
-               // Tidy up a little
-               $this->removeSystemArray();
-               $this->removeNumberFormaters();
        }
 
        /**
index c2651dc..bd51594 100644 (file)
@@ -39,7 +39,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-class ApplicationHelper extends BaseFrameworkSystem implements ManageableApplication {
+class ApplicationHelper extends BaseApplication implements ManageableApplication, Registerable {
        /**
         * The version number of this application
         */
@@ -78,10 +78,6 @@ class ApplicationHelper extends BaseFrameworkSystem implements ManageableApplica
        protected function __construct () {
                // Call parent constructor
                parent::__construct(__CLASS__);
-
-               // Tidy up a little
-               $this->removeSystemArray();
-               $this->removeNumberFormaters();
        }
 
        /**
index 0240453..dd52a7b 100644 (file)
@@ -307,8 +307,8 @@ $cfg->setConfigEntry('refill_page_active', "Y");
 // CFG: REFILL-PAGE-MIN-CURRENCY-AMOUNT
 $cfg->setConfigEntry('refill_page_min_currency_amount', 1000);
 
-// CFG: LOGIN-FILL-PAYMENT-DISCOVERY
-$cfg->setConfigEntry('login_refill_payment_discovery', "LocalPaymentDiscovery");
+// CFG: SHIP-SIMU-LOGIN-FILL-PAYMENT-DISCOVERY
+$cfg->setConfigEntry('ship_simu_login_refill_payment_discovery', "LocalPaymentDiscovery");
 
 // [EOF]
 ?>
index 6c45260..d6a5649 100644 (file)
@@ -51,9 +51,10 @@ class ShipSimuProfileAction extends BaseAction implements PerformableAction {
         * @param       $requestInstance        An instance of a class with an Requestable interface
         * @param       $responseInstance       An instance of a class with an Responseable interface
         * @return      void
+        * @todo        Maybe we need to do something later here */
         */
        public function execute (Requestable $requestInstance, Responseable $responseInstance) {
-               /* @TODO Maybe we need to do something later here */
+               // Empty for now
        }
 }
 
diff --git a/application/ship-simu/main/actions/web/class_WebLogin b/application/ship-simu/main/actions/web/class_WebLogin
deleted file mode 100644 (file)
index c234cd4..0000000
+++ /dev/null
@@ -1,78 +0,0 @@
-<?php
-/**
- * An action for 
- *
- * @author             Roland Haeder <webmaster@ship-simu.org>
- * @version            0.0.0
- * @copyright  Copyright (c) 2007, 2008 Roland Haeder, this is free software
- * @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/>.
- */
-class WebLogin???Action extends BaseAction implements Commandable, Registerable {
-       /**
-        * Protected constructor
-        *
-        * @return      void
-        */
-       protected function __construct () {
-               // Call parent constructor
-               parent::__construct(__CLASS__);
-       }
-
-       /**
-        * Creates an instance of this action
-        *
-        * @param       $resolverInstance       An instance of an action resolver
-        * @return      $actionInstance         An instance of this action class
-        */
-       public final static function createWebLogin???Action (ActionResolver $resolverInstance) {
-               // Get a new instance
-               $actionInstance = new WebLogin???Action();
-
-               // Set the resolver instance
-               $actionInstance->setResolverInstance($resolverInstance);
-
-               // Return the instance
-               return $actionInstance;
-       }
-
-       /**
-        * Executes the command with given request and response objects
-        *
-        * @param       $requestInstance        An instance of a class with an Requestable interface
-        * @param       $responseInstance       An instance of a class with an Responseable interface
-        * @return      void
-        * @todo        Maybe add fetching company list of current user here?
-        */
-       public function execute (Requestable $requestInstance, Responseable $responseInstance) {
-               // Unfinished method
-       }
-
-       /**
-        * Adds extra filters to the given controller instance
-        *
-        * @param       $controllerInstance             A controller instance
-        * @param       $requestInstance                An instance of a class with an Requestable interface
-        * @return      void
-        */
-       public function addExtraFilters (Controller $controllerInstance, Requestable $requestInstance) {
-               // Add user status filter here
-               $controllerInstance->addPreFilter(ObjectFactory::createObjectByConfiguredName('user_status_class'));
-       }
-}
-
-// [EOF]
-?>
diff --git a/application/ship-simu/main/actions/web/class_WebLoginCompanyAction.php b/application/ship-simu/main/actions/web/class_WebLoginCompanyAction.php
deleted file mode 100644 (file)
index edc7e19..0000000
+++ /dev/null
@@ -1,78 +0,0 @@
-<?php
-/**
- * An action for shipping company page
- *
- * @author             Roland Haeder <webmaster@ship-simu.org>
- * @version            0.0.0
- * @copyright  Copyright (c) 2007, 2008 Roland Haeder, this is free software
- * @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/>.
- */
-class WebLoginCompanyAction extends BaseAction implements Commandable, Registerable {
-       /**
-        * Protected constructor
-        *
-        * @return      void
-        */
-       protected function __construct () {
-               // Call parent constructor
-               parent::__construct(__CLASS__);
-       }
-
-       /**
-        * Creates an instance of this action
-        *
-        * @param       $resolverInstance       An instance of an action resolver
-        * @return      $actionInstance         An instance of this action class
-        */
-       public final static function createWebLoginCompanyAction (ActionResolver $resolverInstance) {
-               // Get a new instance
-               $actionInstance = new WebLoginCompanyAction();
-
-               // Set the resolver instance
-               $actionInstance->setResolverInstance($resolverInstance);
-
-               // Return the instance
-               return $actionInstance;
-       }
-
-       /**
-        * Executes the command with given request and response objects
-        *
-        * @param       $requestInstance        An instance of a class with an Requestable interface
-        * @param       $responseInstance       An instance of a class with an Responseable interface
-        * @return      void
-        * @todo        Maybe add fetching company list of current user here?
-        */
-       public function execute (Requestable $requestInstance, Responseable $responseInstance) {
-               // Unfinished method
-       }
-
-       /**
-        * Adds extra filters to the given controller instance
-        *
-        * @param       $controllerInstance             A controller instance
-        * @param       $requestInstance                An instance of a class with an Requestable interface
-        * @return      void
-        */
-       public function addExtraFilters (Controller $controllerInstance, Requestable $requestInstance) {
-               // Add user status filter here
-               $controllerInstance->addPreFilter(ObjectFactory::createObjectByConfiguredName('user_status_filter'));
-       }
-}
-
-// [EOF]
-?>
diff --git a/application/ship-simu/main/actions/web/class_WebLoginRefillAction.php b/application/ship-simu/main/actions/web/class_WebLoginRefillAction.php
deleted file mode 100644 (file)
index 77f18f5..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-<?php
-/**
- * An action for money refill page
- *
- * @author             Roland Haeder <webmaster@ship-simu.org>
- * @version            0.0.0
- * @copyright  Copyright (c) 2007, 2008 Roland Haeder, this is free software
- * @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/>.
- */
-class WebLoginRefillAction extends BaseAction implements Commandable, Registerable {
-       /**
-        * Protected constructor
-        *
-        * @return      void
-        */
-       protected function __construct () {
-               // Call parent constructor
-               parent::__construct(__CLASS__);
-       }
-
-       /**
-        * Creates an instance of this action
-        *
-        * @param       $resolverInstance       An instance of an action resolver
-        * @return      $actionInstance         An instance of this action class
-        */
-       public final static function createWebLoginRefillAction (ActionResolver $resolverInstance) {
-               // Get a new instance
-               $actionInstance = new WebLoginRefillAction();
-
-               // Set the resolver instance
-               $actionInstance->setResolverInstance($resolverInstance);
-
-               // Return the instance
-               return $actionInstance;
-       }
-
-       /**
-        * Executes the command with given request and response objects
-        *
-        * @param       $requestInstance        An instance of a class with an Requestable interface
-        * @param       $responseInstance       An instance of a class with an Responseable interface
-        * @return      void
-        * @todo        0% done
-        */
-       public function execute (Requestable $requestInstance, Responseable $responseInstance) {
-               // Unfinished method
-       }
-
-       /**
-        * Adds extra filters to the given controller instance
-        *
-        * @param       $controllerInstance             A controller instance
-        * @param       $requestInstance                An instance of a class with an Requestable interface
-        * @return      void
-        */
-       public function addExtraFilters (Controller $controllerInstance, Requestable $requestInstance) {
-               // Add user status filter here
-               $controllerInstance->addPreFilter(ObjectFactory::createObjectByConfiguredName('user_status_filter'));
-
-               // Is the refill page active?
-               $controllerInstance->addPreFilter(ObjectFactory::createObjectByConfiguredName('refill_page_filter'));
-
-               // Add payment discovery filter
-               $controllerInstance->addPreFilter(ObjectFactory::createObjectByConfiguredName('payment_discovery_filter', array($this)));
-       }
-}
-
-// [EOF]
-?>
diff --git a/application/ship-simu/main/actions/web/class_WebShipSimuLogin b/application/ship-simu/main/actions/web/class_WebShipSimuLogin
new file mode 100644 (file)
index 0000000..b2959ff
--- /dev/null
@@ -0,0 +1,78 @@
+<?php
+/**
+ * An action for 
+ *
+ * @author             Roland Haeder <webmaster@ship-simu.org>
+ * @version            0.0.0
+ * @copyright  Copyright (c) 2007, 2008 Roland Haeder, this is free software
+ * @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/>.
+ */
+class WebShipSimuLogin???Action extends BaseAction implements Commandable, Registerable {
+       /**
+        * Protected constructor
+        *
+        * @return      void
+        */
+       protected function __construct () {
+               // Call parent constructor
+               parent::__construct(__CLASS__);
+       }
+
+       /**
+        * Creates an instance of this action
+        *
+        * @param       $resolverInstance       An instance of an action resolver
+        * @return      $actionInstance         An instance of this action class
+        */
+       public final static function createWebShipSimuLogin???Action (ActionResolver $resolverInstance) {
+               // Get a new instance
+               $actionInstance = new WebShipSimuLogin???Action();
+
+               // Set the resolver instance
+               $actionInstance->setResolverInstance($resolverInstance);
+
+               // Return the instance
+               return $actionInstance;
+       }
+
+       /**
+        * Executes the command with given request and response objects
+        *
+        * @param       $requestInstance        An instance of a class with an Requestable interface
+        * @param       $responseInstance       An instance of a class with an Responseable interface
+        * @return      void
+        * @todo        Maybe add fetching company list of current user here?
+        */
+       public function execute (Requestable $requestInstance, Responseable $responseInstance) {
+               // Unfinished method
+       }
+
+       /**
+        * Adds extra filters to the given controller instance
+        *
+        * @param       $controllerInstance             A controller instance
+        * @param       $requestInstance                An instance of a class with an Requestable interface
+        * @return      void
+        */
+       public function addExtraFilters (Controller $controllerInstance, Requestable $requestInstance) {
+               // Add user status filter here
+               $controllerInstance->addPreFilter(ObjectFactory::createObjectByConfiguredName('user_status_class'));
+       }
+}
+
+// [EOF]
+?>
diff --git a/application/ship-simu/main/actions/web/class_WebShipSimuLoginCompanyAction.php b/application/ship-simu/main/actions/web/class_WebShipSimuLoginCompanyAction.php
new file mode 100644 (file)
index 0000000..e416055
--- /dev/null
@@ -0,0 +1,78 @@
+<?php
+/**
+ * An action for shipping company page
+ *
+ * @author             Roland Haeder <webmaster@ship-simu.org>
+ * @version            0.0.0
+ * @copyright  Copyright (c) 2007, 2008 Roland Haeder, this is free software
+ * @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/>.
+ */
+class WebShipSimuLoginCompanyAction extends BaseAction implements Commandable, Registerable {
+       /**
+        * Protected constructor
+        *
+        * @return      void
+        */
+       protected function __construct () {
+               // Call parent constructor
+               parent::__construct(__CLASS__);
+       }
+
+       /**
+        * Creates an instance of this action
+        *
+        * @param       $resolverInstance       An instance of an action resolver
+        * @return      $actionInstance         An instance of this action class
+        */
+       public final static function createWebShipSimuLoginCompanyAction (ActionResolver $resolverInstance) {
+               // Get a new instance
+               $actionInstance = new WebShipSimuLoginCompanyAction();
+
+               // Set the resolver instance
+               $actionInstance->setResolverInstance($resolverInstance);
+
+               // Return the instance
+               return $actionInstance;
+       }
+
+       /**
+        * Executes the command with given request and response objects
+        *
+        * @param       $requestInstance        An instance of a class with an Requestable interface
+        * @param       $responseInstance       An instance of a class with an Responseable interface
+        * @return      void
+        * @todo        Maybe add fetching company list of current user here?
+        */
+       public function execute (Requestable $requestInstance, Responseable $responseInstance) {
+               // Unfinished method
+       }
+
+       /**
+        * Adds extra filters to the given controller instance
+        *
+        * @param       $controllerInstance             A controller instance
+        * @param       $requestInstance                An instance of a class with an Requestable interface
+        * @return      void
+        */
+       public function addExtraFilters (Controller $controllerInstance, Requestable $requestInstance) {
+               // Add user status filter here
+               $controllerInstance->addPreFilter(ObjectFactory::createObjectByConfiguredName('user_status_filter'));
+       }
+}
+
+// [EOF]
+?>
diff --git a/application/ship-simu/main/actions/web/class_WebShipSimuLoginRefillAction.php b/application/ship-simu/main/actions/web/class_WebShipSimuLoginRefillAction.php
new file mode 100644 (file)
index 0000000..fc25b95
--- /dev/null
@@ -0,0 +1,84 @@
+<?php
+/**
+ * An action for money refill page
+ *
+ * @author             Roland Haeder <webmaster@ship-simu.org>
+ * @version            0.0.0
+ * @copyright  Copyright (c) 2007, 2008 Roland Haeder, this is free software
+ * @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/>.
+ */
+class WebShipSimuLoginRefillAction extends BaseAction implements Commandable, Registerable {
+       /**
+        * Protected constructor
+        *
+        * @return      void
+        */
+       protected function __construct () {
+               // Call parent constructor
+               parent::__construct(__CLASS__);
+       }
+
+       /**
+        * Creates an instance of this action
+        *
+        * @param       $resolverInstance       An instance of an action resolver
+        * @return      $actionInstance         An instance of this action class
+        */
+       public final static function createWebShipSimuLoginRefillAction (ActionResolver $resolverInstance) {
+               // Get a new instance
+               $actionInstance = new WebShipSimuLoginRefillAction();
+
+               // Set the resolver instance
+               $actionInstance->setResolverInstance($resolverInstance);
+
+               // Return the instance
+               return $actionInstance;
+       }
+
+       /**
+        * Executes the command with given request and response objects
+        *
+        * @param       $requestInstance        An instance of a class with an Requestable interface
+        * @param       $responseInstance       An instance of a class with an Responseable interface
+        * @return      void
+        * @todo        0% done
+        */
+       public function execute (Requestable $requestInstance, Responseable $responseInstance) {
+               // Unfinished method
+       }
+
+       /**
+        * Adds extra filters to the given controller instance
+        *
+        * @param       $controllerInstance             A controller instance
+        * @param       $requestInstance                An instance of a class with an Requestable interface
+        * @return      void
+        */
+       public function addExtraFilters (Controller $controllerInstance, Requestable $requestInstance) {
+               // Add user status filter here
+               $controllerInstance->addPreFilter(ObjectFactory::createObjectByConfiguredName('user_status_filter'));
+
+               // Is the refill page active?
+               $controllerInstance->addPreFilter(ObjectFactory::createObjectByConfiguredName('refill_page_filter'));
+
+               // Add payment discovery filter
+               $controllerInstance->addPreFilter(ObjectFactory::createObjectByConfiguredName('payment_discovery_filter', array($this)));
+       }
+}
+
+// [EOF]
+?>
diff --git a/application/ship-simu/templates/de/code/action_login_company.ctp b/application/ship-simu/templates/de/code/action_login_company.ctp
deleted file mode 100644 (file)
index 63285af..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-<?php
-// Get a link helper instance
-$linkInstance = WebLinkHelper::createWebLinkHelper($this, 'company_links', 'index.php?app={?app_short_name?}&amp;page=login_area');
-
-// Prefetch the user data
-$linkInstance->prefetchValueInstance('user');
-
-// Add link group for company founder
-$linkInstance->addLinkGroup('company_founder', "Vielleicht willst du eine virtuelle Reederei gr&uuml;nden, um dich virtuell selbstst&auml;ndig zu machen?");
-
-// Maximum of allowed companies reached?
-if ($linkInstance->getValueInstance()->ifUserCreatedMaximumAllowedCompanies()) {
-       // No more companies allowed to found
-       $linkInstance->addLinkNote("Du hast zu viele Firmen gegr&uuml;ndet. Bitte denke &uuml;ber eine Fusion (Zusammenlegung) nach.");
-} elseif ($linkInstance->getValueInstance()->ifUserHasRequiredPoints('found_new_company')) {
-       // Enough money to found company
-       $linkInstance->addActionLink('company_found', "Gr&uuml;nde eine virtuelle Firma und mache dich (virtuell) selbstst&auml;ndig.");
-} else {
-       // No more money left for founding company so place link here to refill page/money bank
-       if ($linkInstance->getValueInstance()->ifUserAllowedTakeCreditsFromMoneyBank()) {
-               // Display link to money bank page
-               $linkInstance->addActionLink('moneybank', "Jetzt deinen Kredit tilgen.");
-       } elseif ($linkInstance->getValueInstance()->ifUserHasMaximumCreditsWithMoneyBank()) {
-               // Maximum credits reached which a money bank can lent
-               $linkInstance->addLinkNote("Die Bank kann dir kein Geld mehr leihen, bitte zahle es auch wieder zur&uuml;ck.");
-               $linkInstance->addActionLink('moneybank&amp;sub=payback_credits', "Jetzt deinen Kredit tilgen.");
-       } else {
-               // Money bank is closed!
-               $linkInstance->addLinkNote("Die Bank hat derzeit geschlossen. Bitte sp&auml;ter nochmal versuchen.");
-       }
-}
-
-// Add link group for goverment
-$linkInstance->addLinkGroup('goverment', "Bewerbe dich bei anderen Firmen und hole dir eine Starthilfe vom Staat ab wenn du nicht fl&uuml;ssig bist!");
-
-if ($linkInstance->getValueInstance()->ifUserHasRequiredPoints('write_applications')) {
-       // Enough money to write applications to other companies
-       $linkInstance->addActionLink('company_list', "Alle Firmen auflisten zum Bewerben.");
-} elseif ($linkInstance->getValueInstance()->ifGovermentPaysStartupHelp()) {
-       // Display link to goverment for startup help
-       $linkInstance->addActionLink('goverment&amp;sub=request&amp;request=startup_help', "Direkt zum Antragsformular f&uuml;r deine Starthilfe.");
-} else {
-       // Even goverment cannot help the gamer here
-       $linkInstance->addLinkNote("Leider kann dir der Staat nicht mehr weiterhelfen, dich zu bewerben, da du zu oft Starthilfen erhalten hast. Hier muss aber noch weiter am Spiel gearbeitet werden. :-)");
-}
-
-// Add link group for money bank
-$linkInstance->addLinkGroup('moneybank', "Leihe dir zu g&uuml;nstigen Zinsen virtuelles Geld aus, wenn du mehr brauchst!");
-
-if ($linkInstance->getValueInstance()->ifUserAllowedTakeCreditsFromMoneyBank()) {
-       // Display link to money bank page
-       $linkInstance->addActionLink('moneybank', "Jetzt deinen Kredit tilgen.");
-} elseif ($linkInstance->getValueInstance()->ifUserHasMaximumCreditsWithMoneyBank()) {
-       // Maximum credits reached which a money bank can lent
-       $linkInstance->addLinkNote("Die Bank kann dir kein Geld mehr leihen, bitte zahle es auch wieder zur&uuml;ck.");
-       $linkInstance->addActionLink('moneybank&amp;sub=payback_credits', "Jetzt deinen Kredit tilgen.");
-} else {
-       // Money bank is closed!
-       $linkInstance->addLinkNote("Die Bank hat derzeit geschlossen. Bitte sp&auml;ter nochmal versuchen.");
-}
-
-// Add link group for refill page
-$linkInstance->addLinkGroup('refill_page', "Hole dir virtuelles Geld von uns zu fairen Preisen!");
-
-if ($linkInstance->ifRefillPageActive()) {
-       // Display link to refill page
-       $linkInstance->addActionLink('refill', "Jetzt dein virtuelles Geld aufladen.");
-} else {
-       // Refill page not active
-       $linkInstance->addLinkNote("Das Aufladen ist derzeit nicht m&ouml;glich oder gest&ouml;rt und wurde von uns deaktiviert.");
-}
-
-// Flush content to the template
-$linkInstance->flushContent();
-
-// End of PHP commands
-?>
-<div class="table_main" id="list_companies">
-       <div class="table_header">
-               Auflistung der Reedereien, an denenen du dich beteiligst:
-       </div>
-
-       <div class="table_list">
-               {?company_list?}
-       </div>
-
-       <div class="table_footer">
-               {?company_links?}
-       </div>
-</div>
diff --git a/application/ship-simu/templates/de/code/action_login_logout.ctp b/application/ship-simu/templates/de/code/action_login_logout.ctp
deleted file mode 100644 (file)
index 8e43002..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-// Get helper instance
-$helper = WebLinkHelper::createWebLinkHelper($this, 'logout_now_link', 'index.php?app={?app_short_name?}&amp;page=logout');
-
-// Set link text
-$helper->addLinkWithTextById('logout_now_link_text');
-
-// Flush the content
-$helper->flushContent();
-
-// Get helper instance
-$helper = WebLinkHelper::createWebLinkHelper($this, 'return_login_link', 'index.php?app={?app_short_name?}&amp;page=login_area');
-
-// Set link text
-$helper->addLinkWithTextById('return_login_link_text');
-
-// Flush the content
-$helper->flushContent();
-
-// [EOF]
-?>
-<div id="logout_box">
-       <div id="logout_header">
-               Willst du dich wirklich aus dem Spiel aussloggen?
-       </div>
-
-       <div id="logout_links">
-               {?logout_now_link?} | {?return_login_link?}
-       </div>
-</div>
diff --git a/application/ship-simu/templates/de/code/action_login_profile.ctp b/application/ship-simu/templates/de/code/action_login_profile.ctp
deleted file mode 100644 (file)
index bb78982..0000000
+++ /dev/null
@@ -1,125 +0,0 @@
-<?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.
-$helper = WebFormHelper::createWebFormHelper($this, "shipsimu_profile");
-
-// Pre-fetch field data with a given registry key
-$helper->prefetchValueInstance('user');
-
-// Password can only be changed when the old one is entered and new one twice!
-$helper->addFormGroup('pass', "Neues Passwort einrichten:");
-$helper->addFormSubGroup('pass', "Bitte gebe zum &Auml;ndern deines Passwortes zweimal das gew&uuml;nschte neue Passwort ein.");
-$helper->addFieldText('pass1', "Neues Passwort:");
-$helper->addInputPasswordField('pass1');
-$helper->addFieldText('pass2', "Neues Passwort, Wiederholung:");
-$helper->addInputPasswordField('pass2');
-
-// Display current email
-$helper->addFormNote('current_email', "Derzeitige Email-Adresse: <span id=\"displayed_field\">".$helper->getValueField('email')."</span>");
-
-// Only for changing email address
-if ($helper->ifEmailChangeAllowed()) {
-       $helper->addFormGroup('email', "&Auml;nderung deiner Email-Addresse:");
-       $helper->addFormSubGroup('email', "Gebe nur deine Email-Adresse zweimal ein, wenn du diese &auml;ndern m&ouml;chtest!");
-       $helper->addFieldText('email1', "Email-Adresse:");
-       $helper->addInputTextField('email1');
-       $helper->addFieldText('email2', "Wiederholung Email-Adresse:");
-       $helper->addInputTextField('email2');
-
-       if ($helper->ifEmailMustBeUnique()) {
-               $helper->addFormNote('email', "Die von dir eingegebene Email-Adresse darf nur einmal im Spiel verwendet worden sein.");
-       } // END - Unique email addresses
-
-       if ($helper->ifEmailChangeRequireConfirmation()) {
-               $helper->addFormNote('confirm_link', "Es wird ein Best&auml;tigungslink an deine neue Email-Adresse gesendet. Bitte klicke diesen dann m&ouml;glichst schnell an.");
-       } // END - Change requires confirmation
-} // END - email change allowed
-
-// Add form group for user profile
-$helper->addFormGroup('profile', "Hier kannst du deine Profildaten &auml;ndern.");
-
-// Persoenliche Daten mit in der Anmeldung abfragen?
-if ($helper->ifRegisterIncludesPersonaData()) {
-       $helper->addFormSubGroup('persona', "Wenn du magst, dann vervollst&auml;ndige deine komplette Adresse mit deinem Namen.");
-       $helper->addFieldText('surname', "Dein Vorname:");
-       $helper->addInputTextFieldWithDefault('surname');
-       $helper->addFieldText('family', "Dein Nachname:");
-       $helper->addInputTextFieldWithDefault('family');
-       $helper->addFieldText('street', "Strasse und Hausnummer:");
-       $helper->addInputTextFieldWithDefault('street');
-       $helper->addFieldText('city', "Wohnort:");
-       $helper->addInputTextFieldWithDefault('city');
-} // END - Persona data
-
-// Add su group for zip code
-$helper->addFormSubGroup('zip', "Magst du uns auch deine Postleitzahl verraten?");
-$helper->addFieldText('zip', "Postleitzahl:");
-$helper->addInputTextFieldWithDefault('zip');
-
-// Add sub group for chat protocols
-$helper->addFormSubGroup('chat', "Gebe hier deine Nicknames bzw. Nummern an:");
-
-// Add ICQ chat?
-if ($helper->ifChatEnabled('icq')) {
-       $helper->addFieldText('icq', "ICQ-Nummer:");
-       $helper->addInputTextFieldWithDefault('icq');
-} // END - if
-
-// Add Jabber chat?
-if ($helper->ifChatEnabled('jabber')) {
-       $helper->addFieldText('jabber', "Jabber:");
-       $helper->addInputTextFieldWithDefault('jabber');
-} // END - if
-
-// Add Yahoo! chat?
-if ($helper->ifChatEnabled('yahoo')) {
-       $helper->addFieldText('yahoo', "Yahoo!:");
-       $helper->addInputTextFieldWithDefault('yahoo');
-} // END - if
-
-// Add AOL chat?
-if ($helper->ifChatEnabled('aol')) {
-       $helper->addFieldText('aol', "AOL-Screenname:");
-       $helper->addInputTextFieldWithDefault('aol');
-} // END - if
-
-// Add MSN chat?
-if ($helper->ifChatEnabled('msn')) {
-       $helper->addFieldText('msn', "MSN:");
-       $helper->addInputTextFieldWithDefault('msn');
-} // END - if
-
-if (!$helper->ifRegisterRequiresEmailVerification()) {
-       $helper->addFormExtraNote(1, "Die Benachrichtigungen per sind im Loginbereich verfeinerbar, welche du genau haben willst.");
-} // END - Extra note
-
-// Rules already accepted?
-if ($helper->ifRulesHaveChanged()) {
-       $helper->addFormGroup('rules', "Bitte lese dir die Spieleregeln gut durch und kreuze dann &quot;Ja, ich akzeptiere die aktuellen Spielregeln&quot; an.");
-       $helper->addFieldText('rules', "Ja, ich akzeptiere die aktuellen Spielregeln:");
-       $helper->addInputCheckboxField('rules', false);
-} else {
-       $helper->addFormNote('rules_accepted', "Du hast die aktuellen Spielregeln akzeptiert. Vielen Dank!");
-       $helper->addInputHiddenField('rules', "1");
-}
-
-// Ask again for current account password
-$helper->addFormGroup('pass_old', "Bitte gebe zur Best&auml;tigung der &Auml;nderungen dein derzeitiges Passwort ein.");
-$helper->addFieldText('pass_old', "Derzeitiges Passwort:");
-$helper->addInputPasswordField('pass_old');
-
-// Abschliessender Hinweis und Abschluss des Formulars
-$helper->addFormGroup('buttons', "Sind alle Daten nun korrekt eingegeben? Dann sende sie mit einem Klick einfach ab!");
-$helper->addInputResetButton("Alles nochmal eingeben");
-$helper->addInputSubmitButton("Accountdaten aktualisieren");
-$helper->addFormNote('data_protection', "Deine Daten werden nach den g&uuml;ltigen Datenschutzgesetzten gespeichert und werden nicht an Dritte weitergegeben. Weiteres dazu siehe Link &quot;Datenschutz&quot;.");
-$helper->flushContent();
-?>
-<div id="content_header">
-       Deine Profildaten bearbeiten
-</div>
-
-<div id="profile_box">
-       {?shipsimu_profile?}
-</div>
diff --git a/application/ship-simu/templates/de/code/action_login_refill.ctp b/application/ship-simu/templates/de/code/action_login_refill.ctp
deleted file mode 100644 (file)
index 305c404..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-<?php
-// Neue Helper-Instanz holen
-$helper = WebFormHelper::createWebFormHelper($this, 'refill_form');
-
-// Pre-fetch payment types
-$helper->prefetchValueInstance('payments');
-
-// Add form group
-$helper->addFormGroup('refill_form', "Bitte w&auml;hle aus, was du nachbestellen willst und gebe die Menge an.");
-
-// Add sub group
-$helper->addInputSelectField('type', "--- Bitte ausw&auml;hlen ---");
-
-// In-game currencies (if more than default add them here!)
-$helper->addSelectSubOption('currencies', "--- W&auml;hrungen ---");
-$helper->addSelectOption('currency', "{?currency?}");
-
-// Raw materials
-$helper->addSelectSubOption('raw_materials', "--- Rohstoffe ---");
-$helper->addSelectOption('raw_wood', "Holz");
-$helper->addSelectOption('raw_iron', "Metall");
-$helper->addSelectOption('raw_stones', "Steine");
-
-// This is needed to close the select tag
-$helper->addInputSelectField('type', "");
-
-// Field for amount
-$helper->addFormSubGroup('amount', "Gebe hier in ganzen Zahlen die Menge an, die du nachbestellen willst.");
-$helper->addInputTextField('amount', 1000);
-
-// Add payments
-$helper->getValueInstance()->addResultsToHelper($helper);
-
-// Ask again for current account password
-$helper->addFormGroup('pass_old', "Bitte gebe zur Best&auml;tigung der Nachbestellung dein derzeitiges Passwort ein.");
-$helper->addFieldText('pass_old', "Derzeitiges Passwort:");
-$helper->addInputPasswordField('pass_old');
-
-// CAPTCHA enbaled?
-if ($helper->ifFormSecuredWithCaptcha()) {
-       $helper->addFormGroup('captcha_refill', "Bitte wiederhole den angezeigten Code:");
-       $helper->addCaptcha();
-} // END - if
-
-// Submit button
-$helper->addFormGroup('buttons_refill', "Mit Absenden des Formulars wird deine Nachbestellung verbindlich!");
-$helper->addInputResetButton("Eingaben l&ouml;schen");
-$helper->addInputSubmitButton("Nachbestellung verbindlich aufgeben");
-$helper->flushContent();
-?>
-<div id="refill_frame">
-       <div class="content_header">
-               Jetzt dein {?currency?}-Konto aufladen!
-       </div>
-       <div class="content_body">
-               {?refill_form?}
-       </div>
-</div>
diff --git a/application/ship-simu/templates/de/code/action_login_status_problem.ctp b/application/ship-simu/templates/de/code/action_login_status_problem.ctp
deleted file mode 100644 (file)
index 88a47b1..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-<?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.
-$helper = WebFormHelper::createWebFormHelper($this, "resend_link");
-
-// Pre-fetch field data with a given registry key
-$helper->prefetchValueInstance('user');
-
-// Add submit button or notice
-if ($helper->ifUserAccountUnconfirmed()) {
-       // Add submit button
-       $helper->addInputHiddenFieldWithDefault('email');
-       $helper->addInputSubmitButton("Best&auml;tigungslink erneut aussenden");
-} elseif ($helper->ifUserAccountLocked()) {
-       // Account is locked
-       $helper->addFormNote('status_locked', "Dein Account wurde gesperrt! Grund der Sperre:
-               <span id=\"lock_reason\">".$helper->getValueField('lock_reason')."</span>
-               Bitte melde dich beim Support, damit dieser dir weiterhelfen kann."
-       );
-} elseif ($helper->ifUserAccountGuest()) {
-       // Account is guest account
-       $helper->addFormNote('status_guest', "G&auml;steaccounts sind in der Funktionalit&auml;t
-               leicht eingeschr&auml;nkt. Bitte melde dich an, damit du ein
-               vollwertiges Account bekommst."
-       );
-}
-
-// Flush content and automatically close the form
-$helper->flushContent();
-
-if ($helper->ifUserAccountUnconfirmed()) {
-       // Build the form for confirmation
-       $helper = WebFormHelper::createWebFormHelper($this, "confirm_code");
-
-       // Add code box
-       $helper->addFormGroup('code', "Bitte gebe hier den Best&auml;tigungscode aus der Willkommensemail ein. Solltest du diese nicht erhalten haben, kannst du dir diesen jetzt zusenden lassen.");
-       $helper->addFieldText('code', "Best&auml;tigungscode aus der Mail:");
-       $helper->addInputTextField('code');
-
-       // Add submit button
-       $helper->addFormGroup('buttons', "Bitte einmal abschicken und das Ergebnis abwarten!");
-       $helper->addInputResetButton("Nochmal eingeben");
-       $helper->addInputSubmitButton("Best&auml;tigungscode absenden");
-
-       // Flush content and automatically close the form
-       $helper->flushContent();
-} // END - if
-?>
-<div id="content_header">
-       Problem mit deinem Account gefunden:
-</div>
-
-<div id="status_box">
-       Du bist m&ouml;glicherweise f&uuml;r deine ausgew&auml;hlte Aktion nicht
-       berechtigt oder du hast noch deine Email-Adresse nicht best&auml;tigt. Du
-       kannst dir nun den Best&auml;tigungslink erneut aussenden lassen, oder den
-       Best&auml;tigungscode unten eingeben.
-
-       <div id="resend_link_box">
-               {?resend_link?}
-       </div>
-
-       <div id="confirm_code_box">
-               {?confirm_code?}
-       </div>
-</div>
diff --git a/application/ship-simu/templates/de/code/action_login_welcome.ctp b/application/ship-simu/templates/de/code/action_login_welcome.ctp
deleted file mode 100644 (file)
index 64c04da..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-<div id="news_frame">
-       {?ship_simu_login_news?}
-</div>
diff --git a/application/ship-simu/templates/de/code/action_ship_simu_login_company.ctp b/application/ship-simu/templates/de/code/action_ship_simu_login_company.ctp
new file mode 100644 (file)
index 0000000..63285af
--- /dev/null
@@ -0,0 +1,90 @@
+<?php
+// Get a link helper instance
+$linkInstance = WebLinkHelper::createWebLinkHelper($this, 'company_links', 'index.php?app={?app_short_name?}&amp;page=login_area');
+
+// Prefetch the user data
+$linkInstance->prefetchValueInstance('user');
+
+// Add link group for company founder
+$linkInstance->addLinkGroup('company_founder', "Vielleicht willst du eine virtuelle Reederei gr&uuml;nden, um dich virtuell selbstst&auml;ndig zu machen?");
+
+// Maximum of allowed companies reached?
+if ($linkInstance->getValueInstance()->ifUserCreatedMaximumAllowedCompanies()) {
+       // No more companies allowed to found
+       $linkInstance->addLinkNote("Du hast zu viele Firmen gegr&uuml;ndet. Bitte denke &uuml;ber eine Fusion (Zusammenlegung) nach.");
+} elseif ($linkInstance->getValueInstance()->ifUserHasRequiredPoints('found_new_company')) {
+       // Enough money to found company
+       $linkInstance->addActionLink('company_found', "Gr&uuml;nde eine virtuelle Firma und mache dich (virtuell) selbstst&auml;ndig.");
+} else {
+       // No more money left for founding company so place link here to refill page/money bank
+       if ($linkInstance->getValueInstance()->ifUserAllowedTakeCreditsFromMoneyBank()) {
+               // Display link to money bank page
+               $linkInstance->addActionLink('moneybank', "Jetzt deinen Kredit tilgen.");
+       } elseif ($linkInstance->getValueInstance()->ifUserHasMaximumCreditsWithMoneyBank()) {
+               // Maximum credits reached which a money bank can lent
+               $linkInstance->addLinkNote("Die Bank kann dir kein Geld mehr leihen, bitte zahle es auch wieder zur&uuml;ck.");
+               $linkInstance->addActionLink('moneybank&amp;sub=payback_credits', "Jetzt deinen Kredit tilgen.");
+       } else {
+               // Money bank is closed!
+               $linkInstance->addLinkNote("Die Bank hat derzeit geschlossen. Bitte sp&auml;ter nochmal versuchen.");
+       }
+}
+
+// Add link group for goverment
+$linkInstance->addLinkGroup('goverment', "Bewerbe dich bei anderen Firmen und hole dir eine Starthilfe vom Staat ab wenn du nicht fl&uuml;ssig bist!");
+
+if ($linkInstance->getValueInstance()->ifUserHasRequiredPoints('write_applications')) {
+       // Enough money to write applications to other companies
+       $linkInstance->addActionLink('company_list', "Alle Firmen auflisten zum Bewerben.");
+} elseif ($linkInstance->getValueInstance()->ifGovermentPaysStartupHelp()) {
+       // Display link to goverment for startup help
+       $linkInstance->addActionLink('goverment&amp;sub=request&amp;request=startup_help', "Direkt zum Antragsformular f&uuml;r deine Starthilfe.");
+} else {
+       // Even goverment cannot help the gamer here
+       $linkInstance->addLinkNote("Leider kann dir der Staat nicht mehr weiterhelfen, dich zu bewerben, da du zu oft Starthilfen erhalten hast. Hier muss aber noch weiter am Spiel gearbeitet werden. :-)");
+}
+
+// Add link group for money bank
+$linkInstance->addLinkGroup('moneybank', "Leihe dir zu g&uuml;nstigen Zinsen virtuelles Geld aus, wenn du mehr brauchst!");
+
+if ($linkInstance->getValueInstance()->ifUserAllowedTakeCreditsFromMoneyBank()) {
+       // Display link to money bank page
+       $linkInstance->addActionLink('moneybank', "Jetzt deinen Kredit tilgen.");
+} elseif ($linkInstance->getValueInstance()->ifUserHasMaximumCreditsWithMoneyBank()) {
+       // Maximum credits reached which a money bank can lent
+       $linkInstance->addLinkNote("Die Bank kann dir kein Geld mehr leihen, bitte zahle es auch wieder zur&uuml;ck.");
+       $linkInstance->addActionLink('moneybank&amp;sub=payback_credits', "Jetzt deinen Kredit tilgen.");
+} else {
+       // Money bank is closed!
+       $linkInstance->addLinkNote("Die Bank hat derzeit geschlossen. Bitte sp&auml;ter nochmal versuchen.");
+}
+
+// Add link group for refill page
+$linkInstance->addLinkGroup('refill_page', "Hole dir virtuelles Geld von uns zu fairen Preisen!");
+
+if ($linkInstance->ifRefillPageActive()) {
+       // Display link to refill page
+       $linkInstance->addActionLink('refill', "Jetzt dein virtuelles Geld aufladen.");
+} else {
+       // Refill page not active
+       $linkInstance->addLinkNote("Das Aufladen ist derzeit nicht m&ouml;glich oder gest&ouml;rt und wurde von uns deaktiviert.");
+}
+
+// Flush content to the template
+$linkInstance->flushContent();
+
+// End of PHP commands
+?>
+<div class="table_main" id="list_companies">
+       <div class="table_header">
+               Auflistung der Reedereien, an denenen du dich beteiligst:
+       </div>
+
+       <div class="table_list">
+               {?company_list?}
+       </div>
+
+       <div class="table_footer">
+               {?company_links?}
+       </div>
+</div>
diff --git a/application/ship-simu/templates/de/code/action_ship_simu_login_logout.ctp b/application/ship-simu/templates/de/code/action_ship_simu_login_logout.ctp
new file mode 100644 (file)
index 0000000..8e43002
--- /dev/null
@@ -0,0 +1,30 @@
+<?php
+// Get helper instance
+$helper = WebLinkHelper::createWebLinkHelper($this, 'logout_now_link', 'index.php?app={?app_short_name?}&amp;page=logout');
+
+// Set link text
+$helper->addLinkWithTextById('logout_now_link_text');
+
+// Flush the content
+$helper->flushContent();
+
+// Get helper instance
+$helper = WebLinkHelper::createWebLinkHelper($this, 'return_login_link', 'index.php?app={?app_short_name?}&amp;page=login_area');
+
+// Set link text
+$helper->addLinkWithTextById('return_login_link_text');
+
+// Flush the content
+$helper->flushContent();
+
+// [EOF]
+?>
+<div id="logout_box">
+       <div id="logout_header">
+               Willst du dich wirklich aus dem Spiel aussloggen?
+       </div>
+
+       <div id="logout_links">
+               {?logout_now_link?} | {?return_login_link?}
+       </div>
+</div>
diff --git a/application/ship-simu/templates/de/code/action_ship_simu_login_profile.ctp b/application/ship-simu/templates/de/code/action_ship_simu_login_profile.ctp
new file mode 100644 (file)
index 0000000..bb78982
--- /dev/null
@@ -0,0 +1,125 @@
+<?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.
+$helper = WebFormHelper::createWebFormHelper($this, "shipsimu_profile");
+
+// Pre-fetch field data with a given registry key
+$helper->prefetchValueInstance('user');
+
+// Password can only be changed when the old one is entered and new one twice!
+$helper->addFormGroup('pass', "Neues Passwort einrichten:");
+$helper->addFormSubGroup('pass', "Bitte gebe zum &Auml;ndern deines Passwortes zweimal das gew&uuml;nschte neue Passwort ein.");
+$helper->addFieldText('pass1', "Neues Passwort:");
+$helper->addInputPasswordField('pass1');
+$helper->addFieldText('pass2', "Neues Passwort, Wiederholung:");
+$helper->addInputPasswordField('pass2');
+
+// Display current email
+$helper->addFormNote('current_email', "Derzeitige Email-Adresse: <span id=\"displayed_field\">".$helper->getValueField('email')."</span>");
+
+// Only for changing email address
+if ($helper->ifEmailChangeAllowed()) {
+       $helper->addFormGroup('email', "&Auml;nderung deiner Email-Addresse:");
+       $helper->addFormSubGroup('email', "Gebe nur deine Email-Adresse zweimal ein, wenn du diese &auml;ndern m&ouml;chtest!");
+       $helper->addFieldText('email1', "Email-Adresse:");
+       $helper->addInputTextField('email1');
+       $helper->addFieldText('email2', "Wiederholung Email-Adresse:");
+       $helper->addInputTextField('email2');
+
+       if ($helper->ifEmailMustBeUnique()) {
+               $helper->addFormNote('email', "Die von dir eingegebene Email-Adresse darf nur einmal im Spiel verwendet worden sein.");
+       } // END - Unique email addresses
+
+       if ($helper->ifEmailChangeRequireConfirmation()) {
+               $helper->addFormNote('confirm_link', "Es wird ein Best&auml;tigungslink an deine neue Email-Adresse gesendet. Bitte klicke diesen dann m&ouml;glichst schnell an.");
+       } // END - Change requires confirmation
+} // END - email change allowed
+
+// Add form group for user profile
+$helper->addFormGroup('profile', "Hier kannst du deine Profildaten &auml;ndern.");
+
+// Persoenliche Daten mit in der Anmeldung abfragen?
+if ($helper->ifRegisterIncludesPersonaData()) {
+       $helper->addFormSubGroup('persona', "Wenn du magst, dann vervollst&auml;ndige deine komplette Adresse mit deinem Namen.");
+       $helper->addFieldText('surname', "Dein Vorname:");
+       $helper->addInputTextFieldWithDefault('surname');
+       $helper->addFieldText('family', "Dein Nachname:");
+       $helper->addInputTextFieldWithDefault('family');
+       $helper->addFieldText('street', "Strasse und Hausnummer:");
+       $helper->addInputTextFieldWithDefault('street');
+       $helper->addFieldText('city', "Wohnort:");
+       $helper->addInputTextFieldWithDefault('city');
+} // END - Persona data
+
+// Add su group for zip code
+$helper->addFormSubGroup('zip', "Magst du uns auch deine Postleitzahl verraten?");
+$helper->addFieldText('zip', "Postleitzahl:");
+$helper->addInputTextFieldWithDefault('zip');
+
+// Add sub group for chat protocols
+$helper->addFormSubGroup('chat', "Gebe hier deine Nicknames bzw. Nummern an:");
+
+// Add ICQ chat?
+if ($helper->ifChatEnabled('icq')) {
+       $helper->addFieldText('icq', "ICQ-Nummer:");
+       $helper->addInputTextFieldWithDefault('icq');
+} // END - if
+
+// Add Jabber chat?
+if ($helper->ifChatEnabled('jabber')) {
+       $helper->addFieldText('jabber', "Jabber:");
+       $helper->addInputTextFieldWithDefault('jabber');
+} // END - if
+
+// Add Yahoo! chat?
+if ($helper->ifChatEnabled('yahoo')) {
+       $helper->addFieldText('yahoo', "Yahoo!:");
+       $helper->addInputTextFieldWithDefault('yahoo');
+} // END - if
+
+// Add AOL chat?
+if ($helper->ifChatEnabled('aol')) {
+       $helper->addFieldText('aol', "AOL-Screenname:");
+       $helper->addInputTextFieldWithDefault('aol');
+} // END - if
+
+// Add MSN chat?
+if ($helper->ifChatEnabled('msn')) {
+       $helper->addFieldText('msn', "MSN:");
+       $helper->addInputTextFieldWithDefault('msn');
+} // END - if
+
+if (!$helper->ifRegisterRequiresEmailVerification()) {
+       $helper->addFormExtraNote(1, "Die Benachrichtigungen per sind im Loginbereich verfeinerbar, welche du genau haben willst.");
+} // END - Extra note
+
+// Rules already accepted?
+if ($helper->ifRulesHaveChanged()) {
+       $helper->addFormGroup('rules', "Bitte lese dir die Spieleregeln gut durch und kreuze dann &quot;Ja, ich akzeptiere die aktuellen Spielregeln&quot; an.");
+       $helper->addFieldText('rules', "Ja, ich akzeptiere die aktuellen Spielregeln:");
+       $helper->addInputCheckboxField('rules', false);
+} else {
+       $helper->addFormNote('rules_accepted', "Du hast die aktuellen Spielregeln akzeptiert. Vielen Dank!");
+       $helper->addInputHiddenField('rules', "1");
+}
+
+// Ask again for current account password
+$helper->addFormGroup('pass_old', "Bitte gebe zur Best&auml;tigung der &Auml;nderungen dein derzeitiges Passwort ein.");
+$helper->addFieldText('pass_old', "Derzeitiges Passwort:");
+$helper->addInputPasswordField('pass_old');
+
+// Abschliessender Hinweis und Abschluss des Formulars
+$helper->addFormGroup('buttons', "Sind alle Daten nun korrekt eingegeben? Dann sende sie mit einem Klick einfach ab!");
+$helper->addInputResetButton("Alles nochmal eingeben");
+$helper->addInputSubmitButton("Accountdaten aktualisieren");
+$helper->addFormNote('data_protection', "Deine Daten werden nach den g&uuml;ltigen Datenschutzgesetzten gespeichert und werden nicht an Dritte weitergegeben. Weiteres dazu siehe Link &quot;Datenschutz&quot;.");
+$helper->flushContent();
+?>
+<div id="content_header">
+       Deine Profildaten bearbeiten
+</div>
+
+<div id="profile_box">
+       {?shipsimu_profile?}
+</div>
diff --git a/application/ship-simu/templates/de/code/action_ship_simu_login_refill.ctp b/application/ship-simu/templates/de/code/action_ship_simu_login_refill.ctp
new file mode 100644 (file)
index 0000000..305c404
--- /dev/null
@@ -0,0 +1,58 @@
+<?php
+// Neue Helper-Instanz holen
+$helper = WebFormHelper::createWebFormHelper($this, 'refill_form');
+
+// Pre-fetch payment types
+$helper->prefetchValueInstance('payments');
+
+// Add form group
+$helper->addFormGroup('refill_form', "Bitte w&auml;hle aus, was du nachbestellen willst und gebe die Menge an.");
+
+// Add sub group
+$helper->addInputSelectField('type', "--- Bitte ausw&auml;hlen ---");
+
+// In-game currencies (if more than default add them here!)
+$helper->addSelectSubOption('currencies', "--- W&auml;hrungen ---");
+$helper->addSelectOption('currency', "{?currency?}");
+
+// Raw materials
+$helper->addSelectSubOption('raw_materials', "--- Rohstoffe ---");
+$helper->addSelectOption('raw_wood', "Holz");
+$helper->addSelectOption('raw_iron', "Metall");
+$helper->addSelectOption('raw_stones', "Steine");
+
+// This is needed to close the select tag
+$helper->addInputSelectField('type', "");
+
+// Field for amount
+$helper->addFormSubGroup('amount', "Gebe hier in ganzen Zahlen die Menge an, die du nachbestellen willst.");
+$helper->addInputTextField('amount', 1000);
+
+// Add payments
+$helper->getValueInstance()->addResultsToHelper($helper);
+
+// Ask again for current account password
+$helper->addFormGroup('pass_old', "Bitte gebe zur Best&auml;tigung der Nachbestellung dein derzeitiges Passwort ein.");
+$helper->addFieldText('pass_old', "Derzeitiges Passwort:");
+$helper->addInputPasswordField('pass_old');
+
+// CAPTCHA enbaled?
+if ($helper->ifFormSecuredWithCaptcha()) {
+       $helper->addFormGroup('captcha_refill', "Bitte wiederhole den angezeigten Code:");
+       $helper->addCaptcha();
+} // END - if
+
+// Submit button
+$helper->addFormGroup('buttons_refill', "Mit Absenden des Formulars wird deine Nachbestellung verbindlich!");
+$helper->addInputResetButton("Eingaben l&ouml;schen");
+$helper->addInputSubmitButton("Nachbestellung verbindlich aufgeben");
+$helper->flushContent();
+?>
+<div id="refill_frame">
+       <div class="content_header">
+               Jetzt dein {?currency?}-Konto aufladen!
+       </div>
+       <div class="content_body">
+               {?refill_form?}
+       </div>
+</div>
diff --git a/application/ship-simu/templates/de/code/action_ship_simu_login_status_problem.ctp b/application/ship-simu/templates/de/code/action_ship_simu_login_status_problem.ctp
new file mode 100644 (file)
index 0000000..88a47b1
--- /dev/null
@@ -0,0 +1,67 @@
+<?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.
+$helper = WebFormHelper::createWebFormHelper($this, "resend_link");
+
+// Pre-fetch field data with a given registry key
+$helper->prefetchValueInstance('user');
+
+// Add submit button or notice
+if ($helper->ifUserAccountUnconfirmed()) {
+       // Add submit button
+       $helper->addInputHiddenFieldWithDefault('email');
+       $helper->addInputSubmitButton("Best&auml;tigungslink erneut aussenden");
+} elseif ($helper->ifUserAccountLocked()) {
+       // Account is locked
+       $helper->addFormNote('status_locked', "Dein Account wurde gesperrt! Grund der Sperre:
+               <span id=\"lock_reason\">".$helper->getValueField('lock_reason')."</span>
+               Bitte melde dich beim Support, damit dieser dir weiterhelfen kann."
+       );
+} elseif ($helper->ifUserAccountGuest()) {
+       // Account is guest account
+       $helper->addFormNote('status_guest', "G&auml;steaccounts sind in der Funktionalit&auml;t
+               leicht eingeschr&auml;nkt. Bitte melde dich an, damit du ein
+               vollwertiges Account bekommst."
+       );
+}
+
+// Flush content and automatically close the form
+$helper->flushContent();
+
+if ($helper->ifUserAccountUnconfirmed()) {
+       // Build the form for confirmation
+       $helper = WebFormHelper::createWebFormHelper($this, "confirm_code");
+
+       // Add code box
+       $helper->addFormGroup('code', "Bitte gebe hier den Best&auml;tigungscode aus der Willkommensemail ein. Solltest du diese nicht erhalten haben, kannst du dir diesen jetzt zusenden lassen.");
+       $helper->addFieldText('code', "Best&auml;tigungscode aus der Mail:");
+       $helper->addInputTextField('code');
+
+       // Add submit button
+       $helper->addFormGroup('buttons', "Bitte einmal abschicken und das Ergebnis abwarten!");
+       $helper->addInputResetButton("Nochmal eingeben");
+       $helper->addInputSubmitButton("Best&auml;tigungscode absenden");
+
+       // Flush content and automatically close the form
+       $helper->flushContent();
+} // END - if
+?>
+<div id="content_header">
+       Problem mit deinem Account gefunden:
+</div>
+
+<div id="status_box">
+       Du bist m&ouml;glicherweise f&uuml;r deine ausgew&auml;hlte Aktion nicht
+       berechtigt oder du hast noch deine Email-Adresse nicht best&auml;tigt. Du
+       kannst dir nun den Best&auml;tigungslink erneut aussenden lassen, oder den
+       Best&auml;tigungscode unten eingeben.
+
+       <div id="resend_link_box">
+               {?resend_link?}
+       </div>
+
+       <div id="confirm_code_box">
+               {?confirm_code?}
+       </div>
+</div>
diff --git a/application/ship-simu/templates/de/code/action_ship_simu_login_welcome.ctp b/application/ship-simu/templates/de/code/action_ship_simu_login_welcome.ctp
new file mode 100644 (file)
index 0000000..64c04da
--- /dev/null
@@ -0,0 +1,3 @@
+<div id="news_frame">
+       {?ship_simu_login_news?}
+</div>
index 1dbc550..4adc321 100644 (file)
@@ -39,7 +39,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-class ApplicationHelper extends BaseFrameworkSystem implements ManageableApplication {
+class ApplicationHelper extends BaseApplication implements ManageableApplication, Registerable {
        /**
         * The version number of this application
         */
@@ -78,10 +78,6 @@ class ApplicationHelper extends BaseFrameworkSystem implements ManageableApplica
        protected function __construct () {
                // Call parent constructor
                parent::__construct(__CLASS__);
-
-               // Tidy up a little
-               $this->removeSystemArray();
-               $this->removeNumberFormaters();
        }
 
        /**
diff --git a/application/shoutbox/templates/de/code/action_login_logout.ctp b/application/shoutbox/templates/de/code/action_login_logout.ctp
deleted file mode 100644 (file)
index fcf3d45..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-// Get helper instance
-$helper = WebLinkHelper::createWebLinkHelper($this, 'logout_now_link', 'index.php?app={?app_short_name?}&amp;page=logout');
-
-// Set link text
-$helper->addLinkWithTextById('logout_now_link_text');
-
-// Flush the content
-$helper->flushContent();
-
-// Get helper instance
-$helper = WebLinkHelper::createWebLinkHelper($this, 'return_login_link', 'index.php?app={?app_short_name?}&amp;page=login_area');
-
-// Set link text
-$helper->addLinkWithTextById('return_login_link_text');
-
-// Flush the content
-$helper->flushContent();
-
-// [EOF]
-?>
-<div id="logout_box">
-       <div id="logout_header">
-               Willst du dich wirklich aus der Shoutbox aussloggen?
-       </div>
-
-       <div id="logout_links">
-               {?logout_now_link?} | {?return_login_link?}
-       </div>
-</div>
diff --git a/application/shoutbox/templates/de/code/action_login_profile.ctp b/application/shoutbox/templates/de/code/action_login_profile.ctp
deleted file mode 100644 (file)
index 3babf81..0000000
+++ /dev/null
@@ -1,117 +0,0 @@
-<?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.
-$helper = WebFormHelper::createWebFormHelper($this, "shoutbox_profile");
-
-// Pre-fetch field data with a given registry key
-$helper->prefetchValueInstance('user');
-
-// Password can only be changed when the old one is entered and new one twice!
-$helper->addFormGroup('pass', "Neues Passwort einrichten:");
-$helper->addFormSubGroup('pass', "Bitte gebe zum &Auml;ndern deines Passwortes zweimal das gew&uuml;nschte neue Passwort ein.");
-$helper->addFieldText('pass1', "Neues Passwort:");
-$helper->addInputPasswordField('pass1');
-$helper->addFieldText('pass2', "Neues Passwort, Wiederholung:");
-$helper->addInputPasswordField('pass2');
-
-// Display current email
-$helper->addFormNote('current_email', "Derzeitige Email-Adresse: <span id=\"displayed_field\">".$helper->getValueField('email')."</span>");
-
-// Only for changing email address
-if ($helper->ifEmailChangeAllowed()) {
-       $helper->addFormGroup('email', "&Auml;nderung deiner Email-Addresse:");
-       $helper->addFormSubGroup('email', "Gebe nur deine Email-Adresse zweimal ein, wenn du diese &auml;ndern m&ouml;chtest!");
-       $helper->addFieldText('email1', "Email-Adresse:");
-       $helper->addInputTextField('email1');
-       $helper->addFieldText('email2', "Wiederholung Email-Adresse:");
-       $helper->addInputTextField('email2');
-
-       if ($helper->ifEmailMustBeUnique()) {
-               $helper->addFormNote('email', "Die von dir eingegebene Email-Adresse darf nur einmal in der Shoutbox verwendet worden sein.");
-       } // END - Unique email addresses
-
-       if ($helper->ifEmailChangeRequireConfirmation()) {
-               $helper->addFormNote('confirm_link', "Es wird ein Best&auml;tigungslink an deine neue Email-Adresse gesendet. Bitte klicke diesen dann m&ouml;glichst schnell an.");
-       } // END - Change requires confirmation
-} // END - email change allowed
-
-$helper->addFormGroup('profile', "Hier kannst du deine Profildaten &auml;ndern.");
-
-// Persoenliche Daten mit in der Anmeldung abfragen?
-if ($helper->ifRegisterIncludesPersonaData()) {
-       $helper->addFormSubGroup('persona', "Wenn du magst, dann vervollst&auml;ndige deine komplette Adresse mit deinem Namen.");
-       $helper->addFieldText('surname', "Dein Vorname:");
-       $helper->addInputTextFieldWithDefault('surname');
-       $helper->addFieldText('family', "Dein Nachname:");
-       $helper->addInputTextFieldWithDefault('family');
-       $helper->addFieldText('street', "Strasse und Hausnummer:");
-       $helper->addInputTextFieldWithDefault('street');
-       $helper->addFieldText('city', "Wohnort:");
-       $helper->addInputTextFieldWithDefault('city');
-} // END - Persona data
-
-$helper->addFormSubGroup('zip', "Magst du uns auch deine Postleitzahl verraten?");
-$helper->addFieldText('zip', "Postleitzahl:");
-$helper->addInputTextFieldWithDefault('zip');
-
-$helper->addFormSubGroup('chat', "Gebe hier deine Nicknames bzw. Nummern an:");
-
-if ($helper->ifChatEnabled('icq')) {
-       $helper->addFieldText('icq', "ICQ-Nummer:");
-       $helper->addInputTextFieldWithDefault('icq');
-} // END - if
-
-if ($helper->ifChatEnabled('jabber')) {
-       $helper->addFieldText('jabber', "Jabber:");
-       $helper->addInputTextFieldWithDefault('jabber');
-} // END - if
-
-if ($helper->ifChatEnabled('yahoo')) {
-       $helper->addFieldText('yahoo', "Yahoo!:");
-       $helper->addInputTextFieldWithDefault('yahoo');
-} // END - if
-
-if ($helper->ifChatEnabled('aol')) {
-       $helper->addFieldText('aol', "AOL-Screenname:");
-       $helper->addInputTextFieldWithDefault('aol');
-} // END - if
-
-if ($helper->ifChatEnabled('msn')) {
-       $helper->addFieldText('msn', "MSN:");
-       $helper->addInputTextFieldWithDefault('msn');
-} // END - if
-
-if (!$helper->ifRegisterRequiresEmailVerification()) {
-       $helper->addFormExtraNote(1, "Die Benachrichtigungen per sind im Loginbereich verfeinerbar, welche du genau haben willst.");
-} // END - Extra note
-
-// Rules already accepted?
-if ($helper->ifRulesHaveChanged()) {
-       $helper->addFormGroup('rules', "Bitte lese dir die Shoutbox-Regeln gut durch und kreuze dann &quot;Ja, ich akzeptiere die aktuellen Shoutbox-Regeln&quot; an.");
-       $helper->addFieldText('rules', "Ja, ich akzeptiere die aktuellen Shoutbox-Regeln:");
-       $helper->addInputCheckboxField('rules', false);
-} else {
-       $helper->addFormNote('rules_accepted', "Du hast die aktuellen Shoutbox-Regeln akzeptiert. Vielen Dank!");
-       $helper->addInputHiddenField('rules', "1");
-}
-
-// Ask again for current account password
-$helper->addFormGroup('pass_old', "Bitte gebe zur Best&auml;tigung der &Auml;nderungen dein derzeitiges Passwort ein.");
-$helper->addFieldText('pass_old', "Altes Passwort:");
-$helper->addInputPasswordField('pass_old');
-
-// Abschliessender Hinweis und Abschluss des Formulars
-$helper->addFormGroup('buttons', "Sind alle Daten nun korrekt eingegeben? Dann sende sie mit einem Klick einfach ab!");
-$helper->addInputResetButton("Alles nochmal eingeben");
-$helper->addInputSubmitButton("Accountdaten aktualisieren");
-$helper->addFormNote('data_protection', "Deine Daten werden nach den g&uuml;ltigen Datenschutzgesetzten gespeichert und werden nicht an Dritte weitergegeben. Weiteres dazu siehe Link &quot;Datenschutz&quot;.");
-$helper->flushContent();
-?>
-<div id="content_header">
-       Deine Profildaten bearbeiten
-</div>
-
-<div id="profile_box">
-       {?shoutbox_profile?}
-</div>
diff --git a/application/shoutbox/templates/de/code/action_login_status_problem.ctp b/application/shoutbox/templates/de/code/action_login_status_problem.ctp
deleted file mode 100644 (file)
index 88a47b1..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-<?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.
-$helper = WebFormHelper::createWebFormHelper($this, "resend_link");
-
-// Pre-fetch field data with a given registry key
-$helper->prefetchValueInstance('user');
-
-// Add submit button or notice
-if ($helper->ifUserAccountUnconfirmed()) {
-       // Add submit button
-       $helper->addInputHiddenFieldWithDefault('email');
-       $helper->addInputSubmitButton("Best&auml;tigungslink erneut aussenden");
-} elseif ($helper->ifUserAccountLocked()) {
-       // Account is locked
-       $helper->addFormNote('status_locked', "Dein Account wurde gesperrt! Grund der Sperre:
-               <span id=\"lock_reason\">".$helper->getValueField('lock_reason')."</span>
-               Bitte melde dich beim Support, damit dieser dir weiterhelfen kann."
-       );
-} elseif ($helper->ifUserAccountGuest()) {
-       // Account is guest account
-       $helper->addFormNote('status_guest', "G&auml;steaccounts sind in der Funktionalit&auml;t
-               leicht eingeschr&auml;nkt. Bitte melde dich an, damit du ein
-               vollwertiges Account bekommst."
-       );
-}
-
-// Flush content and automatically close the form
-$helper->flushContent();
-
-if ($helper->ifUserAccountUnconfirmed()) {
-       // Build the form for confirmation
-       $helper = WebFormHelper::createWebFormHelper($this, "confirm_code");
-
-       // Add code box
-       $helper->addFormGroup('code', "Bitte gebe hier den Best&auml;tigungscode aus der Willkommensemail ein. Solltest du diese nicht erhalten haben, kannst du dir diesen jetzt zusenden lassen.");
-       $helper->addFieldText('code', "Best&auml;tigungscode aus der Mail:");
-       $helper->addInputTextField('code');
-
-       // Add submit button
-       $helper->addFormGroup('buttons', "Bitte einmal abschicken und das Ergebnis abwarten!");
-       $helper->addInputResetButton("Nochmal eingeben");
-       $helper->addInputSubmitButton("Best&auml;tigungscode absenden");
-
-       // Flush content and automatically close the form
-       $helper->flushContent();
-} // END - if
-?>
-<div id="content_header">
-       Problem mit deinem Account gefunden:
-</div>
-
-<div id="status_box">
-       Du bist m&ouml;glicherweise f&uuml;r deine ausgew&auml;hlte Aktion nicht
-       berechtigt oder du hast noch deine Email-Adresse nicht best&auml;tigt. Du
-       kannst dir nun den Best&auml;tigungslink erneut aussenden lassen, oder den
-       Best&auml;tigungscode unten eingeben.
-
-       <div id="resend_link_box">
-               {?resend_link?}
-       </div>
-
-       <div id="confirm_code_box">
-               {?confirm_code?}
-       </div>
-</div>
diff --git a/application/shoutbox/templates/de/code/action_login_welcome.ctp b/application/shoutbox/templates/de/code/action_login_welcome.ctp
deleted file mode 100644 (file)
index 902eba9..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-<div id="news_frame">
-       {?shoutbox_login_news?}
-</div>
diff --git a/application/shoutbox/templates/de/code/action_shoutbox_login_logout.ctp b/application/shoutbox/templates/de/code/action_shoutbox_login_logout.ctp
new file mode 100644 (file)
index 0000000..fcf3d45
--- /dev/null
@@ -0,0 +1,30 @@
+<?php
+// Get helper instance
+$helper = WebLinkHelper::createWebLinkHelper($this, 'logout_now_link', 'index.php?app={?app_short_name?}&amp;page=logout');
+
+// Set link text
+$helper->addLinkWithTextById('logout_now_link_text');
+
+// Flush the content
+$helper->flushContent();
+
+// Get helper instance
+$helper = WebLinkHelper::createWebLinkHelper($this, 'return_login_link', 'index.php?app={?app_short_name?}&amp;page=login_area');
+
+// Set link text
+$helper->addLinkWithTextById('return_login_link_text');
+
+// Flush the content
+$helper->flushContent();
+
+// [EOF]
+?>
+<div id="logout_box">
+       <div id="logout_header">
+               Willst du dich wirklich aus der Shoutbox aussloggen?
+       </div>
+
+       <div id="logout_links">
+               {?logout_now_link?} | {?return_login_link?}
+       </div>
+</div>
diff --git a/application/shoutbox/templates/de/code/action_shoutbox_login_profile.ctp b/application/shoutbox/templates/de/code/action_shoutbox_login_profile.ctp
new file mode 100644 (file)
index 0000000..3babf81
--- /dev/null
@@ -0,0 +1,117 @@
+<?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.
+$helper = WebFormHelper::createWebFormHelper($this, "shoutbox_profile");
+
+// Pre-fetch field data with a given registry key
+$helper->prefetchValueInstance('user');
+
+// Password can only be changed when the old one is entered and new one twice!
+$helper->addFormGroup('pass', "Neues Passwort einrichten:");
+$helper->addFormSubGroup('pass', "Bitte gebe zum &Auml;ndern deines Passwortes zweimal das gew&uuml;nschte neue Passwort ein.");
+$helper->addFieldText('pass1', "Neues Passwort:");
+$helper->addInputPasswordField('pass1');
+$helper->addFieldText('pass2', "Neues Passwort, Wiederholung:");
+$helper->addInputPasswordField('pass2');
+
+// Display current email
+$helper->addFormNote('current_email', "Derzeitige Email-Adresse: <span id=\"displayed_field\">".$helper->getValueField('email')."</span>");
+
+// Only for changing email address
+if ($helper->ifEmailChangeAllowed()) {
+       $helper->addFormGroup('email', "&Auml;nderung deiner Email-Addresse:");
+       $helper->addFormSubGroup('email', "Gebe nur deine Email-Adresse zweimal ein, wenn du diese &auml;ndern m&ouml;chtest!");
+       $helper->addFieldText('email1', "Email-Adresse:");
+       $helper->addInputTextField('email1');
+       $helper->addFieldText('email2', "Wiederholung Email-Adresse:");
+       $helper->addInputTextField('email2');
+
+       if ($helper->ifEmailMustBeUnique()) {
+               $helper->addFormNote('email', "Die von dir eingegebene Email-Adresse darf nur einmal in der Shoutbox verwendet worden sein.");
+       } // END - Unique email addresses
+
+       if ($helper->ifEmailChangeRequireConfirmation()) {
+               $helper->addFormNote('confirm_link', "Es wird ein Best&auml;tigungslink an deine neue Email-Adresse gesendet. Bitte klicke diesen dann m&ouml;glichst schnell an.");
+       } // END - Change requires confirmation
+} // END - email change allowed
+
+$helper->addFormGroup('profile', "Hier kannst du deine Profildaten &auml;ndern.");
+
+// Persoenliche Daten mit in der Anmeldung abfragen?
+if ($helper->ifRegisterIncludesPersonaData()) {
+       $helper->addFormSubGroup('persona', "Wenn du magst, dann vervollst&auml;ndige deine komplette Adresse mit deinem Namen.");
+       $helper->addFieldText('surname', "Dein Vorname:");
+       $helper->addInputTextFieldWithDefault('surname');
+       $helper->addFieldText('family', "Dein Nachname:");
+       $helper->addInputTextFieldWithDefault('family');
+       $helper->addFieldText('street', "Strasse und Hausnummer:");
+       $helper->addInputTextFieldWithDefault('street');
+       $helper->addFieldText('city', "Wohnort:");
+       $helper->addInputTextFieldWithDefault('city');
+} // END - Persona data
+
+$helper->addFormSubGroup('zip', "Magst du uns auch deine Postleitzahl verraten?");
+$helper->addFieldText('zip', "Postleitzahl:");
+$helper->addInputTextFieldWithDefault('zip');
+
+$helper->addFormSubGroup('chat', "Gebe hier deine Nicknames bzw. Nummern an:");
+
+if ($helper->ifChatEnabled('icq')) {
+       $helper->addFieldText('icq', "ICQ-Nummer:");
+       $helper->addInputTextFieldWithDefault('icq');
+} // END - if
+
+if ($helper->ifChatEnabled('jabber')) {
+       $helper->addFieldText('jabber', "Jabber:");
+       $helper->addInputTextFieldWithDefault('jabber');
+} // END - if
+
+if ($helper->ifChatEnabled('yahoo')) {
+       $helper->addFieldText('yahoo', "Yahoo!:");
+       $helper->addInputTextFieldWithDefault('yahoo');
+} // END - if
+
+if ($helper->ifChatEnabled('aol')) {
+       $helper->addFieldText('aol', "AOL-Screenname:");
+       $helper->addInputTextFieldWithDefault('aol');
+} // END - if
+
+if ($helper->ifChatEnabled('msn')) {
+       $helper->addFieldText('msn', "MSN:");
+       $helper->addInputTextFieldWithDefault('msn');
+} // END - if
+
+if (!$helper->ifRegisterRequiresEmailVerification()) {
+       $helper->addFormExtraNote(1, "Die Benachrichtigungen per sind im Loginbereich verfeinerbar, welche du genau haben willst.");
+} // END - Extra note
+
+// Rules already accepted?
+if ($helper->ifRulesHaveChanged()) {
+       $helper->addFormGroup('rules', "Bitte lese dir die Shoutbox-Regeln gut durch und kreuze dann &quot;Ja, ich akzeptiere die aktuellen Shoutbox-Regeln&quot; an.");
+       $helper->addFieldText('rules', "Ja, ich akzeptiere die aktuellen Shoutbox-Regeln:");
+       $helper->addInputCheckboxField('rules', false);
+} else {
+       $helper->addFormNote('rules_accepted', "Du hast die aktuellen Shoutbox-Regeln akzeptiert. Vielen Dank!");
+       $helper->addInputHiddenField('rules', "1");
+}
+
+// Ask again for current account password
+$helper->addFormGroup('pass_old', "Bitte gebe zur Best&auml;tigung der &Auml;nderungen dein derzeitiges Passwort ein.");
+$helper->addFieldText('pass_old', "Altes Passwort:");
+$helper->addInputPasswordField('pass_old');
+
+// Abschliessender Hinweis und Abschluss des Formulars
+$helper->addFormGroup('buttons', "Sind alle Daten nun korrekt eingegeben? Dann sende sie mit einem Klick einfach ab!");
+$helper->addInputResetButton("Alles nochmal eingeben");
+$helper->addInputSubmitButton("Accountdaten aktualisieren");
+$helper->addFormNote('data_protection', "Deine Daten werden nach den g&uuml;ltigen Datenschutzgesetzten gespeichert und werden nicht an Dritte weitergegeben. Weiteres dazu siehe Link &quot;Datenschutz&quot;.");
+$helper->flushContent();
+?>
+<div id="content_header">
+       Deine Profildaten bearbeiten
+</div>
+
+<div id="profile_box">
+       {?shoutbox_profile?}
+</div>
diff --git a/application/shoutbox/templates/de/code/action_shoutbox_login_status_problem.ctp b/application/shoutbox/templates/de/code/action_shoutbox_login_status_problem.ctp
new file mode 100644 (file)
index 0000000..88a47b1
--- /dev/null
@@ -0,0 +1,67 @@
+<?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.
+$helper = WebFormHelper::createWebFormHelper($this, "resend_link");
+
+// Pre-fetch field data with a given registry key
+$helper->prefetchValueInstance('user');
+
+// Add submit button or notice
+if ($helper->ifUserAccountUnconfirmed()) {
+       // Add submit button
+       $helper->addInputHiddenFieldWithDefault('email');
+       $helper->addInputSubmitButton("Best&auml;tigungslink erneut aussenden");
+} elseif ($helper->ifUserAccountLocked()) {
+       // Account is locked
+       $helper->addFormNote('status_locked', "Dein Account wurde gesperrt! Grund der Sperre:
+               <span id=\"lock_reason\">".$helper->getValueField('lock_reason')."</span>
+               Bitte melde dich beim Support, damit dieser dir weiterhelfen kann."
+       );
+} elseif ($helper->ifUserAccountGuest()) {
+       // Account is guest account
+       $helper->addFormNote('status_guest', "G&auml;steaccounts sind in der Funktionalit&auml;t
+               leicht eingeschr&auml;nkt. Bitte melde dich an, damit du ein
+               vollwertiges Account bekommst."
+       );
+}
+
+// Flush content and automatically close the form
+$helper->flushContent();
+
+if ($helper->ifUserAccountUnconfirmed()) {
+       // Build the form for confirmation
+       $helper = WebFormHelper::createWebFormHelper($this, "confirm_code");
+
+       // Add code box
+       $helper->addFormGroup('code', "Bitte gebe hier den Best&auml;tigungscode aus der Willkommensemail ein. Solltest du diese nicht erhalten haben, kannst du dir diesen jetzt zusenden lassen.");
+       $helper->addFieldText('code', "Best&auml;tigungscode aus der Mail:");
+       $helper->addInputTextField('code');
+
+       // Add submit button
+       $helper->addFormGroup('buttons', "Bitte einmal abschicken und das Ergebnis abwarten!");
+       $helper->addInputResetButton("Nochmal eingeben");
+       $helper->addInputSubmitButton("Best&auml;tigungscode absenden");
+
+       // Flush content and automatically close the form
+       $helper->flushContent();
+} // END - if
+?>
+<div id="content_header">
+       Problem mit deinem Account gefunden:
+</div>
+
+<div id="status_box">
+       Du bist m&ouml;glicherweise f&uuml;r deine ausgew&auml;hlte Aktion nicht
+       berechtigt oder du hast noch deine Email-Adresse nicht best&auml;tigt. Du
+       kannst dir nun den Best&auml;tigungslink erneut aussenden lassen, oder den
+       Best&auml;tigungscode unten eingeben.
+
+       <div id="resend_link_box">
+               {?resend_link?}
+       </div>
+
+       <div id="confirm_code_box">
+               {?confirm_code?}
+       </div>
+</div>
diff --git a/application/shoutbox/templates/de/code/action_shoutbox_login_welcome.ctp b/application/shoutbox/templates/de/code/action_shoutbox_login_welcome.ctp
new file mode 100644 (file)
index 0000000..902eba9
--- /dev/null
@@ -0,0 +1,3 @@
+<div id="news_frame">
+       {?shoutbox_login_news?}
+</div>
index 7380296..4e3c957 100644 (file)
@@ -39,7 +39,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-class ApplicationHelper extends BaseFrameworkSystem implements ManageableApplication {
+class ApplicationHelper extends BaseApplication implements ManageableApplication, Registerable {
        /**
         * The version number of this application
         */
@@ -78,10 +78,6 @@ class ApplicationHelper extends BaseFrameworkSystem implements ManageableApplica
        protected function __construct () {
                // Call parent constructor
                parent::__construct(__CLASS__);
-
-               // Tidy up a little
-               $this->removeSystemArray();
-               $this->removeNumberFormaters();
        }
 
        /**
diff --git a/application/todo/templates/de/code/action_login_logout.ctp b/application/todo/templates/de/code/action_login_logout.ctp
deleted file mode 100644 (file)
index 8d96247..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-// Get helper instance
-$helper = WebLinkHelper::createWebLinkHelper($this, 'logout_now_link', 'index.php?app={?app_short_name?}&amp;page=logout');
-
-// Set link text
-$helper->addLinkWithTextById('logout_now_link_text');
-
-// Flush the content
-$helper->flushContent();
-
-// Get helper instance
-$helper = WebLinkHelper::createWebLinkHelper($this, 'return_login_link', 'index.php?app={?app_short_name?}&amp;page=login_area');
-
-// Set link text
-$helper->addLinkWithTextById('return_login_link_text');
-
-// Flush the content
-$helper->flushContent();
-
-// [EOF]
-?>
-<div id="logout_box">
-       <div id="logout_header">
-               Willst du dich wirklich aus dem ToDo-Manager aussloggen?
-       </div>
-
-       <div id="logout_links">
-               {?logout_now_link?} | {?return_login_link?}
-       </div>
-</div>
diff --git a/application/todo/templates/de/code/action_login_profile.ctp b/application/todo/templates/de/code/action_login_profile.ctp
deleted file mode 100644 (file)
index 5337a19..0000000
+++ /dev/null
@@ -1,117 +0,0 @@
-<?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.
-$helper = WebFormHelper::createWebFormHelper($this, "todo_profile");
-
-// Pre-fetch field data with a given registry key
-$helper->prefetchValueInstance('user');
-
-// Password can only be changed when the old one is entered and new one twice!
-$helper->addFormGroup('pass', "Neues Passwort einrichten:");
-$helper->addFormSubGroup('pass', "Bitte gebe zum &Auml;ndern deines Passwortes zweimal das gew&uuml;nschte neue Passwort ein.");
-$helper->addFieldText('pass1', "Neues Passwort:");
-$helper->addInputPasswordField('pass1');
-$helper->addFieldText('pass2', "Neues Passwort, Wiederholung:");
-$helper->addInputPasswordField('pass2');
-
-// Display current email
-$helper->addFormNote('current_email', "Derzeitige Email-Adresse: <span id=\"displayed_field\">".$helper->getValueField('email')."</span>");
-
-// Only for changing email address
-if ($helper->ifEmailChangeAllowed()) {
-       $helper->addFormGroup('email', "&Auml;nderung deiner Email-Addresse:");
-       $helper->addFormSubGroup('email', "Gebe nur deine Email-Adresse zweimal ein, wenn du diese &auml;ndern m&ouml;chtest!");
-       $helper->addFieldText('email1', "Email-Adresse:");
-       $helper->addInputTextField('email1');
-       $helper->addFieldText('email2', "Wiederholung Email-Adresse:");
-       $helper->addInputTextField('email2');
-
-       if ($helper->ifEmailMustBeUnique()) {
-               $helper->addFormNote('email', "Die von dir eingegebene Email-Adresse darf nur einmal im ToDo-Manager verwendet worden sein.");
-       } // END - Unique email addresses
-
-       if ($helper->ifEmailChangeRequireConfirmation()) {
-               $helper->addFormNote('confirm_link', "Es wird ein Best&auml;tigungslink an deine neue Email-Adresse gesendet. Bitte klicke diesen dann m&ouml;glichst schnell an.");
-       } // END - Change requires confirmation
-} // END - email change allowed
-
-$helper->addFormGroup('profile', "Hier kannst du deine Profildaten &auml;ndern.");
-
-// Persoenliche Daten mit in der Anmeldung abfragen?
-if ($helper->ifRegisterIncludesPersonaData()) {
-       $helper->addFormSubGroup('persona', "Wenn du magst, dann vervollst&auml;ndige deine komplette Adresse mit deinem Namen.");
-       $helper->addFieldText('surname', "Dein Vorname:");
-       $helper->addInputTextFieldWithDefault('surname');
-       $helper->addFieldText('family', "Dein Nachname:");
-       $helper->addInputTextFieldWithDefault('family');
-       $helper->addFieldText('street', "Strasse und Hausnummer:");
-       $helper->addInputTextFieldWithDefault('street');
-       $helper->addFieldText('city', "Wohnort:");
-       $helper->addInputTextFieldWithDefault('city');
-} // END - Persona data
-
-$helper->addFormSubGroup('zip', "Magst du uns auch deine Postleitzahl verraten?");
-$helper->addFieldText('zip', "Postleitzahl:");
-$helper->addInputTextFieldWithDefault('zip');
-
-$helper->addFormSubGroup('chat', "Gebe hier deine Nicknames bzw. Nummern an:");
-
-if ($helper->ifChatEnabled('icq')) {
-       $helper->addFieldText('icq', "ICQ-Nummer:");
-       $helper->addInputTextFieldWithDefault('icq');
-} // END - if
-
-if ($helper->ifChatEnabled('jabber')) {
-       $helper->addFieldText('jabber', "Jabber:");
-       $helper->addInputTextFieldWithDefault('jabber');
-} // END - if
-
-if ($helper->ifChatEnabled('yahoo')) {
-       $helper->addFieldText('yahoo', "Yahoo!:");
-       $helper->addInputTextFieldWithDefault('yahoo');
-} // END - if
-
-if ($helper->ifChatEnabled('aol')) {
-       $helper->addFieldText('aol', "AOL-Screenname:");
-       $helper->addInputTextFieldWithDefault('aol');
-} // END - if
-
-if ($helper->ifChatEnabled('msn')) {
-       $helper->addFieldText('msn', "MSN:");
-       $helper->addInputTextFieldWithDefault('msn');
-} // END - if
-
-if (!$helper->ifRegisterRequiresEmailVerification()) {
-       $helper->addFormExtraNote(1, "Die Benachrichtigungen per sind im Loginbereich verfeinerbar, welche du genau haben willst.");
-} // END - Extra note
-
-// Rules already accepted?
-if ($helper->ifRulesHaveChanged()) {
-       $helper->addFormGroup('rules', "Bitte lese dir die Regeln gut durch und kreuze dann &quot;Ja, ich akzeptiere die aktuellen Regeln&quot; an.");
-       $helper->addFieldText('rules', "Ja, ich akzeptiere die aktuellen Regeln:");
-       $helper->addInputCheckboxField('rules', false);
-} else {
-       $helper->addFormNote('rules_accepted', "Du hast die aktuellen Regeln akzeptiert. Vielen Dank!");
-       $helper->addInputHiddenField('rules', "1");
-}
-
-// Ask again for current account password
-$helper->addFormGroup('pass_old', "Bitte gebe zur Best&auml;tigung der &Auml;nderungen dein derzeitiges Passwort ein.");
-$helper->addFieldText('pass_old', "Altes Passwort:");
-$helper->addInputPasswordField('pass_old');
-
-// Abschliessender Hinweis und Abschluss des Formulars
-$helper->addFormGroup('buttons', "Sind alle Daten nun korrekt eingegeben? Dann sende sie mit einem Klick einfach ab!");
-$helper->addInputResetButton("Alles nochmal eingeben");
-$helper->addInputSubmitButton("Accountdaten aktualisieren");
-$helper->addFormNote('data_protection', "Deine Daten werden nach den g&uuml;ltigen Datenschutzgesetzten gespeichert und werden nicht an Dritte weitergegeben. Weiteres dazu siehe Link &quot;Datenschutz&quot;.");
-$helper->flushContent();
-?>
-<div id="content_header">
-       Deine Profildaten bearbeiten
-</div>
-
-<div id="profile_box">
-       {?todo_profile?}
-</div>
diff --git a/application/todo/templates/de/code/action_login_status_problem.ctp b/application/todo/templates/de/code/action_login_status_problem.ctp
deleted file mode 100644 (file)
index 88a47b1..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-<?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.
-$helper = WebFormHelper::createWebFormHelper($this, "resend_link");
-
-// Pre-fetch field data with a given registry key
-$helper->prefetchValueInstance('user');
-
-// Add submit button or notice
-if ($helper->ifUserAccountUnconfirmed()) {
-       // Add submit button
-       $helper->addInputHiddenFieldWithDefault('email');
-       $helper->addInputSubmitButton("Best&auml;tigungslink erneut aussenden");
-} elseif ($helper->ifUserAccountLocked()) {
-       // Account is locked
-       $helper->addFormNote('status_locked', "Dein Account wurde gesperrt! Grund der Sperre:
-               <span id=\"lock_reason\">".$helper->getValueField('lock_reason')."</span>
-               Bitte melde dich beim Support, damit dieser dir weiterhelfen kann."
-       );
-} elseif ($helper->ifUserAccountGuest()) {
-       // Account is guest account
-       $helper->addFormNote('status_guest', "G&auml;steaccounts sind in der Funktionalit&auml;t
-               leicht eingeschr&auml;nkt. Bitte melde dich an, damit du ein
-               vollwertiges Account bekommst."
-       );
-}
-
-// Flush content and automatically close the form
-$helper->flushContent();
-
-if ($helper->ifUserAccountUnconfirmed()) {
-       // Build the form for confirmation
-       $helper = WebFormHelper::createWebFormHelper($this, "confirm_code");
-
-       // Add code box
-       $helper->addFormGroup('code', "Bitte gebe hier den Best&auml;tigungscode aus der Willkommensemail ein. Solltest du diese nicht erhalten haben, kannst du dir diesen jetzt zusenden lassen.");
-       $helper->addFieldText('code', "Best&auml;tigungscode aus der Mail:");
-       $helper->addInputTextField('code');
-
-       // Add submit button
-       $helper->addFormGroup('buttons', "Bitte einmal abschicken und das Ergebnis abwarten!");
-       $helper->addInputResetButton("Nochmal eingeben");
-       $helper->addInputSubmitButton("Best&auml;tigungscode absenden");
-
-       // Flush content and automatically close the form
-       $helper->flushContent();
-} // END - if
-?>
-<div id="content_header">
-       Problem mit deinem Account gefunden:
-</div>
-
-<div id="status_box">
-       Du bist m&ouml;glicherweise f&uuml;r deine ausgew&auml;hlte Aktion nicht
-       berechtigt oder du hast noch deine Email-Adresse nicht best&auml;tigt. Du
-       kannst dir nun den Best&auml;tigungslink erneut aussenden lassen, oder den
-       Best&auml;tigungscode unten eingeben.
-
-       <div id="resend_link_box">
-               {?resend_link?}
-       </div>
-
-       <div id="confirm_code_box">
-               {?confirm_code?}
-       </div>
-</div>
diff --git a/application/todo/templates/de/code/action_login_welcome.ctp b/application/todo/templates/de/code/action_login_welcome.ctp
deleted file mode 100644 (file)
index 538a8d1..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-<div id="news_frame">
-       {?todo_login_news?}
-</div>
diff --git a/application/todo/templates/de/code/action_todo_login_logout.ctp b/application/todo/templates/de/code/action_todo_login_logout.ctp
new file mode 100644 (file)
index 0000000..8d96247
--- /dev/null
@@ -0,0 +1,30 @@
+<?php
+// Get helper instance
+$helper = WebLinkHelper::createWebLinkHelper($this, 'logout_now_link', 'index.php?app={?app_short_name?}&amp;page=logout');
+
+// Set link text
+$helper->addLinkWithTextById('logout_now_link_text');
+
+// Flush the content
+$helper->flushContent();
+
+// Get helper instance
+$helper = WebLinkHelper::createWebLinkHelper($this, 'return_login_link', 'index.php?app={?app_short_name?}&amp;page=login_area');
+
+// Set link text
+$helper->addLinkWithTextById('return_login_link_text');
+
+// Flush the content
+$helper->flushContent();
+
+// [EOF]
+?>
+<div id="logout_box">
+       <div id="logout_header">
+               Willst du dich wirklich aus dem ToDo-Manager aussloggen?
+       </div>
+
+       <div id="logout_links">
+               {?logout_now_link?} | {?return_login_link?}
+       </div>
+</div>
diff --git a/application/todo/templates/de/code/action_todo_login_profile.ctp b/application/todo/templates/de/code/action_todo_login_profile.ctp
new file mode 100644 (file)
index 0000000..5337a19
--- /dev/null
@@ -0,0 +1,117 @@
+<?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.
+$helper = WebFormHelper::createWebFormHelper($this, "todo_profile");
+
+// Pre-fetch field data with a given registry key
+$helper->prefetchValueInstance('user');
+
+// Password can only be changed when the old one is entered and new one twice!
+$helper->addFormGroup('pass', "Neues Passwort einrichten:");
+$helper->addFormSubGroup('pass', "Bitte gebe zum &Auml;ndern deines Passwortes zweimal das gew&uuml;nschte neue Passwort ein.");
+$helper->addFieldText('pass1', "Neues Passwort:");
+$helper->addInputPasswordField('pass1');
+$helper->addFieldText('pass2', "Neues Passwort, Wiederholung:");
+$helper->addInputPasswordField('pass2');
+
+// Display current email
+$helper->addFormNote('current_email', "Derzeitige Email-Adresse: <span id=\"displayed_field\">".$helper->getValueField('email')."</span>");
+
+// Only for changing email address
+if ($helper->ifEmailChangeAllowed()) {
+       $helper->addFormGroup('email', "&Auml;nderung deiner Email-Addresse:");
+       $helper->addFormSubGroup('email', "Gebe nur deine Email-Adresse zweimal ein, wenn du diese &auml;ndern m&ouml;chtest!");
+       $helper->addFieldText('email1', "Email-Adresse:");
+       $helper->addInputTextField('email1');
+       $helper->addFieldText('email2', "Wiederholung Email-Adresse:");
+       $helper->addInputTextField('email2');
+
+       if ($helper->ifEmailMustBeUnique()) {
+               $helper->addFormNote('email', "Die von dir eingegebene Email-Adresse darf nur einmal im ToDo-Manager verwendet worden sein.");
+       } // END - Unique email addresses
+
+       if ($helper->ifEmailChangeRequireConfirmation()) {
+               $helper->addFormNote('confirm_link', "Es wird ein Best&auml;tigungslink an deine neue Email-Adresse gesendet. Bitte klicke diesen dann m&ouml;glichst schnell an.");
+       } // END - Change requires confirmation
+} // END - email change allowed
+
+$helper->addFormGroup('profile', "Hier kannst du deine Profildaten &auml;ndern.");
+
+// Persoenliche Daten mit in der Anmeldung abfragen?
+if ($helper->ifRegisterIncludesPersonaData()) {
+       $helper->addFormSubGroup('persona', "Wenn du magst, dann vervollst&auml;ndige deine komplette Adresse mit deinem Namen.");
+       $helper->addFieldText('surname', "Dein Vorname:");
+       $helper->addInputTextFieldWithDefault('surname');
+       $helper->addFieldText('family', "Dein Nachname:");
+       $helper->addInputTextFieldWithDefault('family');
+       $helper->addFieldText('street', "Strasse und Hausnummer:");
+       $helper->addInputTextFieldWithDefault('street');
+       $helper->addFieldText('city', "Wohnort:");
+       $helper->addInputTextFieldWithDefault('city');
+} // END - Persona data
+
+$helper->addFormSubGroup('zip', "Magst du uns auch deine Postleitzahl verraten?");
+$helper->addFieldText('zip', "Postleitzahl:");
+$helper->addInputTextFieldWithDefault('zip');
+
+$helper->addFormSubGroup('chat', "Gebe hier deine Nicknames bzw. Nummern an:");
+
+if ($helper->ifChatEnabled('icq')) {
+       $helper->addFieldText('icq', "ICQ-Nummer:");
+       $helper->addInputTextFieldWithDefault('icq');
+} // END - if
+
+if ($helper->ifChatEnabled('jabber')) {
+       $helper->addFieldText('jabber', "Jabber:");
+       $helper->addInputTextFieldWithDefault('jabber');
+} // END - if
+
+if ($helper->ifChatEnabled('yahoo')) {
+       $helper->addFieldText('yahoo', "Yahoo!:");
+       $helper->addInputTextFieldWithDefault('yahoo');
+} // END - if
+
+if ($helper->ifChatEnabled('aol')) {
+       $helper->addFieldText('aol', "AOL-Screenname:");
+       $helper->addInputTextFieldWithDefault('aol');
+} // END - if
+
+if ($helper->ifChatEnabled('msn')) {
+       $helper->addFieldText('msn', "MSN:");
+       $helper->addInputTextFieldWithDefault('msn');
+} // END - if
+
+if (!$helper->ifRegisterRequiresEmailVerification()) {
+       $helper->addFormExtraNote(1, "Die Benachrichtigungen per sind im Loginbereich verfeinerbar, welche du genau haben willst.");
+} // END - Extra note
+
+// Rules already accepted?
+if ($helper->ifRulesHaveChanged()) {
+       $helper->addFormGroup('rules', "Bitte lese dir die Regeln gut durch und kreuze dann &quot;Ja, ich akzeptiere die aktuellen Regeln&quot; an.");
+       $helper->addFieldText('rules', "Ja, ich akzeptiere die aktuellen Regeln:");
+       $helper->addInputCheckboxField('rules', false);
+} else {
+       $helper->addFormNote('rules_accepted', "Du hast die aktuellen Regeln akzeptiert. Vielen Dank!");
+       $helper->addInputHiddenField('rules', "1");
+}
+
+// Ask again for current account password
+$helper->addFormGroup('pass_old', "Bitte gebe zur Best&auml;tigung der &Auml;nderungen dein derzeitiges Passwort ein.");
+$helper->addFieldText('pass_old', "Altes Passwort:");
+$helper->addInputPasswordField('pass_old');
+
+// Abschliessender Hinweis und Abschluss des Formulars
+$helper->addFormGroup('buttons', "Sind alle Daten nun korrekt eingegeben? Dann sende sie mit einem Klick einfach ab!");
+$helper->addInputResetButton("Alles nochmal eingeben");
+$helper->addInputSubmitButton("Accountdaten aktualisieren");
+$helper->addFormNote('data_protection', "Deine Daten werden nach den g&uuml;ltigen Datenschutzgesetzten gespeichert und werden nicht an Dritte weitergegeben. Weiteres dazu siehe Link &quot;Datenschutz&quot;.");
+$helper->flushContent();
+?>
+<div id="content_header">
+       Deine Profildaten bearbeiten
+</div>
+
+<div id="profile_box">
+       {?todo_profile?}
+</div>
diff --git a/application/todo/templates/de/code/action_todo_login_status_problem.ctp b/application/todo/templates/de/code/action_todo_login_status_problem.ctp
new file mode 100644 (file)
index 0000000..88a47b1
--- /dev/null
@@ -0,0 +1,67 @@
+<?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.
+$helper = WebFormHelper::createWebFormHelper($this, "resend_link");
+
+// Pre-fetch field data with a given registry key
+$helper->prefetchValueInstance('user');
+
+// Add submit button or notice
+if ($helper->ifUserAccountUnconfirmed()) {
+       // Add submit button
+       $helper->addInputHiddenFieldWithDefault('email');
+       $helper->addInputSubmitButton("Best&auml;tigungslink erneut aussenden");
+} elseif ($helper->ifUserAccountLocked()) {
+       // Account is locked
+       $helper->addFormNote('status_locked', "Dein Account wurde gesperrt! Grund der Sperre:
+               <span id=\"lock_reason\">".$helper->getValueField('lock_reason')."</span>
+               Bitte melde dich beim Support, damit dieser dir weiterhelfen kann."
+       );
+} elseif ($helper->ifUserAccountGuest()) {
+       // Account is guest account
+       $helper->addFormNote('status_guest', "G&auml;steaccounts sind in der Funktionalit&auml;t
+               leicht eingeschr&auml;nkt. Bitte melde dich an, damit du ein
+               vollwertiges Account bekommst."
+       );
+}
+
+// Flush content and automatically close the form
+$helper->flushContent();
+
+if ($helper->ifUserAccountUnconfirmed()) {
+       // Build the form for confirmation
+       $helper = WebFormHelper::createWebFormHelper($this, "confirm_code");
+
+       // Add code box
+       $helper->addFormGroup('code', "Bitte gebe hier den Best&auml;tigungscode aus der Willkommensemail ein. Solltest du diese nicht erhalten haben, kannst du dir diesen jetzt zusenden lassen.");
+       $helper->addFieldText('code', "Best&auml;tigungscode aus der Mail:");
+       $helper->addInputTextField('code');
+
+       // Add submit button
+       $helper->addFormGroup('buttons', "Bitte einmal abschicken und das Ergebnis abwarten!");
+       $helper->addInputResetButton("Nochmal eingeben");
+       $helper->addInputSubmitButton("Best&auml;tigungscode absenden");
+
+       // Flush content and automatically close the form
+       $helper->flushContent();
+} // END - if
+?>
+<div id="content_header">
+       Problem mit deinem Account gefunden:
+</div>
+
+<div id="status_box">
+       Du bist m&ouml;glicherweise f&uuml;r deine ausgew&auml;hlte Aktion nicht
+       berechtigt oder du hast noch deine Email-Adresse nicht best&auml;tigt. Du
+       kannst dir nun den Best&auml;tigungslink erneut aussenden lassen, oder den
+       Best&auml;tigungscode unten eingeben.
+
+       <div id="resend_link_box">
+               {?resend_link?}
+       </div>
+
+       <div id="confirm_code_box">
+               {?confirm_code?}
+       </div>
+</div>
diff --git a/application/todo/templates/de/code/action_todo_login_welcome.ctp b/application/todo/templates/de/code/action_todo_login_welcome.ctp
new file mode 100644 (file)
index 0000000..538a8d1
--- /dev/null
@@ -0,0 +1,3 @@
+<div id="news_frame">
+       {?todo_login_news?}
+</div>
diff --git a/inc/classes/main/application/.htaccess b/inc/classes/main/application/.htaccess
new file mode 100644 (file)
index 0000000..3a42882
--- /dev/null
@@ -0,0 +1 @@
+Deny from all
diff --git a/inc/classes/main/application/class_BaseApplication.php b/inc/classes/main/application/class_BaseApplication.php
new file mode 100644 (file)
index 0000000..a8d5e5c
--- /dev/null
@@ -0,0 +1,48 @@
+<?php
+/**
+ * A general application class for the ApplicationHelper classes.
+ *
+ * @author             Roland Haeder <webmaster@ship-simu.org>
+ * @version            0.0.0
+ * @copyright  Copyright (c) 2007, 2008 Roland Haeder, this is free software
+ * @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/>.
+ */
+class BaseApplication extends BaseFrameworkSystem {
+       /**
+        * Protected constructor
+        *
+        * @param       $className      Name of the class
+        * @return      void
+        */
+       protected function __construct ($className) {
+               // Call parent constructor
+               parent::__construct($className);
+
+               // Clean up a little
+               $this->removeNumberFormaters();
+               $this->removeSystemArray();
+
+               // Get registry instance
+               $registryInstance = Registry::getRegistry();
+
+               // Add this instance
+               $registryInstance->addInstance('application', $this);
+       }
+}
+
+// [EOF]
+?>
index 9f2c1cf..3149a25 100644 (file)
@@ -152,8 +152,17 @@ class WebLoginAreaCommand extends BaseCommand implements Commandable {
                // Default is no action
                $actionInstance = null;
 
+               // Get registry
+               $registryInstance = Registry::getRegistry();
+
+               // Get our application instance from the registry
+               $appInstance = $registryInstance->getInstance('application');
+
                // Default action is the one from configuration
-               $this->actionName = sprintf("login_%s", $this->getConfigInstance()->readConfig('login_default_action'));
+               $this->actionName = sprintf("%s_login_%s",
+                       str_replace("-", "_", $appInstance->getAppShortName()),
+                       $this->getConfigInstance()->readConfig('login_default_action')
+               );
 
                // Get "action" from request
                $actReq = $requestInstance->getRequestElement('action');
@@ -161,7 +170,10 @@ class WebLoginAreaCommand extends BaseCommand implements Commandable {
                // Do we have a "action" parameter set?
                if ((is_string($actReq)) && (!empty($actReq))) {
                        // Then use it with prefix
-                       $this->actionName = sprintf("login_%s", $actReq);
+                       $this->actionName = sprintf("%s_login_%s",
+                               str_replace("-", "_", $appInstance->getAppShortName()),
+                               $actReq
+                       );
                } // END - if
 
                // Get application instance
index 40d9c66..7c6a3ff 100644 (file)
@@ -63,6 +63,9 @@ class WebLinkHelper extends BaseWebHelper implements HelpableTemplate {
                // Set link base
                $helperInstance->setLinkBase($linkBase);
 
+               // Add default group
+               $helperInstance->openGroupByIdContent('main', "");
+
                // Return the prepared instance
                return $helperInstance;
        }
index eef7b46..9e92771 100644 (file)
@@ -60,7 +60,7 @@ class BaseActionResolver extends BaseResolver {
         * @return      void
         */
        protected final function setActionName ($actionName) {
-               $this->actionName = $actionName;
+               $this->actionName = (string) $actionName;
        }
 
        /**