--- /dev/null
+<?php
+/**
+ * A general purpose web helper. You should not instance this like all the other
+ * base classes. Instead write your own web helper class and inherit this class.
+ *
+ * @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 BaseWebHelper extends BaseHelper {
+ /**
+ * Protected constructor
+ *
+ * @param $className The real class name
+ * @return void
+ */
+ protected function __construct ($className) {
+ // Call parent constructor
+ parent::__construct($className);
+ }
+
+ /**
+ * Checks wether the registration requires a valid email address
+ *
+ * @return $required Wether the email address is required
+ */
+ public function ifRegisterRequiresEmailVerification () {
+ $required = ($this->getConfigInstance()->readConfig('register_requires_email') === "Y");
+ return $required;
+ }
+
+ /**
+ * Checks wether profile data shall be asked
+ *
+ * @return $required Wether profile shall be asked
+ */
+ public function ifRegisterIncludesProfile () {
+ $required = ($this->getConfigInstance()->readConfig('register_includes_profile') === "Y");
+ return $required;
+ }
+
+ /**
+ * Checks wether personal data shall be asked
+ *
+ * @return $required Wether personal data shall be asked
+ */
+ public function ifRegisterIncludesPersonaData () {
+ $required = ($this->getConfigInstance()->readConfig('register_personal_data') === "Y");
+ return $required;
+ }
+
+ /**
+ * Checks wether email addresses can only be once used
+ *
+ * @return $isUnique
+ */
+ public function ifEmailMustBeUnique () {
+ $isUnique = ($this->getConfigInstance()->readConfig('register_email_unique') === "Y");
+ return $isUnique;
+ }
+
+ /**
+ * Checks wether the specified chat protocol is enabled in this form
+ *
+ * @return $required Wether the specified chat protocol is enabled
+ */
+ public function ifChatEnabled ($chatProtocol) {
+ $required = ($this->getConfigInstance()->readConfig(sprintf("chat_enabled_%s", $chatProtocol)) == "Y");
+ return $required;
+ }
+
+ /**
+ * Checks wether login is enabled or disabled
+ *
+ * @return $isEnabled Wether the login is enabled or disabled
+ */
+ public function ifLoginIsEnabled () {
+ $isEnabled = ($this->getConfigInstance()->readConfig('login_enabled') === "Y");
+ return $isEnabled;
+ }
+
+ /**
+ * Checks wether login shall be done by username
+ *
+ * @return $isEnabled Wether the login shall be done by username
+ */
+ public function ifLoginWithUsername () {
+ $isEnabled = ($this->getConfigInstance()->readConfig('login_type') == "username");
+ return $isEnabled;
+ }
+
+ /**
+ * Checks wether login shall be done by email
+ *
+ * @return $isEnabled Wether the login shall be done by email
+ */
+ public function ifLoginWithEmail () {
+ $isEnabled = ($this->getConfigInstance()->readConfig('login_type') == "email");
+ return $isEnabled;
+ }
+
+ /**
+ * Checks wether guest login is allowed
+ *
+ * @return $isAllowed Wether guest login is allowed
+ */
+ public function ifGuestLoginAllowed () {
+ $isAllowed = ($this->getConfigInstance()->readConfig('guest_login_allowed') === "Y");
+ return $isAllowed;
+ }
+
+ /**
+ * Checks wether the email address change must be confirmed
+ *
+ * @return $requireConfirm Wether email change must be confirmed
+ */
+ public function ifEmailChangeRequireConfirmation () {
+ $requireConfirm = ($this->getConfigInstance()->readConfig('email_change_confirmation') === "Y");
+ return $requireConfirm;
+ }
+
+ /**
+ * Checks wether the rules has been updated
+ *
+ * @return $rulesUpdated Wether rules has been updated
+ * @todo Implement check if rules have been changed
+ */
+ public function ifRulesHaveChanged () {
+ return false;
+ }
+
+ /**
+ * Checks wether email change is allowed
+ *
+ * @return $emailChange Wether changing email address is allowed
+ */
+ public function ifEmailChangeAllowed () {
+ $emailChange = ($this->getConfigInstance()->readConfig('email_change_allowed') === "Y");
+ return $emailChange;
+ }
+
+ /**
+ * Checks wether the user account is unconfirmed
+ *
+ * @return $isUnconfirmed Wether the user account is unconfirmed
+ */
+ public function ifUserAccountUnconfirmed () {
+ $isUnconfirmed = ($this->getValueField(UserDatabaseWrapper::DB_COLUMN_USER_STATUS) === $this->getConfigInstance()->readConfig('user_status_unconfirmed'));
+ return $isUnconfirmed;
+ }
+
+ /**
+ * Checks wether the user account is locked
+ *
+ * @return $isUnconfirmed Wether the user account is locked
+ */
+ public function ifUserAccountLocked () {
+ $isUnconfirmed = ($this->getValueField(UserDatabaseWrapper::DB_COLUMN_USER_STATUS) === $this->getConfigInstance()->readConfig('user_status_locked'));
+ return $isUnconfirmed;
+ }
+
+ /**
+ * Checks wether the user account is a guest
+ *
+ * @return $isUnconfirmed Wether the user account is a guest
+ */
+ public function ifUserAccountGuest () {
+ $isUnconfirmed = ($this->getValueField(UserDatabaseWrapper::DB_COLUMN_USER_STATUS) === $this->getConfigInstance()->readConfig('user_status_guest'));
+ return $isUnconfirmed;
+ }
+
+ /**
+ * Checks wether the refill page is active which should be not the default
+ * on non-web applications.
+ *
+ * @return $refillActive Wether the refill page is active
+ */
+ public function ifRefillPageActive () {
+ $refillActive = ($this->getConfigInstance()->readConfig('refill_page_active') === "Y");
+ return $refillActive;
+ }
+}
+
+// [EOF]
+?>