A
download xtc_checkdate.inc.php
Language: PHP
License: GPL
Copyright: (c) 2002-2003 osCommerce(general.php,v 1.225 2003/05/29); www.oscommerce.com (c) 2003 nextcommerce (xtc_checkdate.inc.php,v 1.3 2003/08/13); www.nextcommerce.org (c) 2000-2001 The Exchange Project (earlier name of osCommerce) (c) 2003 XT-Commerce
LOC: 86
Project Info
melponeme(xoopsbrasileiro)
Server: BerliOS
Type: cvs
...omercio\XBComercio_v1x\inc\
   .htaccess
   base64todec.inc.php
   changedatain.inc.php
   changedataout.inc.php
   create_coupon_code.inc.php
   dectobase64.inc.php
   tep_add_tax.inc.php
   ...ctivate_banners.inc.php
   xtc_add_tax.inc.php
   xtc_address_format.inc.php
   xtc_address_label.inc.php
   ...address_summary.inc.php
   ...array_to_string.inc.php
   xtc_banner_exists.inc.php
   xtc_break_string.inc.php
   xtc_browser_detect.inc.php
   ..._also_purchased.inc.php
   ..._categories_box.inc.php
   ...nufacturers_box.inc.php
   xtc_calculate_tax.inc.php
   xtc_check_agent.inc.php
   ...tegories_status.inc.php
   xtc_check_gzip.inc.php
   xtc_check_stock.inc.php
   ...tock_attributes.inc.php
   xtc_checkdate.inc.php
   xtc_collect_posts.inc.php
   ...nvert_linefeeds.inc.php
   xtc_count_cart.inc.php
   ...ss_book_entries.inc.php
   ...customer_orders.inc.php
   xtc_count_modules.inc.php
   ...payment_modules.inc.php
   ...cts_in_category.inc.php
   ...hipping_modules.inc.php
   ...create_password.inc.php
   ...te_random_value.inc.php
   ...te_sort_heading.inc.php
   ...currency_exists.inc.php
   ...stomer_greeting.inc.php
   xtc_date_long.inc.php
   xtc_date_short.inc.php
   xtc_db_close.inc.php
   xtc_db_connect.inc.php
   ...nnect_installer.inc.php
   xtc_db_data_seek.inc.php
   xtc_db_error.inc.php
   xtc_db_fetch_array.inc.php
   ...db_fetch_fields.inc.php
   xtc_db_free_result.inc.php
   xtc_db_input.inc.php
   xtc_db_insert_id.inc.php
   xtc_db_install.inc.php
   xtc_db_num_rows.inc.php
   xtc_db_output.inc.php
   xtc_db_perform.inc.php
   ...b_prepare_input.inc.php
   xtc_db_query.inc.php
   ...query_installer.inc.php
   xtc_db_select_db.inc.php
   ...test_connection.inc.php
   ...e_db_permission.inc.php
   xtc_delete_file.inc.php
   xtc_display_banner.inc.php
   ...splay_tax_value.inc.php
   ..._content_bullet.inc.php
   ...aw_box_contents.inc.php
   ...raw_box_heading.inc.php
   ..._checkbox_field.inc.php
   ...field_installer.inc.php
   xtc_draw_form.inc.php
   ...aw_hidden_field.inc.php
   ...field_installer.inc.php
   ...raw_input_field.inc.php
   ...field_installer.inc.php
   ..._password_field.inc.php
   ...field_installer.inc.php
   ..._pull_down_menu.inc.php
   ...raw_radio_field.inc.php
   ...field_installer.inc.php
   ...selection_field.inc.php
   ...field_installer.inc.php
   xtc_draw_separator.inc.php
   ..._textarea_field.inc.php
   ...ncrypt_password.inc.php
   xtc_error_message.inc.php
   xtc_exit.inc.php
   xtc_expire_banners.inc.php
   ...expire_specials.inc.php
   xtc_filesize.inc.php
   xtc_findTitle.inc.php
   ...format_filesize.inc.php
   xtc_format_price.inc.php
   ...price_graduated.inc.php
   ...mat_price_order.inc.php
   ...t_special_price.inc.php
   xtc_gdlib_check.inc.php
   ...dress_format_id.inc.php
   ..._all_get_params.inc.php
   ...ttributes_model.inc.php
   xtc_get_categories.inc.php
   xtc_get_countries.inc.php
   ..._with_iso_codes.inc.php
   ...et_country_list.inc.php
   ...et_country_name.inc.php
   ...rrencies_values.inc.php
   ...er_status_value.inc.php
   ...tomers_statuses.inc.php
   xtc_get_db_cache.inc.php
   xtc_get_download.inc.php
   xtc_get_ip_address.inc.php
   ...t_manufacturers.inc.php
   xtc_get_order_data.inc.php
   ...rent_categories.inc.php
   xtc_get_path.inc.php
   xtc_get_prid.inc.php
   ...et_product_path.inc.php
   ...attribute_price.inc.php
   ..._price_checkout.inc.php
   ...t_products_name.inc.php
   ..._products_price.inc.php
   ...s_special_price.inc.php
   ..._products_stock.inc.php
   xtc_get_qty.inc.php
   ...ing_status_name.inc.php
   ...ort_description.inc.php
   ..._products_price.inc.php
   ...t_subcategories.inc.php
   ...et_tax_class_id.inc.php
   ...tax_description.inc.php
   xtc_get_tax_rate.inc.php
   ..._rate_from_desc.inc.php
   ...op_level_domain.inc.php
   xtc_get_uprid.inc.php
   xtc_get_zone_code.inc.php
   xtc_get_zone_name.inc.php
   ..._account_update.inc.php
   xtc_gzip_output.inc.php
   ...y_subcategories.inc.php
   ...duct_attributes.inc.php
   ...hide_session_id.inc.php
   xtc_href_link.inc.php
   xtc_image.inc.php
   xtc_image_button.inc.php
   xtc_image_submit.inc.php
   xtc_in_array.inc.php
   xtc_is_leap_year.inc.php
   xtc_not_null.inc.php
   xtc_output_warning.inc.php
   ...e_category_path.inc.php
   ...nput_field_data.inc.php
   ...e_search_string.inc.php
   xtc_php_mail.inc.php
   xtc_precision.inc.php
   xtc_rand.inc.php
   xtc_random_name.inc.php
   xtc_random_select.inc.php
   xtc_read_cache.inc.php
   ...calculate_price.inc.php
   xtc_redirect.inc.php
   ...ove_non_numeric.inc.php
   xtc_round.inc.php
   ...w_number_format.inc.php
   ...t_banner_status.inc.php
   ..._status_upgrade.inc.php
   ...specials_status.inc.php
   xtc_set_time_limit.inc.php
   xtc_setcookie.inc.php
   ...ategory_content.inc.php
   xtc_sqlSafeString.inc.php
   xtc_string_to_int.inc.php
   ...unlink_temp_dir.inc.php
   ...ner_click_count.inc.php
   ...r_display_count.inc.php
   ...ate_whos_online.inc.php
   xtc_validate_email.inc.php
   ...lidate_password.inc.php
   xtc_word_count.inc.php
   xtc_write_cache.inc.php
   ...write_user_info.inc.php

<?php
/* -----------------------------------------------------------------------------------------
   $Id: xtc_checkdate.inc.php,v 1.1 2004/07/13 23:48:15 mauriciolima Exp $   

   XT-Commerce - community made shopping
   http://www.xt-commerce.com

   Copyright (c) 2003 XT-Commerce
   -----------------------------------------------------------------------------------------
   based on: 
   (c) 2000-2001 The Exchange Project  (earlier name of osCommerce)
   (c) 2002-2003 osCommerce(general.php,v 1.225 2003/05/29); www.oscommerce.com 
   (c) 2003	 nextcommerce (xtc_checkdate.inc.php,v 1.3 2003/08/13); www.nextcommerce.org 

   Released under the GNU General Public License 
   ---------------------------------------------------------------------------------------*/
   
// Check date
  function xtc_checkdate($date_to_check, $format_string, &$date_array) {
    $separator_idx = -1;

    $separators = array('-', ' ', '/', '.');
    $month_abbr = array('jan','feb','mar','apr','may','jun','jul','aug','sep','oct','nov','dec');
    $no_of_days = array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);

    $format_string = strtolower($format_string);

    if (strlen($date_to_check) != strlen($format_string)) {
      return false;
    }

    $size = sizeof($separators);
    for ($i=0; $i<$size; $i++) {
      $pos_separator = strpos($date_to_check, $separators[$i]);
      if ($pos_separator != false) {
        $date_separator_idx = $i;
        break;
      }
    }

    for ($i=0; $i<$size; $i++) {
      $pos_separator = strpos($format_string, $separators[$i]);
      if ($pos_separator != false) {
        $format_separator_idx = $i;
        break;
      }
    }

    if ($date_separator_idx != $format_separator_idx) {
      return false;
    }

    if ($date_separator_idx != -1) {
      $format_string_array = explode( $separators[$date_separator_idx], $format_string );
      if (sizeof($format_string_array) != 3) {
        return false;
      }

      $date_to_check_array = explode( $separators[$date_separator_idx], $date_to_check );
      if (sizeof($date_to_check_array) != 3) {
        return false;
      }

      $size = sizeof($format_string_array);
      for ($i=0; $i<$size; $i++) {
        if ($format_string_array[$i] == 'mm' || $format_string_array[$i] == 'mmm') $month = $date_to_check_array[$i];
        if ($format_string_array[$i] == 'dd') $day = $date_to_check_array[$i];
        if ( ($format_string_array[$i] == 'yyyy') || ($format_string_array[$i] == 'aaaa') ) $year = $date_to_check_array[$i];
      }
    } else {
      if (strlen($format_string) == 8 || strlen($format_string) == 9) {
        $pos_month = strpos($format_string, 'mmm');
        if ($pos_month != false) {
          $month = substr( $date_to_check, $pos_month, 3 );
          $size = sizeof($month_abbr);
          for ($i=0; $i<$size; $i++) {
            if ($month == $month_abbr[$i]) {
              $month = $i;
              break;
            }
          }
        } else {
          $month = substr($date_to_check, strpos($format_string, 'mm'), 2);
        }
      } else {
        return false;
      }

      $day = substr($date_to_check, strpos($format_string, 'dd'), 2);
      $year = substr($date_to_check, strpos($format_string, 'yyyy'), 4);
    }

    if (strlen($year) != 4) {
      return false;
    }

    if (!settype($year, 'integer') || !settype($month, 'integer') || !settype($day, 'integer')) {
      return false;
    }

    if ($month > 12 || $month < 1) {
      return false;
    }

    if ($day < 1) {
      return false;
    }

    if (xtc_is_leap_year($year)) {
      $no_of_days[1] = 29;
    }

    if ($day > $no_of_days[$month - 1]) {
      return false;
    }

    $date_array = array($year, $month, $day);

    return true;
  }
 ?>

About Koders | Resources | Downloads | Support | Black Duck | Terms of Service | DMCA | Privacy Policy | Contact Us