return;
} // END - if
-$url = ''; $id = '0';
+// Init data
+$data = array(
+ 'id' => '0',
+ 'data_type' => 'TEMP',
+ 'url' => '',
+);
$ALLOWED = getUserData('receive_mails') - getUserData('mail_orders');
if (getConfig('order_max_full') == 'MAX') $ALLOWED = getUserData('receive_mails');
// Now check his points amount
$totalPoints = getTotalPoints(getMemberId());
-if ((isExtensionInstalledAndNewer('holiday', '0.1.3')) && (isUserDataEnabled('holiday_active'))) {
+// Admin can always book
+if ((isExtensionInstalledAndNewer('holiday', '0.1.3')) && (isUserDataEnabled('holiday_active')) && (!isAdmin())) {
// Holiday is active!
displayMessage('{--MEMBER_HOLIDAY_ORDER_NOT_POSSIBLE--}');
} elseif ((isPostRequestElementSet('frametester')) && ($ALLOWED > 0) && (postRequestElement('receiver') > 0)) {
postRequestElement('url')
), __FILE__, __LINE__);
- $type = 'TEMP'; $id = '0';
if (SQL_NUMROWS($result) == 1) {
// Load id and mail type
- // @TODO Rewrite this to SQL_FETCHARRAY()
- list($id, $type) = SQL_FETCHROW($result);
+ $data = SQL_FETCHARRAY($result);
} // END - if
// Free result
SQL_FREERESULT($result);
- if ($type == 'TEMP') {
+ if ($data['data_type'] == 'TEMP') {
// No entry found, so we need to check out the stats table as well... :)
// We have to add that suff here, now we continue WITHOUT checking and check the text and subject against some filters
- $url = '';
+ $data['url'] = '';
if (getConfig('allow_url_in_text') == 'Y') {
// Test submitted text against some filters (length, URLs in text etc.)
if ((isInStringIgnoreCase('https://', postRequestElement('text'))) || (isInStringIgnoreCase('http://', postRequestElement('text'))) || (isInStringIgnoreCase('www', postRequestElement('text')))) {
// URL found
- $url = 'modules.php?module=login&what=order&code=' . getCode('URL_FOUND');
+ $data['url'] = 'modules.php?module=login&what=order&code=' . getCode('URL_FOUND');
} // END - if
// Remove new-line and carriage-return characters
// Text length within allowed length?
if (strlen($TEST) > getConfig('max_tlength')) {
// Text is too long!
- $url = 'modules.php?module=login&what=order&code=' . getCode('OVERLENGTH');
+ $data['url'] = 'modules.php?module=login&what=order&code=' . getCode('OVERLENGTH');
} // END - if
} // END - if
setPostRequestElement('subject', str_replace(chr(92), '[nl]', substr(postRequestElement('subject'), 0, 200)));
if ((isInStringIgnoreCase('https://', postRequestElement('subject'))) || (isInStringIgnoreCase('http://', postRequestElement('subject'))) || (isInStringIgnoreCase('www', postRequestElement('subject')))) {
// URL in subject found
- $url = 'modules.php?module=login&what=order&code=' . getCode('SUBJECT_URL');
+ $data['url'] = 'modules.php?module=login&what=order&code=' . getCode('SUBJECT_URL');
} // END - if
} // END - if
// And shall I check that his URL is not in the black list?
if (isUrlBlacklisted(postRequestElement('url'))) {
// Create redirect-URL
- $url = 'modules.php?module=login&what=order&code=' . getCode('BLIST_URL') . '&blist=' . $GLOBALS['blacklist_data'][postRequestElement('url')]['timestamp'];
+ $data['url'] = 'modules.php?module=login&what=order&code=' . getCode('BLIST_URL') . '&blist=' . $GLOBALS['blacklist_data'][postRequestElement('url')]['timestamp'];
} // END - if
// Enougth receivers entered?
if ((postRequestElement('receiver') < getConfig('order_min')) && (!isAdmin())) {
// Less than allowed receivers entered!
- $url = 'modules.php?module=login&what=order&code=' . getCode('MORE_RECEIVERS3');
+ $data['url'] = 'modules.php?module=login&what=order&code=' . getCode('MORE_RECEIVERS3');
} // END - if
// Validate URL
if (!isUrlValid(postRequestElement('url'))) {
// URL is invalid!
- $url = 'modules.php?module=login&what=order&code=' . getCode('INVALID_URL');
+ $data['url'] = 'modules.php?module=login&what=order&code=' . getCode('INVALID_URL');
} // END - if
// Probe for HTML extension
setPostRequestElement('text', checkHtmlTags(postRequestElement('text')));
// Maybe invalid tags found?
- if (!isPostRequestElementSet('text')) $url = 'modules.php?module=login&what=order&code=' . getCode('INVALID_TAGS')."&id=".$id;
+ if (!isPostRequestElementSet('text')) $data['url'] = 'modules.php?module=login&what=order&code=' . getCode('INVALID_TAGS') . '&id=' . $data['id'];
} else {
// Remove any HTML code
setPostRequestElement('text', str_replace(array('<', '>'), array('{OPEN_HTML}', '{CLOSE_HTML}'), postRequestElement('text')));
// Is mail type set?
if ((!isPostRequestElementSet('mail_type')) || (postRequestElement('mail_type') < 1)) {
// Not correctly set
- $url = 'modules.php?module=login&what=order&code=' . getCode('NO_MAIL_TYPE');
+ $data['url'] = 'modules.php?module=login&what=order&code=' . getCode('NO_MAIL_TYPE');
} // END - if
} elseif (!isAdmin()) {
// He has already sent a mail within a specific time
- $url = 'modules.php?module=login&what=order&code=' . getCode('URL_TIME_LOCK') . '&id=' . $id;
+ $data['url'] = 'modules.php?module=login&what=order&code=' . getCode('URL_TIME_LOCK') . '&id=' . $data['id'];
}
// Still no error?
- if (empty($url)) {
+ if (empty($data['url'])) {
// Check for userids
$result = SQL_QUERY_ESC("SELECT
- c.`userid`
+ `c`.`userid`
FROM
`{?_MYSQL_PREFIX?}_user_cats` AS c
INNER JOIN
`{?_MYSQL_PREFIX?}_user_data` AS d
ON
- c.`userid`=d.`userid`
+ `c`.`userid`=`d`.`userid`
WHERE
- c.`cat_id`=%s AND
- c.`userid` != %s AND
- d.`status`='CONFIRMED'
+ `c`.`cat_id`=%s AND
+ `c`.`userid` != %s AND
+ `d`.`status`='CONFIRMED'
" . runFilterChain('user_exclusion_sql', ' ') . " AND
- d.`receive_mails` > 0
+ `d`.`receive_mails` > 0
ORDER BY
- d.`{?order_select?}` {?order_mode?}",
+ `d`.`{?order_select?}` {?order_mode?}",
array(
bigintval(postRequestElement('cat')),
getMemberId()
// Check if he has enougth points for this order and selected more than 0 receivers
if (($usedPoints > 0) && ($usedPoints <= $totalPoints) && ($content['target_send'] > 0)) {
// Gettings points is okay, so we can add $usedPoints later from
- if ((!isValidId($id)) || ($type != 'TEMP')) {
+ if ((!isValidId($data['id'])) || ($data['data_type'] != 'TEMP')) {
// New order
- $id = '0';
+ $data['id'] = '0';
if (isExtensionActive('html_mail')) {
// HTML extension is active
SQL_QUERY_ESC("INSERT INTO
}
// Get insert id
- $id = SQL_INSERTID();
+ $data['id'] = SQL_INSERTID();
} else {
// Change current order
if (isExtensionActive('html_mail')) {
$content['target_send'],
bigintval(postRequestElement('zip')),
postRequestElement('html'),
- bigintval($id)
+ bigintval($data['id'])
), __FILE__, __LINE__);
} else {
// No HTML extension is active
bigintval(postRequestElement('cat')),
$content['target_send'],
bigintval(postRequestElement('zip')),
- bigintval($id)
+ bigintval($data['id'])
), __FILE__, __LINE__);
}
}
// Make sure only valid id numbers can pass
- assert(isValidId($id));
+ assert(isValidId($data['id']));
// Id is received so we can redirect the user, used points will be added when he send's out the mail
- $url = 'modules.php?module=frametester&order=' . $id;
+ $data['url'] = 'modules.php?module=frametester&order=' . $data['id'];
} elseif ($content['target_send'] == '0') {
// Not enougth receivers found which can receive mails
- $url = 'modules.php?module=login&what=order&code=' . getCode('MORE_RECEIVERS2');
+ $data['url'] = 'modules.php?module=login&what=order&code=' . getCode('MORE_RECEIVERS2');
} else {
// No enougth points left!
- $url = 'modules.php?module=login&what=order&code=' . getCode('MORE_POINTS');
+ $data['url'] = 'modules.php?module=login&what=order&code=' . getCode('MORE_POINTS');
}
} else {
// Ordered more mails than he can send in this category
- $url = 'modules.php?module=login&what=order&code=' . getCode('NO_RECS_LEFT');
+ $data['url'] = 'modules.php?module=login&what=order&code=' . getCode('NO_RECS_LEFT');
}
} // END - if
} elseif (postRequestElement('receiver') == '0') {
// Not enougth receivers selected
- $url = 'modules.php?module=login&what=order&code=' . getCode('MORE_RECEIVERS1');
+ $data['url'] = 'modules.php?module=login&what=order&code=' . getCode('MORE_RECEIVERS1');
} elseif (($ALLOWED == '0') && (getConfig('order_max_full') == 'ORDER')) {
// No more mail orders allowed
displayMessage('{--MEMBER_ORDER_ALLOWED_EXHAUSTED--}');
if (isExtensionInstalledAndNewer('holiday', '0.1.3')) {
// Check user's holiday status
$result_holiday = SQL_QUERY_ESC("SELECT
- COUNT(d.`userid`) AS `cnt`
+ COUNT(`d`.`userid`) AS `cnt`
FROM
`{?_MYSQL_PREFIX?}_user_data` AS d
LEFT JOIN
`{?_MYSQL_PREFIX?}_user_holidays` AS h
ON
- d.`userid`=h.`userid`
+ `d`.`userid`=`h`.`userid`
WHERE
- d.`userid`=%s AND
- d.`receive_mails` > 0 AND
- d.`status`='CONFIRMED' AND
- d.`holiday_active`='Y' AND
- h.`holiday_start` < UNIX_TIMESTAMP() AND
- h.`holiday_end` > UNIX_TIMESTAMP()
+ `d`.`userid`=%s AND
+ `d`.`receive_mails` > 0 AND
+ `d`.`status`='CONFIRMED' AND
+ `d`.`holiday_active`='Y' AND
+ `h`.`holiday_start` < UNIX_TIMESTAMP() AND
+ `h`.`holiday_end` > UNIX_TIMESTAMP()
LIMIT 1",
array(bigintval($userid)), __FILE__, __LINE__);
// Now we need to load the mail types...
$result = SQL_QUERY("SELECT `id`, `price`, `payment`, `mail_title` FROM `{?_MYSQL_PREFIX?}_payments` ORDER BY `payment` ASC", __FILE__, __LINE__);
- $types = array();
+ $payments = array();
if (!SQL_HASZERONUMS($result)) {
// Is the error code set?
if (isGetRequestElementSet('code')) {
} // END - if
// Load all email types...
- while ($type = SQL_FETCHARRAY($result)) {
- array_push($types, $type);
+ while ($payment = SQL_FETCHARRAY($result)) {
+ array_push($payments, $payment);
} // END - while
// Free memory
// Mail type
$content['type_selection'] = '';
- foreach ($types as $key => $value) {
+ foreach ($payments as $key => $value) {
if (is_array($value)) {
// Output option line
- $content['type_selection'] .= ' <option value="' . $types[$key]['id'] . '"';
- if (($OLD_ORDER) && ($content['payment_id'] == $types[$key]['id'])) $content['type_selection'] .= ' selected="selected"';
- $content['type_selection'] .= '>{%pipe,translateComma=' . $types[$key]['price'] . '%} {--PER_MAIL--} - ' . $types[$key]['mail_title'] . ' - ' . round($types[$key]['payment']) . ' {--PAYMENT--}</option>';
+ $content['type_selection'] .= ' <option value="' . $payments[$key]['id'] . '"';
+ if (($OLD_ORDER) && ($content['payment_id'] == $payments[$key]['id'])) $content['type_selection'] .= ' selected="selected"';
+ $content['type_selection'] .= '>{%pipe,translateComma=' . $payments[$key]['price'] . '%} {--PER_MAIL--} - ' . $payments[$key]['mail_title'] . ' - ' . round($payments[$key]['payment']) . ' {--PAYMENT--}</option>';
} // END - if
} // END - foreach
displayMessage('<span class="notice">{%message,MEMBER_ORDER_LINKS_LEFT=' . getTotalUnconfirmedMails(getMemberId()) . '%}</span>');
}
-if (!empty($url)) {
+if (!empty($data['url'])) {
// Redirect to requested URL
- redirectToUrl($url);
+ redirectToUrl($data['url']);
} // END - if
// [EOF]