]> git.mxchange.org Git - mailer.git/blobdiff - 0.2.1/inc/modules/member/what-holiday.php
win32 to unix line delimiters changed
[mailer.git] / 0.2.1 / inc / modules / member / what-holiday.php
index 83a9773232e221e382b8af454fa9aae3e48191ab..ac0a54d1228774c6aa3b7ea6d368fa89f01a8674 100644 (file)
-<?php\r
-/************************************************************************\r
- * MXChange v0.2.1                                    Start: 07/24/2004 *\r
- * ================                             Last change: 07/31/2004 *\r
- *                                                                      *\r
- * -------------------------------------------------------------------- *\r
- * File              : what-holiday.php                                 *\r
- * -------------------------------------------------------------------- *\r
- * Short description : Holiday requests                                 *\r
- * -------------------------------------------------------------------- *\r
- * Kurzbeschreibung  : Urlaubsschaltungen                               *\r
- * -------------------------------------------------------------------- *\r
- *                                                                      *\r
- * -------------------------------------------------------------------- *\r
- * Copyright (c) 2003 - 2008 by Roland Haeder                           *\r
- * For more information visit: http://www.mxchange.org                  *\r
- *                                                                      *\r
- * This program is free software; you can redistribute it and/or modify *\r
- * it under the terms of the GNU General Public License as published by *\r
- * the Free Software Foundation; either version 2 of the License, or    *\r
- * (at your option) any later version.                                  *\r
- *                                                                      *\r
- * This program is distributed in the hope that it will be useful,      *\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of       *\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        *\r
- * GNU General Public License for more details.                         *\r
- *                                                                      *\r
- * You should have received a copy of the GNU General Public License    *\r
- * along with this program; if not, write to the Free Software          *\r
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,               *\r
- * MA  02110-1301  USA                                                  *\r
- ************************************************************************/\r
-\r
-// Some security stuff...\r
-if (ereg(basename(__FILE__), $_SERVER['PHP_SELF']))\r
-{\r
-       $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";\r
-       require($INC);\r
-}\r
- elseif (!IS_LOGGED_IN())\r
-{\r
-       LOAD_URL(URL."/modules.php?module=index");\r
-}\r
- elseif ((!EXT_IS_ACTIVE("holiday")) && (!IS_ADMIN()))\r
-{\r
-       ADD_FATAL(EXTENSION_PROBLEM_EXT_INACTIVE, "holiday");\r
-       return;\r
-}\r
-\r
-// Add description as navigation point\r
-ADD_DESCR("member", basename(__FILE__));\r
-\r
-// Check for running mail orders in pool\r
-$result1 = SQL_QUERY_ESC("SELECT timestamp FROM "._MYSQL_PREFIX."_pool\r
-WHERE sender=%d ORDER BY timestamp DESC LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__);\r
-\r
-// Check for sent mail orders in stats\r
-$result2 = SQL_QUERY_ESC("SELECT timestamp_ordered FROM "._MYSQL_PREFIX."_user_stats\r
-WHERE userid=%d ORDER BY timestamp_ordered DESC LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__);\r
-\r
-if ((SQL_NUMROWS($result1) == 1) || (SQL_NUMROWS($result2) == 1))\r
-{\r
-       // Mail order found!\r
-       list($stamp1) = SQL_FETCHROW($result1);\r
-       list($stamp2) = SQL_FETCHROW($result2);\r
-       if (empty($stamp1)) $stamp1 = 0;\r
-       if (empty($stamp2)) $stamp2 = 0;\r
-\r
-       if ((($stamp1 + $CONFIG['holiday_lock']) > time()) || (($stamp2 + $CONFIG['holiday_lock']) > time()))\r
-       {\r
-               // Mail order is to close away!\r
-               unset($_POST['ok']);\r
-               unset($_POST['stop']);\r
-\r
-               if (($stamp1 + $CONFIG['holiday_lock']) > time())\r
-               {\r
-                       // Mail found in pool\r
-                       $stamp = $stamp1;\r
-               }\r
-                else\r
-               {\r
-                       // Mail found in stats\r
-                       $stamp = $stamp2;\r
-               }\r
-\r
-               // Display message and exit here\r
-               LOAD_TEMPLATE("admin_settings_saved", false, HOLIDAY_MEMBER_ORDER_1.MAKE_DATETIME($stamp, "1").HOLIDAY_MEMBER_ORDER_2);\r
-               return;\r
-       }\r
-}\r
-\r
-// Free memory\r
-SQL_FREERESULT($result1);\r
-SQL_FREERESULT($result2);\r
-\r
-if (isset($_POST['ok']))\r
-{\r
-       // Check holiday request...\r
-       $START = mktime(0, 0, 0, $_POST['start_month'], $_POST['start_day'], $_POST['start_year']);\r
-       $END   = mktime(0, 0, 0, $_POST['end_month']  , $_POST['end_day']  , $_POST['end_year']  );\r
-\r
-       // Test both values\r
-       $TEST = $END - $START;\r
-       if (($TEST < 0) || ($TEST > (ONE_DAY * $CONFIG['holiday_max'])) || ($START < time()) || ($END < time()))\r
-       {\r
-               // Time test failed\r
-               unset($_POST['ok']);\r
-       }\r
-        else\r
-       {\r
-               // Everything went okay so let's store his request and send mails\r
-               $result = SQL_QUERY_ESC("INSERT INTO "._MYSQL_PREFIX."_user_holidays (userid, holiday_start, holiday_end, comments) VALUES ('%s', '%s', '%s', '%s')",\r
-                array($GLOBALS['userid'], $START, $END, $_POST['comments']), __FILE__, __LINE__);\r
-\r
-               // Activate holiday system\r
-               $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data\r
-SET holiday_active='N', holiday_activated=UNIX_TIMESTAMP()\r
-WHERE userid=%d LIMIT 1",\r
-                array($GLOBALS['userid']), __FILE__, __LINE__);\r
-\r
-               // Prepare constants\r
-               define('_START_DAY'  , $_POST['start_day']);\r
-               define('_START_MONTH', $MONTH_DESCR[$_POST['start_month']]);\r
-               define('_START_YEAR' , $_POST['start_year']);\r
-               define('_END_DAY'    , $_POST['end_day']);\r
-               define('_END_MONTH'  , $MONTH_DESCR[$_POST['end_month']]);\r
-               define('_END_YEAR'   , $_POST['end_year']);\r
-\r
-               // Send mail to member\r
-               $msg = LOAD_EMAIL_TEMPLATE("member_holiday_request", $_POST['comments'], $GLOBALS['userid']);\r
-               SEND_EMAIL($GLOBALS['userid'], HOLIDAY_MEMBER_SUBJECT, $msg);\r
-\r
-               // Send mail to all admins\r
-               $msg = LOAD_EMAIL_TEMPLATE("admin_holiday_request", $_POST['comments'], $GLOBALS['userid']);\r
-               if (GET_EXT_VERSION("admins") >= "0.4.1")\r
-               {\r
-                       SEND_ADMIN_EMAILS_PRO(HOLIDAY_ADMIN_SUBJECT, "admin_holiday_request", $_POST['comments'], $GLOBALS['userid']);\r
-               }\r
-                else\r
-               {\r
-                       SEND_ADMIN_EMAILS(HOLIDAY_ADMIN_SUBJECT, $msg);\r
-               }\r
-\r
-               // Create task\r
-               $result = SQL_QUERY_ESC("INSERT INTO "._MYSQL_PREFIX."_task_system (userid, assigned_admin, status, task_type, subject, text, task_created) VALUES ('%s', '0', 'NEW', 'HOLIDAY_REQUEST', '%s', '%s', UNIX_TIMESTAMP())",\r
-                array($GLOBALS['userid'], HOLIDAY_ADMIN_SUBJECT, addslashes($msg)), __FILE__, __LINE__);\r
-\r
-               // Display message\r
-               LOAD_TEMPLATE("admin_settings_saved", false, HOLIDAY_IS_ACTIVATED_NOW);\r
-       }\r
-}\r
-\r
-// Holiday shall be ended now\r
-if (isset($_POST['stop']))\r
-{\r
-       // Okay, end the holiday here...\r
-       $result = SQL_QUERY_ESC("SELECT holiday_active, holiday_activated FROM "._MYSQL_PREFIX."_user_data\r
-WHERE userid=%d LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__);\r
-       list($active, $locked) = SQL_FETCHROW($result);\r
-       SQL_FREERESULT($result);\r
-\r
-       if (($active == "Y") && (($locked + $CONFIG['holiday_lock']) < time()))\r
-       {\r
-               // Load data\r
-               $result = SQL_QUERY_ESC("SELECT holiday_start, holiday_end FROM "._MYSQL_PREFIX."_user_holidays\r
-WHERE userid=%d LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__);\r
-               if (SQL_NUMROWS($result) == 1)\r
-               {\r
-                       // Data was found\r
-                       list($start, $end) = SQL_FETCHROW($result);\r
-                       SQL_FREERESULT($result);\r
-\r
-                       // Prepare it for the template\r
-                       define('__HOLIDAY_START', MAKE_DATETIME($start, "3"));\r
-                       define('__HOLIDAY_END'  , MAKE_DATETIME($end  , "3"));\r
-\r
-                       // Deactivate it now\r
-                       $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data\r
-SET holiday_active='N', holiday_activated='0'\r
-WHERE userid=%d LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__);\r
-\r
-                       // Remove entry\r
-                       $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_user_holidays\r
-WHERE userid=%d LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__);\r
-\r
-                       // Send email to admin\r
-                       if (GET_EXT_VERSION("admins") >= "0.4.1")\r
-                       {\r
-                               SEND_ADMIN_EMAILS_PRO(HOLIDAY_ADMIN_DEAC_SUBJ, "admin_holiday_deactivated", "", $GLOBALS['userid']);\r
-                       }\r
-                        else\r
-                       {\r
-                               $msg = LOAD_EMAIL_TEMPLATE("admin_holiday_deactivated", "", $GLOBALS['userid']);\r
-                               SEND_ADMIN_EMAILS(HOLIDAY_ADMIN_DEAC_SUBJ, $msg);\r
-                       }\r
-\r
-                       // Display message to user\r
-                       LOAD_TEMPLATE("admin_settings_saved", false, HOLIDAY_MEMBER_DEACTIVATED_NOW);\r
-               }\r
-                else\r
-               {\r
-                       // Display message to user\r
-                       LOAD_TEMPLATE("admin_settings_saved", false, HOLIDAY_MEMBER_CANNOT_DEACTIVATE);\r
-               }\r
-       }\r
-        elseif ($active == "Y")\r
-       {\r
-               // To fast!\r
-               LOAD_TEMPLATE("admin_settings_saved", false, HOLIDAY_MEMBER_LOCKED);\r
-       }\r
-}\r
-\r
-// If something is wrong or link in menu is just clicked display form\r
-if ((!isset($_POST['ok'])) && (!isset($_POST['stop'])))\r
-{\r
-       // Check if user is in holiday...\r
-       $result = SQL_QUERY_ESC("SELECT holiday_active, holiday_activated FROM "._MYSQL_PREFIX."_user_data\r
-WHERE userid=%d LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__);\r
-       list($active, $locked) = SQL_FETCHROW($result);\r
-       SQL_FREERESULT($result);\r
-\r
-       // Check for lock\r
-       if (($locked + $CONFIG['holiday_lock']) < time())\r
-       {\r
-               // User can deactivate his holiday request\r
-               switch ($active)\r
-               {\r
-               case "Y": // Display deactivation form\r
-                       // Load starting and ending date\r
-                       $result = SQL_QUERY_ESC("SELECT holiday_start, holiday_end FROM "._MYSQL_PREFIX."_user_holidays\r
-WHERE userid=%d LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__);\r
-                       if (SQL_NUMROWS($result) == 1)\r
-                       {\r
-                               // Data was found\r
-                               list($start, $end) = SQL_FETCHROW($result);\r
-                               SQL_FREERESULT($result);\r
-\r
-                               // Prepare it for the template\r
-                               define('__HOLIDAY_START', MAKE_DATETIME($start , "3"));\r
-                               define('__HOLIDAY_END'  , MAKE_DATETIME($end   , "3"));\r
-                               define('__HOLIDAY_LOCK' , MAKE_DATETIME($locked, "1"));\r
-\r
-                               // Load template\r
-                               LOAD_TEMPLATE("member_holiday_deactivate");\r
-                       }\r
-                        else\r
-                       {\r
-                               // Free memory\r
-                               SQL_FREERESULT($result);\r
-\r
-                               // Remove entry and reload URL\r
-                               $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data\r
-SET holiday_active='N'\r
-WHERE userid=%d LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__);\r
-                               LOAD_URL(URL."/modules.php?module=login&amp;what=holiday");\r
-                               return;\r
-                       }\r
-                       break;\r
-\r
-               case "N": // Display activation form\r
-                       // Starting day\r
-                       define('_START_DAY'  , ADD_SELECTION("day"  , date("d", (time() + ONE_DAY)), "start"));\r
-                       define('_START_MONTH', ADD_SELECTION("month", date("m", (time() + ONE_DAY)), "start"));\r
-                       define('_START_YEAR' , ADD_SELECTION("year" , date("Y", (time() + ONE_DAY)), "start"));\r
-\r
-                       // Calcualte ending date\r
-                       $D = date("d", time() + ONE_DAY + (ONE_DAY * $CONFIG['holiday_max']));\r
-                       $M = date("m", time() + ONE_DAY + (ONE_DAY * $CONFIG['holiday_max']));\r
-                       $Y = date("Y", time() + ONE_DAY + (ONE_DAY * $CONFIG['holiday_max']));\r
-\r
-                       // Ending day\r
-                       define('_END_DAY'  , ADD_SELECTION("day"  , $D, "end"));\r
-                       define('_END_MONTH', ADD_SELECTION("month", $M, "end"));\r
-                       define('_END_YEAR' , ADD_SELECTION("year" , $Y, "end"));\r
-\r
-                       // Copy value from configuration\r
-                       define('__HOLIDAY_MAX', $CONFIG['holiday_max']);\r
-\r
-                       // Output form\r
-                       LOAD_TEMPLATE("member_holiday_form");\r
-                       break;\r
-               }\r
-       }\r
-        else\r
-       {\r
-               // To fast!\r
-               LOAD_TEMPLATE("admin_settings_saved", false, HOLIDAY_MEMBER_LOCKED);\r
-       }\r
-}\r
-//\r
-?>\r
+<?php
+/************************************************************************
+ * MXChange v0.2.1                                    Start: 07/24/2004 *
+ * ================                             Last change: 07/31/2004 *
+ *                                                                      *
+ * -------------------------------------------------------------------- *
+ * File              : what-holiday.php                                 *
+ * -------------------------------------------------------------------- *
+ * Short description : Holiday requests                                 *
+ * -------------------------------------------------------------------- *
+ * Kurzbeschreibung  : Urlaubsschaltungen                               *
+ * -------------------------------------------------------------------- *
+ *                                                                      *
+ * -------------------------------------------------------------------- *
+ * Copyright (c) 2003 - 2008 by Roland Haeder                           *
+ * For more information visit: http://www.mxchange.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 2 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, write to the Free Software          *
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,               *
+ * MA  02110-1301  USA                                                  *
+ ************************************************************************/
+
+// Some security stuff...
+if (ereg(basename(__FILE__), $_SERVER['PHP_SELF']))
+{
+       $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
+       require($INC);
+}
+ elseif (!IS_LOGGED_IN())
+{
+       LOAD_URL(URL."/modules.php?module=index");
+}
+ elseif ((!EXT_IS_ACTIVE("holiday")) && (!IS_ADMIN()))
+{
+       ADD_FATAL(EXTENSION_PROBLEM_EXT_INACTIVE, "holiday");
+       return;
+}
+
+// Add description as navigation point
+ADD_DESCR("member", basename(__FILE__));
+
+// Check for running mail orders in pool
+$result1 = SQL_QUERY_ESC("SELECT timestamp FROM "._MYSQL_PREFIX."_pool
+WHERE sender=%d ORDER BY timestamp DESC LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__);
+
+// Check for sent mail orders in stats
+$result2 = SQL_QUERY_ESC("SELECT timestamp_ordered FROM "._MYSQL_PREFIX."_user_stats
+WHERE userid=%d ORDER BY timestamp_ordered DESC LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__);
+
+if ((SQL_NUMROWS($result1) == 1) || (SQL_NUMROWS($result2) == 1))
+{
+       // Mail order found!
+       list($stamp1) = SQL_FETCHROW($result1);
+       list($stamp2) = SQL_FETCHROW($result2);
+       if (empty($stamp1)) $stamp1 = 0;
+       if (empty($stamp2)) $stamp2 = 0;
+
+       if ((($stamp1 + $CONFIG['holiday_lock']) > time()) || (($stamp2 + $CONFIG['holiday_lock']) > time()))
+       {
+               // Mail order is to close away!
+               unset($_POST['ok']);
+               unset($_POST['stop']);
+
+               if (($stamp1 + $CONFIG['holiday_lock']) > time())
+               {
+                       // Mail found in pool
+                       $stamp = $stamp1;
+               }
+                else
+               {
+                       // Mail found in stats
+                       $stamp = $stamp2;
+               }
+
+               // Display message and exit here
+               LOAD_TEMPLATE("admin_settings_saved", false, HOLIDAY_MEMBER_ORDER_1.MAKE_DATETIME($stamp, "1").HOLIDAY_MEMBER_ORDER_2);
+               return;
+       }
+}
+
+// Free memory
+SQL_FREERESULT($result1);
+SQL_FREERESULT($result2);
+
+if (isset($_POST['ok']))
+{
+       // Check holiday request...
+       $START = mktime(0, 0, 0, $_POST['start_month'], $_POST['start_day'], $_POST['start_year']);
+       $END   = mktime(0, 0, 0, $_POST['end_month']  , $_POST['end_day']  , $_POST['end_year']  );
+
+       // Test both values
+       $TEST = $END - $START;
+       if (($TEST < 0) || ($TEST > (ONE_DAY * $CONFIG['holiday_max'])) || ($START < time()) || ($END < time()))
+       {
+               // Time test failed
+               unset($_POST['ok']);
+       }
+        else
+       {
+               // Everything went okay so let's store his request and send mails
+               $result = SQL_QUERY_ESC("INSERT INTO "._MYSQL_PREFIX."_user_holidays (userid, holiday_start, holiday_end, comments) VALUES ('%s', '%s', '%s', '%s')",
+                array($GLOBALS['userid'], $START, $END, $_POST['comments']), __FILE__, __LINE__);
+
+               // Activate holiday system
+               $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data
+SET holiday_active='N', holiday_activated=UNIX_TIMESTAMP()
+WHERE userid=%d LIMIT 1",
+                array($GLOBALS['userid']), __FILE__, __LINE__);
+
+               // Prepare constants
+               define('_START_DAY'  , $_POST['start_day']);
+               define('_START_MONTH', $MONTH_DESCR[$_POST['start_month']]);
+               define('_START_YEAR' , $_POST['start_year']);
+               define('_END_DAY'    , $_POST['end_day']);
+               define('_END_MONTH'  , $MONTH_DESCR[$_POST['end_month']]);
+               define('_END_YEAR'   , $_POST['end_year']);
+
+               // Send mail to member
+               $msg = LOAD_EMAIL_TEMPLATE("member_holiday_request", $_POST['comments'], $GLOBALS['userid']);
+               SEND_EMAIL($GLOBALS['userid'], HOLIDAY_MEMBER_SUBJECT, $msg);
+
+               // Send mail to all admins
+               $msg = LOAD_EMAIL_TEMPLATE("admin_holiday_request", $_POST['comments'], $GLOBALS['userid']);
+               if (GET_EXT_VERSION("admins") >= "0.4.1")
+               {
+                       SEND_ADMIN_EMAILS_PRO(HOLIDAY_ADMIN_SUBJECT, "admin_holiday_request", $_POST['comments'], $GLOBALS['userid']);
+               }
+                else
+               {
+                       SEND_ADMIN_EMAILS(HOLIDAY_ADMIN_SUBJECT, $msg);
+               }
+
+               // Create task
+               $result = SQL_QUERY_ESC("INSERT INTO "._MYSQL_PREFIX."_task_system (userid, assigned_admin, status, task_type, subject, text, task_created) VALUES ('%s', '0', 'NEW', 'HOLIDAY_REQUEST', '%s', '%s', UNIX_TIMESTAMP())",
+                array($GLOBALS['userid'], HOLIDAY_ADMIN_SUBJECT, addslashes($msg)), __FILE__, __LINE__);
+
+               // Display message
+               LOAD_TEMPLATE("admin_settings_saved", false, HOLIDAY_IS_ACTIVATED_NOW);
+       }
+}
+
+// Holiday shall be ended now
+if (isset($_POST['stop']))
+{
+       // Okay, end the holiday here...
+       $result = SQL_QUERY_ESC("SELECT holiday_active, holiday_activated FROM "._MYSQL_PREFIX."_user_data
+WHERE userid=%d LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__);
+       list($active, $locked) = SQL_FETCHROW($result);
+       SQL_FREERESULT($result);
+
+       if (($active == "Y") && (($locked + $CONFIG['holiday_lock']) < time()))
+       {
+               // Load data
+               $result = SQL_QUERY_ESC("SELECT holiday_start, holiday_end FROM "._MYSQL_PREFIX."_user_holidays
+WHERE userid=%d LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__);
+               if (SQL_NUMROWS($result) == 1)
+               {
+                       // Data was found
+                       list($start, $end) = SQL_FETCHROW($result);
+                       SQL_FREERESULT($result);
+
+                       // Prepare it for the template
+                       define('__HOLIDAY_START', MAKE_DATETIME($start, "3"));
+                       define('__HOLIDAY_END'  , MAKE_DATETIME($end  , "3"));
+
+                       // Deactivate it now
+                       $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data
+SET holiday_active='N', holiday_activated='0'
+WHERE userid=%d LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__);
+
+                       // Remove entry
+                       $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_user_holidays
+WHERE userid=%d LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__);
+
+                       // Send email to admin
+                       if (GET_EXT_VERSION("admins") >= "0.4.1")
+                       {
+                               SEND_ADMIN_EMAILS_PRO(HOLIDAY_ADMIN_DEAC_SUBJ, "admin_holiday_deactivated", "", $GLOBALS['userid']);
+                       }
+                        else
+                       {
+                               $msg = LOAD_EMAIL_TEMPLATE("admin_holiday_deactivated", "", $GLOBALS['userid']);
+                               SEND_ADMIN_EMAILS(HOLIDAY_ADMIN_DEAC_SUBJ, $msg);
+                       }
+
+                       // Display message to user
+                       LOAD_TEMPLATE("admin_settings_saved", false, HOLIDAY_MEMBER_DEACTIVATED_NOW);
+               }
+                else
+               {
+                       // Display message to user
+                       LOAD_TEMPLATE("admin_settings_saved", false, HOLIDAY_MEMBER_CANNOT_DEACTIVATE);
+               }
+       }
+        elseif ($active == "Y")
+       {
+               // To fast!
+               LOAD_TEMPLATE("admin_settings_saved", false, HOLIDAY_MEMBER_LOCKED);
+       }
+}
+
+// If something is wrong or link in menu is just clicked display form
+if ((!isset($_POST['ok'])) && (!isset($_POST['stop'])))
+{
+       // Check if user is in holiday...
+       $result = SQL_QUERY_ESC("SELECT holiday_active, holiday_activated FROM "._MYSQL_PREFIX."_user_data
+WHERE userid=%d LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__);
+       list($active, $locked) = SQL_FETCHROW($result);
+       SQL_FREERESULT($result);
+
+       // Check for lock
+       if (($locked + $CONFIG['holiday_lock']) < time())
+       {
+               // User can deactivate his holiday request
+               switch ($active)
+               {
+               case "Y": // Display deactivation form
+                       // Load starting and ending date
+                       $result = SQL_QUERY_ESC("SELECT holiday_start, holiday_end FROM "._MYSQL_PREFIX."_user_holidays
+WHERE userid=%d LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__);
+                       if (SQL_NUMROWS($result) == 1)
+                       {
+                               // Data was found
+                               list($start, $end) = SQL_FETCHROW($result);
+                               SQL_FREERESULT($result);
+
+                               // Prepare it for the template
+                               define('__HOLIDAY_START', MAKE_DATETIME($start , "3"));
+                               define('__HOLIDAY_END'  , MAKE_DATETIME($end   , "3"));
+                               define('__HOLIDAY_LOCK' , MAKE_DATETIME($locked, "1"));
+
+                               // Load template
+                               LOAD_TEMPLATE("member_holiday_deactivate");
+                       }
+                        else
+                       {
+                               // Free memory
+                               SQL_FREERESULT($result);
+
+                               // Remove entry and reload URL
+                               $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data
+SET holiday_active='N'
+WHERE userid=%d LIMIT 1", array($GLOBALS['userid']), __FILE__, __LINE__);
+                               LOAD_URL(URL."/modules.php?module=login&amp;what=holiday");
+                               return;
+                       }
+                       break;
+
+               case "N": // Display activation form
+                       // Starting day
+                       define('_START_DAY'  , ADD_SELECTION("day"  , date("d", (time() + ONE_DAY)), "start"));
+                       define('_START_MONTH', ADD_SELECTION("month", date("m", (time() + ONE_DAY)), "start"));
+                       define('_START_YEAR' , ADD_SELECTION("year" , date("Y", (time() + ONE_DAY)), "start"));
+
+                       // Calcualte ending date
+                       $D = date("d", time() + ONE_DAY + (ONE_DAY * $CONFIG['holiday_max']));
+                       $M = date("m", time() + ONE_DAY + (ONE_DAY * $CONFIG['holiday_max']));
+                       $Y = date("Y", time() + ONE_DAY + (ONE_DAY * $CONFIG['holiday_max']));
+
+                       // Ending day
+                       define('_END_DAY'  , ADD_SELECTION("day"  , $D, "end"));
+                       define('_END_MONTH', ADD_SELECTION("month", $M, "end"));
+                       define('_END_YEAR' , ADD_SELECTION("year" , $Y, "end"));
+
+                       // Copy value from configuration
+                       define('__HOLIDAY_MAX', $CONFIG['holiday_max']);
+
+                       // Output form
+                       LOAD_TEMPLATE("member_holiday_form");
+                       break;
+               }
+       }
+        else
+       {
+               // To fast!
+               LOAD_TEMPLATE("admin_settings_saved", false, HOLIDAY_MEMBER_LOCKED);
+       }
+}
+//
+?>