]> git.mxchange.org Git - mailer.git/blobdiff - inc/modules/member/what-holiday.php
Added update_year.sh (still not fully flexible) and updated all years with it.
[mailer.git] / inc / modules / member / what-holiday.php
index aa6cd9f76d0aa666a3e108b0c37fdb3f6b366078..703d9cbd5f2ded389d97e2fc4ddabbc9deaee57c 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 /************************************************************************
  * Mailer v0.2.1-FINAL                                Start: 07/24/2004 *
- * ================                             Last change: 07/31/2004 *
+ * ===================                          Last change: 07/31/2004 *
  *                                                                      *
  * -------------------------------------------------------------------- *
  * File              : what-holiday.php                                 *
  * $Date::                                                            $ *
  * $Tag:: 0.2.1-FINAL                                                 $ *
  * $Author::                                                          $ *
- * Needs to be in all Files and every File needs "svn propset           *
- * svn:keywords Date Revision" (autoprobset!) at least!!!!!!            *
  * -------------------------------------------------------------------- *
  * Copyright (c) 2003 - 2009 by Roland Haeder                           *
- * For more information visit: http://www.mxchange.org                  *
+ * Copyright (c) 2009 - 2015 by Mailer Developer Team                   *
+ * For more information visit: http://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 *
 
 // Some security stuff...
 if (!defined('__SECURITY')) {
-       die();
+       exit();
 } elseif (!isMember()) {
        redirectToIndexMemberOnlyModule();
 }
 
 // Add description as navigation point
-addMenuDescription('member', __FILE__);
+addYouAreHereLink('member', __FILE__);
 
 if ((!isExtensionActive('holiday')) && (!isAdmin())) {
-       loadTemplate('admin_settings_saved', false, generateExtensionInactiveNotInstalledMessage('holiday'));
+       displayMessage('{%pipe,generateExtensionInactiveNotInstalledMessage=holiday%}');
        return;
 } // END - if
 
@@ -55,7 +54,7 @@ if ((!isExtensionActive('holiday')) && (!isAdmin())) {
 $content = array();
 
 // Check for running mail orders in pool
-$result1 = SQL_QUERY_ESC("SELECT
+$result1 = sqlQueryEscaped("SELECT
        `timestamp`
 FROM
        `{?_MYSQL_PREFIX?}_pool`
@@ -66,7 +65,7 @@ ORDER BY
 LIMIT 1", array(getMemberId()), __FILE__, __LINE__);
 
 // Check for sent mail orders in stats
-$result2 = SQL_QUERY_ESC("SELECT
+$result2 = sqlQueryEscaped("SELECT
        `timestamp_ordered`
 FROM
        `{?_MYSQL_PREFIX?}_user_stats`
@@ -76,21 +75,21 @@ ORDER BY
        `timestamp_ordered` DESC
 LIMIT 1", array(getMemberId()), __FILE__, __LINE__);
 
-if ((SQL_NUMROWS($result1) == 1) || (SQL_NUMROWS($result2) == 1)) {
-       // Mail order found!
-       $content = merge_array($content, SQL_FETCHARRAY($result1));
-       $content = merge_array($content, SQL_FETCHARRAY($result2));
+if ((sqlNumRows($result1) == 1) || (sqlNumRows($result2) == 1)) {
+       // Mail order found
+       $content = merge_array($content, sqlFetchArray($result1));
+       $content = merge_array($content, sqlFetchArray($result2));
 
        // Fix missing entries
        if (empty($content['timestamp'])) $content['timestamp'] = '0';
        if (empty($content['timestamp_ordered'])) $content['timestamp_ordered'] = '0';
 
-       if ((($content['timestamp'] + getConfig('holiday_lock')) > time()) || (($content['timestamp_ordered'] + getConfig('holiday_lock')) > time())) {
+       if ((($content['timestamp'] + getHolidayLock()) > time()) || (($content['timestamp_ordered'] + getHolidayLock()) > time())) {
                // Mail order is to close away!
                unsetPostRequestElement('ok');
                unsetPostRequestElement('stop');
 
-               if (($content['timestamp'] + getConfig('holiday_lock')) > time()) {
+               if (($content['timestamp'] + getHolidayLock()) > time()) {
                        // Mail found in pool
                        $stamp = $content['timestamp'];
                } else {
@@ -99,35 +98,41 @@ if ((SQL_NUMROWS($result1) == 1) || (SQL_NUMROWS($result2) == 1)) {
                }
 
                // Display message and exit here
-               loadTemplate('admin_settings_saved', false, sprintf(getMessage('HOLIDAY_MEMBER_ORDER'), generateDateTime($stamp, 1)));
+               displayMessage('{%message,MEMBER_HOLIDAY_ORDER', generateDateTime($stamp, '1') . '%}');
                return;
        }
 } // END - if
 
 // Free memory
-SQL_FREERESULT($result1);
-SQL_FREERESULT($result2);
+sqlFreeResult($result1);
+sqlFreeResult($result2);
 
 if (isFormSent()) {
        // Check holiday request...
-       $START = mktime(0, 0, 0, postRequestElement('start_month'), postRequestElement('start_day'), postRequestElement('start_year'));
-       $content['holiday_end']   = mktime(0, 0, 0, postRequestElement('end_month')  , postRequestElement('end_day')  , postRequestElement('end_year')  );
+       $content['holiday_start'] = mktime(0, 0, 0, postRequestElement('start_mo'), postRequestElement('start_da'), postRequestElement('start_ye'));
+       $content['holiday_end']   = mktime(0, 0, 0, postRequestElement('end_mo')  , postRequestElement('end_da')  , postRequestElement('end_ye')  );
 
        // Test both values
-       $TEST = $content['holiday_end'] - $START;
-       if (($TEST < 0) || ($TEST > (getConfig('ONE_DAY') * getConfig('holiday_max'))) || ($START < time()) || ($content['holiday_end'] < time())) {
+       $TEST = $content['holiday_end'] - $content['holiday_start'];
+       if (($TEST < 0) || ($TEST > (getOneDay() * getConfig('holiday_max'))) || ($content['holiday_start'] < time()) || ($content['holiday_end'] < time())) {
                // Time test failed
                unsetPostRequestElement('ok');
        } else {
                // Everything went okay so let's store his request and send mails
-               SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_user_holidays` (`userid`, `holiday_start`, `holiday_end`, `comments`) VALUES ('%s','%s','%s','%s')",
-                       array(getMemberId(), $START, $content['holiday_end'], postRequestElement('comments')), __FILE__, __LINE__);
+               sqlQueryEscaped("INSERT INTO `{?_MYSQL_PREFIX?}_user_holidays` (`userid`, `holiday_start`, `holiday_end`, `comments`) VALUES ('%s','%s','%s','%s')",
+                       array(
+                               getMemberId(),
+                               $content['holiday_start'],
+                               $content['holiday_end'],
+                               postRequestElement('comments')
+                       ), __FILE__, __LINE__);
 
                // Activate holiday system
-               SQL_QUERY_ESC("UPDATE
+               sqlQueryEscaped("UPDATE
        `{?_MYSQL_PREFIX?}_user_data`
 SET
-       `holiday_active`='N', `holiday_activated`=UNIX_TIMESTAMP()
+       `holiday_active`='N',
+       `holiday_activated`=UNIX_TIMESTAMP()
 WHERE
        `userid`=%s
 LIMIT 1",
@@ -140,118 +145,133 @@ LIMIT 1",
                $content['end_day']     = bigintval(postRequestElement('end_day'));
                $content['end_month']   = $GLOBALS['month_descr'][postRequestElement('end_month')];
                $content['end_year']    = bigintval(postRequestElement('end_year'));
-               $content['comments']    = secureString(postRequestElement('comments'));
+               $content['comments']    = postRequestElement('comments');
 
                // Send mail to member
                $message = loadEmailTemplate('member_holiday_request', $content, getMemberId());
-               sendEmail(getMemberId(), getMessage('HOLIDAY_MEMBER_SUBJECT'), $message);
+               sendEmail(getMemberId(), '{--MEMBER_HOLIDAY_SUBJECT--}', $message);
 
                // Send mail to all admins
-               sendAdminNotification(getMessage('HOLIDAY_ADMIN_SUBJECT'), 'admin_holiday_request', $content, getMemberId());
+               sendAdminNotification('{--ADMIN_HOLIDAY_SUBJECT--}', 'admin_holiday_request', $content, getMemberId());
 
-               // Create task
-               createNewTask('{--HOLIDAY_ADMIN_SUBJECT--}', $message, 'HOLIDAY_REQUEST', getMemberId());
+               // Create task (we ignore the task id here)
+               createNewTask('{--ADMIN_HOLIDAY_SUBJECT--}', $message, 'HOLIDAY_REQUEST', getMemberId());
 
                // Display message
-               loadTemplate('admin_settings_saved', false, getMessage('HOLIDAY_IS_ACTIVATED_NOW'));
+               displayMessage('{--MEMBER_HOLIDAY_IS_ACTIVATED_NOW--}');
        }
 } // END - if
 
 // Holiday shall be ended now
 if (isPostRequestElementSet('stop')) {
        // Okay, end the holiday here...
-       $result = SQL_QUERY_ESC("SELECT
-       `holiday_active`, `holiday_activated`
+       $result = sqlQueryEscaped("SELECT
+       `holiday_active`,
+       `holiday_activated`
 FROM
        `{?_MYSQL_PREFIX?}_user_data`
 WHERE
        `userid`=%s
 LIMIT 1", array(getMemberId()), __FILE__, __LINE__);
-       $content = merge_array($content, SQL_FETCHARRAY($result));
-       SQL_FREERESULT($result);
 
-       if (($content['holiday_active'] == 'Y') && (($content['holiday_activated'] + getConfig('holiday_lock')) < time())) {
-               // Load data
-               $result = SQL_QUERY_ESC("SELECT
-       `holiday_start`, `holiday_end`
+       // Is there an entry?
+       if (sqlNumRows($result) == 1) {
+               // Merge arrays
+               $content = merge_array($content, sqlFetchArray($result));
+
+               if (($content['holiday_active'] == 'Y') && (($content['holiday_activated'] + getHolidayLock()) < time())) {
+                       // Load data
+                       $result2 = sqlQueryEscaped("SELECT
+       `holiday_start`,
+       `holiday_end`
 FROM
        `{?_MYSQL_PREFIX?}_user_holidays`
 WHERE
        `userid`=%s
 LIMIT 1", array(getMemberId()), __FILE__, __LINE__);
-               if (SQL_NUMROWS($result) == 1) {
-                       // Data was found
-                       $content = merge_array($content, SQL_FETCHARRAY($result));
-                       SQL_FREERESULT($result);
+                       if (sqlNumRows($result2) == 1) {
+                               // Data was found so merge it
+                               $content = merge_array($content, sqlFetchArray($result2));
 
-                       // Prepare it for the template
-                       $content['start'] = generateDateTime($content['holiday_start'], 3);
-                       $content['end']   = generateDateTime($content['holiday_end']  , 3);
+                               // Prepare it for the template
+                               $content['start'] = generateDateTime($content['holiday_start'], 3);
+                               $content['end']   = generateDateTime($content['holiday_end']  , 3);
 
-                       // Deactivate it now
-                       SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_user_data`
+                               // Deactivate it now
+                               sqlQueryEscaped("UPDATE
+       `{?_MYSQL_PREFIX?}_user_data`
 SET
        `holiday_active`='N',
        `holiday_activated`=0
 WHERE
        `userid`=%s
 LIMIT 1",
-                               array(getMemberId()), __FILE__, __LINE__);
+                                       array(getMemberId()), __FILE__, __LINE__);
 
-                       // Remove entry
-                       SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM
+                               // Remove entry
+                               sqlQueryEscaped("DELETE LOW_PRIORITY FROM
        `{?_MYSQL_PREFIX?}_user_holidays`
 WHERE
        `userid`=%s
 LIMIT 1",
-                               array(getMemberId()), __FILE__, __LINE__);
-
-                       // Send email to admin
-                       sendAdminNotification(getMessage('HOLIDAY_ADMIN_DEAC_SUBJ'), 'admin_holiday_deactivated', $content, getMemberId());
-
-                       // Display message to user
-                       loadTemplate('admin_settings_saved', false, getMessage('HOLIDAY_MEMBER_DEACTIVATED_NOW'));
-               } else {
-                       // Display message to user
-                       loadTemplate('admin_settings_saved', false, getMessage('HOLIDAY_MEMBER_CANNOT_DEACTIVATE'));
+                                       array(getMemberId()), __FILE__, __LINE__);
+
+                               // Send email to admin
+                               sendAdminNotification('{--ADMIN_HOLIDAY_DEACTIVATED_SUBJECT--}', 'admin_holiday_deactivated', $content, getMemberId());
+
+                               // Display message to user
+                               displayMessage('{--MEMBER_HOLIDAY_DEACTIVATED_NOW--}');
+                       } else {
+                               // Display message to user
+                               displayMessage('{--MEMBER_HOLIDAY_CANNOT_DEACTIVATE--}');
+                       }
+
+                       // Free result
+                       sqlFreeResult($result2);
+               } elseif ($content['holiday_active'] == 'Y') {
+                       // To fast!
+                       displayMessage('{--MEMBER_HOLIDAY_LOCKED--}');
                }
-       } elseif ($content['holiday_active'] == 'Y') {
-               // To fast!
-               loadTemplate('admin_settings_saved', false, getMessage('HOLIDAY_MEMBER_LOCKED'));
+       } else {
+               // User not found
+               displayMessage('{--MEMBER_HOLIDAY_NOT_STOPPED_404--}');
        }
+
+       // Free result
+       sqlFreeResult($result);
 } // END - if
 
 // If something is wrong or link in menu is just clicked display form
 if ((!isFormSent()) && (!isPostRequestElementSet('stop'))) {
        // Check if user is in holiday...
-       $result = SQL_QUERY_ESC("SELECT
-       `holiday_active`, `holiday_activated`
+       $result = sqlQueryEscaped("SELECT
+       `holiday_active`,
+       `holiday_activated`
 FROM
        `{?_MYSQL_PREFIX?}_user_data`
 WHERE
        `userid`=%s
 LIMIT 1", array(getMemberId()), __FILE__, __LINE__);
-       $content = SQL_FETCHARRAY($result);
-       SQL_FREERESULT($result);
+       $content = sqlFetchArray($result);
+       sqlFreeResult($result);
 
        // Check for lock
-       if (($content['holiday_activated'] + getConfig('holiday_lock')) < time()) {
+       if (($content['holiday_activated'] + getHolidayLock()) < time()) {
                // User can deactivate his holiday request
-               switch ($content['holiday_active'])
-               {
+               switch ($content['holiday_active']) {
                        case 'Y': // Display deactivation form
                                // Load starting and ending date
-                               $result = SQL_QUERY_ESC("SELECT
-       `holiday_start`, `holiday_end`
+                               $result = sqlQueryEscaped("SELECT
+       `holiday_start`,
+       `holiday_end`
 FROM
        `{?_MYSQL_PREFIX?}_user_holidays`
 WHERE
        `userid`=%s
 LIMIT 1", array(getMemberId()), __FILE__, __LINE__);
-                               if (SQL_NUMROWS($result) == 1) {
-                                       // Data was found
-                                       $content = merge_array($content, SQL_FETCHARRAY($result));
-                                       SQL_FREERESULT($result);
+                               if (sqlNumRows($result) == 1) {
+                                       // Data was found so merge it
+                                       $content = merge_array($content, sqlFetchArray($result));
 
                                        // Prepare it for the template
                                        $content['start'] = generateDateTime($content['holiday_start'] , 3);
@@ -259,47 +279,50 @@ LIMIT 1", array(getMemberId()), __FILE__, __LINE__);
                                        $content['lock']  = generateDateTime($content['holiday_activated'], 1);
 
                                        // Load template
-                                       loadTemplate('member_holiday_deactivate', false, $content);
+                                       loadTemplate('member_holiday_deactivate', FALSE, $content);
                                } else {
                                        // Free memory
-                                       SQL_FREERESULT($result);
+                                       sqlFreeResult($result);
 
                                        // Remove entry and reload URL
-                                       SQL_QUERY_ESC("UPDATE
+                                       sqlQueryEscaped("UPDATE
        `{?_MYSQL_PREFIX?}_user_data`
 SET
        `holiday_active`='N'
 WHERE
        `userid`=%s
-LIMIT 1", array(getMemberId()), __FILE__, __LINE__);
+LIMIT 1",
+                                               array(getMemberId()), __FILE__, __LINE__);
                                        redirectToUrl('modules.php?module=login&amp;what=holiday');
                                        return;
                                }
+
+                               // Free result
+                               sqlFreeResult($result);
                                break;
 
                        case 'N': // Display activation form
-                               // Starting day
-                               $content['start_day']   = addSelectionBox('day'  , date('d', (time() + getConfig('ONE_DAY'))), 'start');
-                               $content['start_month'] = addSelectionBox('month', date('m', (time() + getConfig('ONE_DAY'))), 'start');
-                               $content['start_year']  = addSelectionBox('year' , date('Y', (time() + getConfig('ONE_DAY'))), 'start');
+                               // Cache timestamps
+                               $startingStamp = time() + getOneDay();
+                               $endingStamp   = $startingStamp + (getOneDay() * getConfig('holiday_max'));
 
-                               // Calcualte ending date
-                               $D = date('d', time() + getConfig('ONE_DAY') + (getConfig('ONE_DAY') * getConfig('holiday_max')));
-                               $M = date('m', time() + getConfig('ONE_DAY') + (getConfig('ONE_DAY') * getConfig('holiday_max')));
-                               $Y = date('Y', time() + getConfig('ONE_DAY') + (getConfig('ONE_DAY') * getConfig('holiday_max')));
+                               // Starting day
+                               $content['start_day']   = addSelectionBox('da', getDay($startingStamp)  , 'start');
+                               $content['start_month'] = addSelectionBox('mo', getMonth($startingStamp), 'start');
+                               $content['start_year']  = addSelectionBox('ye', getYear($startingStamp) , 'start');
 
                                // Ending day
-                               $content['end_day']   = addSelectionBox('day'  , $D, 'end');
-                               $content['end_month'] = addSelectionBox('month', $M, 'end');
-                               $content['end_year']  = addSelectionBox('year' , $Y, 'end');
+                               $content['end_day']   = addSelectionBox('da', getDay($endingStamp)  , 'end');
+                               $content['end_month'] = addSelectionBox('mo', getMonth($endingStamp), 'end');
+                               $content['end_year']  = addSelectionBox('ye', getYear($endingStamp) , 'end');
 
                                // Output form
-                               loadTemplate('member_holiday_form', false, $content);
+                               loadTemplate('member_holiday_form', FALSE, $content);
                                break;
-               }
+               } // END - switch
        } else {
                // To fast!
-               loadTemplate('admin_settings_saved', false, getMessage('HOLIDAY_MEMBER_LOCKED'));
+               displayMessage('{--MEMBER_HOLIDAY_LOCKED--}');
        }
 } // END - if