Exemple #1
4
 public function getDatesBetween($dStart, $dEnd)
 {
     if ($dStart > $dEnd) {
         $var = $dStart;
         $dStart = $dEnd;
         $dEnd = $var;
     }
     $iStart = strtotime($dStart);
     $iEnd = strtotime($dEnd);
     if (false === $iStart || false === $iEnd) {
         return false;
     }
     $aStart = explode('-', $dStart);
     $aEnd = explode('-', $dEnd);
     if (count($aStart) !== 3 || count($aEnd) !== 3) {
         return false;
     }
     if (false === checkdate($aStart[1], $aStart[2], $aStart[0]) || false === checkdate($aEnd[1], $aEnd[2], $aEnd[0]) || $iEnd < $iStart) {
         return false;
     }
     for ($i = $iStart; $i < $iEnd + 86400; $i = strtotime('+1 day', $i)) {
         $sDateToArr = strftime('%Y-%m-%d', $i);
         $sYear = substr($sDateToArr, 0, 4);
         $sMonth = substr($sDateToArr, 5, 2);
         //$aDates[$sYear][$sMonth][]=$sDateToArr;
         $aDates[] = $sDateToArr;
     }
     if (isset($aDates) && !empty($aDates)) {
         return $aDates;
     } else {
         return false;
     }
 }
	function get_pasien_check($val) {
		$val[tgl_periksa_tgl_start] = empty($val[tgl_periksa_tgl_start])?1:$val[tgl_periksa_tgl_start];
		$val[tgl_periksa_bln_start] = empty($val[tgl_periksa_bln_start])?1:$val[tgl_periksa_bln_start];
		$val[tgl_periksa_tgl_end] = empty($val[tgl_periksa_tgl_end])?1:$val[tgl_periksa_tgl_end];
		$val[tgl_periksa_bln_end] = empty($val[tgl_periksa_bln_end])?1:$val[tgl_periksa_bln_end];

		$objResponse = new xajaxResponse;

		$tgl_start = strtotime($val[tgl_periksa_thn_start] . "-" . $val[tgl_periksa_bln_start] . "-" . $val[tgl_periksa_tgl_start]);
		$tgl_end = strtotime($val[tgl_periksa_thn_end] . "-" . $val[tgl_periksa_bln_end] . "-" . $val[tgl_periksa_tgl_end]);

		if(!checkdate($val[tgl_periksa_bln_start], $val[tgl_periksa_tgl_start], $val[tgl_periksa_thn_start])) {
			$objResponse->addAlert("Tanggal Awal Tidak Valid");
			$objResponse->addScriptCall("fokus", "tgl_periksa_tgl_start");
		} elseif(!checkdate($val[tgl_periksa_bln_end], $val[tgl_periksa_tgl_end], $val[tgl_periksa_thn_end])) {
			$objResponse->addAlert("Tanggal Akhir Tidak Valid");
			$objResponse->addScriptCall("fokus", "tgl_periksa_tgl_start");
		} elseif($tgl_start > $tgl_end) {
			$objResponse->addAlert("Tanggal Awal Harus Kurang Dari Tanggal Akhir");
			$objResponse->addScriptCall("fokus", "tgl_periksa_tgl_start");
		} else {
			$objResponse->addScriptCall("xajax_get_pasien", $val);
		}
		return $objResponse;
	}
function printStk($_POST)
{
    # get vars
    foreach ($_POST as $key => $value) {
        ${$key} = $value;
    }
    # validate input
    require_lib("validate");
    $v = new validate();
    $v->isOk($fday, "num", 1, 2, "Invalid from Date day.");
    $v->isOk($fmon, "num", 1, 2, "Invalid from Date month.");
    $v->isOk($fyear, "num", 1, 4, "Invalid from Date Year.");
    $v->isOk($today, "num", 1, 2, "Invalid to Date day.");
    $v->isOk($tomon, "num", 1, 2, "Invalid to Date month.");
    $v->isOk($toyear, "num", 1, 4, "Invalid to Date Year.");
    # mix dates
    $fromdate = $fyear . "-" . $fmon . "-" . $fday;
    $todate = $toyear . "-" . $tomon . "-" . $today;
    if (!checkdate($fmon, $fday, $fyear)) {
        $v->isOk($fromdate, "num", 1, 1, "Invalid from date.");
    }
    if (!checkdate($tomon, $today, $toyear)) {
        $v->isOk($todate, "num", 1, 1, "Invalid to date.");
    }
    # display errors, if any
    if ($v->isError()) {
        $confirm = "";
        $errors = $v->getErrors();
        foreach ($errors as $e) {
            $confirm .= "<li class=err>-" . $e["msg"] . "<br>";
        }
        return $confirm;
    }
    # connect to database
    db_connect();
    // Layout
    $report = "\n\t<h3>Non-Stock Sales Report</h3>\n\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\n    <tr><th>Invoice no.</th><th>Date</th><th>Vat</th><th>SubTotal</th><th>Total</th></tr>";
    # Get all relevant records
    db_connect();
    $sql = "SELECT * FROM salesrec WHERE edate >= '{$fromdate}' AND edate <= '{$todate}' AND typ = 'non' AND div = '" . USER_DIV . "'";
    $recRslt = db_exec($sql) or errDie("Unable to access databse.", SELF);
    $i = 0;
    $tot = 0;
    $totvat = 0;
    $totexc = 0;
    while ($rec = pg_fetch_array($recRslt)) {
        # Calculate profit
        $tot += $rec['total'];
        $totvat += $rec['vat'];
        $excvat = sprint($rec['total'] - $rec['vat']);
        $totexc += $excvat;
        $report .= "<tr class='" . bg_class() . "'><td>{$rec['invnum']}</td><td>{$rec['edate']}</td><td>" . CUR . " {$rec['vat']}</td><td>" . CUR . " {$excvat}</td><td>" . CUR . " {$rec['total']}</td></tr>";
        $i++;
    }
    $tot = sprint($tot);
    $totvat = sprint($totvat);
    $totexc = sprint($totexc);
    $report .= "<tr class='bg-even'><td colspan=2><b>Totals</b></td><td>" . CUR . " {$totvat}</td><td>" . CUR . " {$totexc}</td><td>" . CUR . " {$tot}</td></tr>\n\t</table>\n    <p>\n\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "' width=15%>\n        <tr><td><br></td></tr>\n        <tr><th>Quick Links</th></tr>\n\t\t<tr class='bg-odd'><td><a href='sales-reports.php'>Sales Reports</a></td></tr>\n\t\t<script>document.write(getQuicklinkSpecial());</script>\n\t</table>";
    return $report;
}
function process_date_time(&$d, $field, $type = "")
{
    $month = $d["{$field}" . "_month"];
    $day = $d["{$field}" . "_day"];
    $year = $d["{$field}" . "_year"];
    $hour = $d["{$field}" . "_hour"];
    $minute = $d["{$field}" . "_minute"];
    $use = $d["{$field}" . "_use"];
    $valid = true;
    /* If user unchecked "Use date and time" then time = 0 */
    if (!$use) {
        $d[$field] = 0;
        return true;
    }
    if (!checkdate($month, $day, $year)) {
        $d["error"] .= "ERROR: {$type} date is invalid.";
        $valid = false;
    }
    if (!$hour and !$minute) {
        $hour = 0;
        $minute = 0;
    } elseif ($hour < 0 or $hour > 23 or $minute < 0 or $minute > 59) {
        $d["error"] .= "ERROR: {$type} time is invalid.";
        $valid = false;
    }
    if ($valid) {
        $d[$field] = mktime($hour, $minute, 0, $month, $day, $year);
    }
    return $valid;
}
  public function isValid()
  {
    if ($this->year < 0 ||  $this->year > 9999)
      return false;

    return checkdate($this->month, $this->day, $this->year);
  }
 /**
  * Validate a date.
  *
  * <code>
  * $date = "01-01-2020";
  *
  * $validator = new Prism\Validator\Date($date);
  *
  * if (!$validator->isValid()) {
  * ...
  * }
  *
  * </code>
  *
  * @return bool
  */
 public function isValid()
 {
     // Check for default SQL values.
     $defaultDates = array('0000-00-00', '1000-01-01');
     if (in_array($this->date, $defaultDates, true)) {
         return false;
     }
     $string = trim($this->date);
     if ($string === '') {
         return false;
     }
     if (is_numeric($string)) {
         $string = (int) $string;
         if ($string === 0) {
             return false;
         }
         $string = '@' . $string;
     }
     try {
         $date = new \DateTime($string);
     } catch (\Exception $e) {
         return false;
     }
     $month = $date->format('m');
     $day = $date->format('d');
     $year = $date->format('Y');
     if (checkdate($month, $day, $year)) {
         return true;
     } else {
         return false;
     }
 }
function VerifyTransactionDate($TranDate, $i, $Errors, $db)
{
    $sql = "SELECT confvalue FROM config WHERE confname='" . DefaultDateFormat . "'";
    $result = DB_query($sql, $db);
    $myrow = DB_fetch_array($result);
    $DateFormat = $myrow[0];
    if (mb_strpos($TranDate, '/') > 0) {
        $DateArray = explode('/', $TranDate);
    } elseif (mb_strpos($TranDate, '.') > 0) {
        $DateArray = explode('.', $TranDate);
    }
    if ($DateFormat == 'd/m/Y') {
        $Day = $DateArray[0];
        $Month = $DateArray[1];
        $Year = $DateArray[2];
    } elseif ($DateFormat == 'm/d/Y') {
        $Day = $DateArray[1];
        $Month = $DateArray[0];
        $Year = $DateArray[2];
    } elseif ($DateFormat == 'Y/m/d') {
        $Day = $DateArray[2];
        $Month = $DateArray[1];
        $Year = $DateArray[0];
    } elseif ($DateFormat == 'd.m.Y') {
        $Day = $DateArray[0];
        $Month = $DateArray[1];
        $Year = $DateArray[2];
    }
    if (!checkdate(intval($Month), intval($Day), intval($Year))) {
        $Errors[$i] = InvalidCurCostDate;
    }
    return $Errors;
}
Exemple #8
0
function cektgl($tanggal)
{
    $tgl = substr($tanggal, 0, 2);
    $bln = substr($tanggal, 3, 2);
    $thn = substr($tanggal, 6, 4);
    return checkdate($bln, $tgl, $thn);
}
 /**
  * {@inheritdoc}
  */
 public function reverseTransform($rfc3339)
 {
     if (!is_string($rfc3339)) {
         throw new TransformationFailedException('Expected a string.');
     }
     if ('' === $rfc3339) {
         return;
     }
     try {
         $dateTime = new \DateTime($rfc3339);
     } catch (\Exception $e) {
         throw new TransformationFailedException($e->getMessage(), $e->getCode(), $e);
     }
     if ($this->outputTimezone !== $dateTime->getTimezone()->getName()) {
         try {
             $dateTime->setTimezone(new \DateTimeZone($this->inputTimezone));
         } catch (\Exception $e) {
             throw new TransformationFailedException($e->getMessage(), $e->getCode(), $e);
         }
     }
     if (preg_match('/(\\d{4})-(\\d{2})-(\\d{2})/', $rfc3339, $matches)) {
         if (!checkdate($matches[2], $matches[3], $matches[1])) {
             throw new TransformationFailedException(sprintf('The date "%s-%s-%s" is not a valid date.', $matches[1], $matches[2], $matches[3]));
         }
     }
     return $dateTime;
 }
 public function save(Gyuser_Model_BankAccounts $bank)
 {
     if (trim($bank->getOpening_date()) == '') {
         $opening_date = null;
     } else {
         $dateArr = explode('/', $bank->getOpening_date());
         if (checkdate($dateArr[1], $dateArr[0], $dateArr[2])) {
             $stampeddate = mktime(12, 0, 0, $dateArr[1], $dateArr[0], $dateArr[2]);
             $opening_date = date("Y-m-d", $stampeddate);
         } elseif (checkdate($dateArr[0], '01', $dateArr[1])) {
             //in case they have entered only month and year format ex: 02/1993
             $stampeddate = mktime(12, 0, 0, $dateArr[0], '01', $dateArr[1]);
             $opening_date = date("Y-m-d", $stampeddate);
         } else {
             throw Exception('The bank opening date is invalid.');
         }
     }
     $data = array("user_id" => $bank->getUser_id(), "bank_name" => $bank->getBank_name(), "account_n" => $bank->getAccount_n(), "branch" => $bank->getBranch(), "opening_date" => $opening_date, "zip_code" => $bank->getZip_code(), "location_capital" => $bank->getLocation_capital());
     if (null === ($id = $bank->getId())) {
         unset($data['id']);
         $id = $this->getDbTable()->insert($data);
         return $id;
     } else {
         unset($data['user_id']);
         $id = $this->getDbTable()->update($data, array('id = ?' => $id));
         return $id;
     }
 }
 private function validDate()
 {
     if (checkdate($this->month, $this->day, $this->year)) {
         return true;
     }
     return false;
 }
Exemple #12
0
 function is_date($value, $format = 'dd.mm.yyyy')
 {
     if (strlen($value) >= 6 && strlen($format) == 10) {
         // find separator. Remove all other characters from $format
         $separator_only = str_replace(array('m', 'd', 'y'), '', $format);
         $separator = $separator_only[0];
         // separator is first character
         if ($separator && strlen($separator_only) == 2) {
             // make regex
             $regexp = str_replace('mm', '(0?[1-9]|1[0-2])', $format);
             $regexp = str_replace('dd', '(0?[1-9]|[1-2][0-9]|3[0-1])', $regexp);
             $regexp = str_replace('yyyy', '(19|20)?[0-9][0-9]', $regexp);
             $regexp = str_replace($separator, "\\" . $separator, $regexp);
             if ($regexp != $value && preg_match('/' . $regexp . '\\z/', $value)) {
                 // check date
                 $arr = explode($separator, $value);
                 $day = $arr[0];
                 $month = $arr[1];
                 $year = $arr[2];
                 if (@checkdate($month, $day, $year)) {
                     return true;
                 }
             }
         }
     }
     return false;
 }
 /**
  * {@inheritDoc}
  */
 public function validate($value)
 {
     if (!preg_match('!(\\d+)-(\\d+)-(\\d+)!', $value, $matches)) {
         return false;
     }
     return checkdate($matches[2], $matches[3], $matches[1]);
 }
Exemple #14
0
 /**
  * Will check if input date in format YYYY-MM-DD is valid.
  * 
  * @param string $input Date string in format YYYY-MM-DD
  * @return boolean TRUE if date is valid
  */
 public static function isDate($input)
 {
     // split input date into params
     list($year, $month, $day) = preg_split('/[-\\.\\/ ]/', $input);
     // check date using builtin function
     return checkdate($month, $day, $year);
 }
 public function isValid($value)
 {
     if (!is_string($value) && !is_int($value) && !is_float($value) && !is_array($value) && !$value instanceof Zend_Date) {
         $this->_error(self::INVALID);
         return false;
     }
     $this->_setValue($value);
     if ($this->_format !== null || $this->_locale !== null || is_array($value) || $value instanceof Zend_Date) {
         if (!Date::isDate($value, $this->_format, $this->_locale)) {
             if ($this->_checkFormat($value) === false) {
                 $this->_error(self::FALSEFORMAT);
             } else {
                 $this->_error(self::INVALID_DATE);
             }
             return false;
         }
     } else {
         if (!preg_match('/^\\d{4}-\\d{2}-\\d{2}$/', $value)) {
             $this->_format = 'yyyy-MM-dd';
             $this->_error(self::FALSEFORMAT);
             $this->_format = null;
             return false;
         }
         list($year, $month, $day) = sscanf($value, '%d-%d-%d');
         if (!checkdate($month, $day, $year)) {
             $this->_error(self::INVALID_DATE);
             return false;
         } else {
         }
     }
     return true;
 }
function is_gregorian_date($date)
{
    $year = substr($date, 0, 4);
    $month = substr($date, 5, 2);
    $day = substr($date, 8, 2);
    return checkdate($month, $day, $year);
}
/**
 *
 * Validate a date
 *
 * @param    string    $date
 * @param    string    format
 * @return    bool
 *
 */
function validateDate($date, $format = 'YYYY-MM-DD')
{
    switch ($format) {
        case 'YYYY/MM/DD':
        case 'YYYY-MM-DD':
            list($y, $m, $d) = preg_split('/[-\\.\\/ ]/', $date);
            break;
        case 'YYYY/DD/MM':
        case 'YYYY-DD-MM':
            list($y, $d, $m) = preg_split('/[-\\.\\/ ]/', $date);
            break;
        case 'DD-MM-YYYY':
        case 'DD/MM/YYYY':
            list($d, $m, $y) = preg_split('/[-\\.\\/ ]/', $date);
            break;
        case 'MM-DD-YYYY':
        case 'MM/DD/YYYY':
            list($m, $d, $y) = preg_split('/[-\\.\\/ ]/', $date);
            break;
        case 'YYYYMMDD':
            $y = substr($date, 0, 4);
            $m = substr($date, 4, 2);
            $d = substr($date, 6, 2);
            break;
        case 'YYYYDDMM':
            $y = substr($date, 0, 4);
            $d = substr($date, 4, 2);
            $m = substr($date, 6, 2);
            break;
        default:
            throw new Exception("Formato de data inválido");
    }
    return @checkdate($m, $d, $y);
}
 public static function execute(ApplicationAbstract $application)
 {
     $OSCOM_MessageStack = Registry::get('MessageStack');
     $data = array();
     if (DISPLAY_PRIVACY_CONDITIONS == '1') {
         if (isset($_POST['privacy_conditions']) === false || isset($_POST['privacy_conditions']) && $_POST['privacy_conditions'] != '1') {
             $OSCOM_MessageStack->add('Create', OSCOM::getDef('error_privacy_statement_not_accepted'));
         }
     }
     if (ACCOUNT_GENDER >= 0) {
         if (isset($_POST['gender']) && ($_POST['gender'] == 'm' || $_POST['gender'] == 'f')) {
             $data['gender'] = $_POST['gender'];
         } else {
             $OSCOM_MessageStack->add('Create', OSCOM::getDef('field_customer_gender_error'));
         }
     }
     if (isset($_POST['firstname']) && strlen(trim($_POST['firstname'])) >= ACCOUNT_FIRST_NAME) {
         $data['firstname'] = $_POST['firstname'];
     } else {
         $OSCOM_MessageStack->add('Create', sprintf(OSCOM::getDef('field_customer_first_name_error'), ACCOUNT_FIRST_NAME));
     }
     if (isset($_POST['lastname']) && strlen(trim($_POST['lastname'])) >= ACCOUNT_LAST_NAME) {
         $data['lastname'] = $_POST['lastname'];
     } else {
         $OSCOM_MessageStack->add('Create', sprintf(OSCOM::getDef('field_customer_last_name_error'), ACCOUNT_LAST_NAME));
     }
     if (ACCOUNT_DATE_OF_BIRTH == '1') {
         if (isset($_POST['dob_days']) && isset($_POST['dob_months']) && isset($_POST['dob_years']) && checkdate($_POST['dob_months'], $_POST['dob_days'], $_POST['dob_years'])) {
             $data['dob'] = mktime(0, 0, 0, $_POST['dob_months'], $_POST['dob_days'], $_POST['dob_years']);
         } else {
             $OSCOM_MessageStack->add('Create', OSCOM::getDef('field_customer_date_of_birth_error'));
         }
     }
     if (isset($_POST['email_address']) && strlen(trim($_POST['email_address'])) >= ACCOUNT_EMAIL_ADDRESS) {
         if (filter_var($_POST['email_address'], FILTER_VALIDATE_EMAIL)) {
             if (Account::checkEntry($_POST['email_address']) === false) {
                 $data['email_address'] = $_POST['email_address'];
             } else {
                 $OSCOM_MessageStack->add('Create', OSCOM::getDef('field_customer_email_address_exists_error'));
             }
         } else {
             $OSCOM_MessageStack->add('Create', OSCOM::getDef('field_customer_email_address_check_error'));
         }
     } else {
         $OSCOM_MessageStack->add('Create', sprintf(OSCOM::getDef('field_customer_email_address_error'), ACCOUNT_EMAIL_ADDRESS));
     }
     if (isset($_POST['password']) === false || isset($_POST['password']) && strlen(trim($_POST['password'])) < ACCOUNT_PASSWORD) {
         $OSCOM_MessageStack->add('Create', sprintf(OSCOM::getDef('field_customer_password_error'), ACCOUNT_PASSWORD));
     } elseif (isset($_POST['confirmation']) === false || isset($_POST['confirmation']) && trim($_POST['password']) != trim($_POST['confirmation'])) {
         $OSCOM_MessageStack->add('Create', OSCOM::getDef('field_customer_password_mismatch_with_confirmation'));
     } else {
         $data['password'] = $_POST['password'];
     }
     if ($OSCOM_MessageStack->size('Create') === 0) {
         if (Account::createEntry($data)) {
             $OSCOM_MessageStack->add('Create', OSCOM::getDef('success_account_updated'), 'success');
         }
         OSCOM::redirect(OSCOM::getLink(null, null, 'Create&Success', 'SSL'));
     }
 }
Exemple #19
0
function updateUser($data)
{
    global $db_con;
    if (checkdate(intval($data['month']), intval($data['day']), intval($data['year']))) {
        $date = $data['year'] . '-' . $data['month'] . '-' . $data['day'];
    } else {
        $date = '0000-00-00';
    }
    if (!empty($_POST['photo'])) {
        if (!empty($_POST['photo_updated'])) {
            if (copy('js/file-uploading/server/php/files/' . $_POST['photo'], 'uploads/avatars/' . $_POST['photo']) && copy('js/file-uploading/server/php/files/thumbnail/' . $_POST['photo'], 'uploads/avatars/thumbs/' . $_POST['photo'])) {
                $photo = $_POST['photo'];
                unlink('js/file-uploading/server/php/files/' . $_POST['photo']);
                unlink('js/file-uploading/server/php/files/thumbnail/' . $_POST['photo']);
            } else {
                $photo = '';
            }
        } else {
            $photo = $_POST['photo'];
        }
    } else {
        $photo = '';
    }
    $q = "UPDATE `users` SET\n\t\t`first_name` = '" . $db_con->escape($data['first_name']) . "',\n\t\t`last_name` = '" . $db_con->escape($data['last_name']) . "',\n\t\t`birthday` = '" . $date . "',\n\t\t`gender` = " . $data['gender'] . ",\n\t\t`college` = '" . $db_con->escape($data['college']) . "',\n\t\t`high_school` = '" . $db_con->escape($data['high_school']) . "',\n\t\t`school` = '" . $db_con->escape($data['school']) . "',\n\t\t`company_name` = '" . $db_con->escape($data['company_name']) . "',\n\t\t`position` = '" . $db_con->escape($data['position']) . "',\n\t\t`location` = '" . $db_con->escape($data['location']) . "',\n\t\t`hometown` = '" . $db_con->escape($data['hometown']) . "',\n\t\t`mailing_address` = '" . $db_con->escape($data['mailing_address']) . "',\n\t\t`alt_email` = '" . $db_con->escape($data['alt_email']) . "',\n\t\t`social_network` = '" . $db_con->escape($data['social_network']) . "',\n\t\t`phone` = '" . $db_con->escape($data['phone']) . "',\n\t\t`quotes` = '" . $db_con->escape($data['quotes']) . "',\n\t\t`about_me` = '" . $db_con->escape($data['about_me']) . "',\n\t\t`photo` = '" . $photo . "'\n\t\t WHERE `user_id` = " . $data['user_id'];
    return $db_con->query($q);
}
Exemple #20
0
 public function testBirthNumber()
 {
     $faker = new Generator();
     $faker->addProvider(new Person($faker));
     $faker->addProvider(new Miscellaneous($faker));
     for ($i = 0; $i < 1000; $i++) {
         $birthNumber = $faker->birthNumber();
         $birthNumber = str_replace('/', '', $birthNumber);
         // check date
         $year = intval(substr($birthNumber, 0, 2), 10);
         $month = intval(substr($birthNumber, 2, 2), 10);
         $day = intval(substr($birthNumber, 4, 2), 10);
         // make 4 digit year from 2 digit representation
         $year += $year < 54 ? 2000 : 1900;
         // adjust special cases for month
         if ($month > 50) {
             $month -= 50;
         }
         if ($year >= 2004 && $month > 20) {
             $month -= 20;
         }
         $this->assertTrue(checkdate($month, $day, $year), "Birth number {$birthNumber}: date {$year}/{$month}/{$day} is invalid.");
         // check CRC if presented
         if (strlen($birthNumber) == 10) {
             $crc = intval(substr($birthNumber, -1), 10);
             $refCrc = intval(substr($birthNumber, 0, -1), 10) % 11;
             if ($refCrc == 10) {
                 $refCrc = 0;
             }
             $this->assertEquals($crc, $refCrc, "Birth number {$birthNumber}: checksum {$crc} doesn't match expected {$refCrc}.");
         }
     }
 }
 public function convertPHPFormatDateToISOFormatDate($inputPHPFormat, $date)
 {
     $dateFormat = new sfDateFormat();
     try {
         $symfonyPattern = $this->__getSymfonyDateFormatPattern($inputPHPFormat);
         $dateParts = $dateFormat->getDate($date, $symfonyPattern);
         if (is_array($dateParts) && isset($dateParts['year']) && isset($dateParts['mon']) && isset($dateParts['mday'])) {
             $day = $dateParts['mday'];
             $month = $dateParts['mon'];
             $year = $dateParts['year'];
             // Additional check done for 3 digit years, or more than 4 digit years
             if (checkdate($month, $day, $year) && $year >= 1000 && $year <= 9999) {
                 $dateTime = new DateTime();
                 $dateTime->setTimezone(new DateTimeZone(date_default_timezone_get()));
                 $dateTime->setDate($year, $month, $day);
                 $date = $dateTime->format('Y-m-d');
                 return $date;
             } else {
                 return "Invalid date";
             }
         }
     } catch (Exception $e) {
         return "Invalid date";
     }
     return null;
 }
Exemple #22
0
 function attribute($name)
 {
     switch ($name) {
         case "day":
             return $this->Day;
             break;
         case "month":
             return $this->Month;
             break;
         case "year":
             return $this->Year;
             break;
         case "has_content":
         case "is_valid":
             return checkdate($this->Month, $this->Day, $this->Year);
             break;
         case "zodiac_no":
         case "zodiac_nr":
             return $this->Zodiac_No;
             break;
         case "zodiac_name":
             return $this->Zodiac_Name;
             break;
         case "days_on_earth":
             return $this->Days_On_Earth;
             break;
     }
 }
Exemple #23
0
 /**
  * Validate value, validates as SQL date or SQL date
  * @see \Phramework\Validate\ValidateResult for ValidateResult object
  * @param  mixed $value Value to validate
  * @return ValidateResult
  * @todo set errorObject
  */
 public function validate($value)
 {
     //Use string's validator
     $return = parent::validate($value);
     //Apply additional rules
     if ($return->status === true && preg_match('/^(\\d{4})-(\\d{2})-(\\d{2})$/', $value, $matches)) {
         if (checkdate($matches[2], $matches[3], $matches[1])) {
             $timestamp = strtotime($value);
             //validate formatMinimum
             if ($this->formatMinimum !== null && $timestamp < strtotime($this->formatMinimum)) {
                 $failure = 'formatMinimum';
                 goto error;
             }
             //validate formatMaximum
             if ($this->formatMaximum !== null && $timestamp > strtotime($this->formatMaximum)) {
                 $failure = 'formatMaximum';
                 goto error;
             }
             //Set status to success
             $return->status = true;
             return $return;
         }
     }
     $failure = 'failure';
     error:
     $return->status = false;
     $return->errorObject = new IncorrectParametersException([['type' => static::getType(), 'failure' => $failure]]);
     return $return;
 }
 protected function execute(InputInterface $input, OutputInterface $output)
 {
     $em = $this->getContainer()->get('doctrine')->getManager();
     $scheduler = $this->getContainer()->get('scheduler');
     $campaignId = $input->getArgument('campaignId');
     $deliveryTime = new \DateTime($input->getArgument('deliverytime'));
     $month = $input->getArgument('month');
     $year = $input->getArgument('year');
     $date = $input->getArgument('date');
     // The date at which the job is to be run
     $dateParts = explode('-', $date);
     if (!checkdate($dateParts[1], $dateParts[2], $dateParts[0])) {
         $output->writeLn("<error>Invalid date or format. Correct format is Y-m-d</error>");
         return;
     }
     $now = new \DateTime();
     $output->writeln("<comment>Scheduling recommendations email started on {$now->format('Y-m-d H:i:s')}</comment>");
     // Get All Users
     $qb = $em->createQueryBuilder();
     $qb->add('select', 'DISTINCT u.id')->add('from', 'ClassCentralSiteBundle:User u')->join('u.userPreferences', 'up')->join('u.follows', 'uf')->andWhere('uf is NOT NULL')->andWhere("up.value = 1")->andWhere('u.isverified = 1')->andWhere("up.type=" . UserPreference::USER_PREFERENCE_PERSONALIZED_COURSE_RECOMMENDATIONS);
     $users = $qb->getQuery()->getArrayResult();
     $scheduled = 0;
     $dt = new \DateTime($date);
     $deliveryTime = $deliveryTime->format(\DateTime::RFC2822);
     foreach ($users as $user) {
         $id = $scheduler->schedule($dt, RecommendationEmailJob::RECOMMENDATION_EMAIL_JOB_TYPE, 'ClassCentral\\MOOCTrackerBundle\\Job\\RecommendationEmailJob', array('campaignId' => $campaignId, 'deliveryTime' => $deliveryTime, 'month' => $month, 'year' => $year), $user['id']);
         if ($id) {
             $scheduled++;
         }
     }
     $output->writeln("<info>{$scheduled} recommendation emails jobs scheduled</info>");
 }
 /**
  * @param AttributeInterface $attribute
  * @param string             $data
  */
 protected function validateDateFormat(AttributeInterface $attribute, $data)
 {
     $dateValues = explode('-', $data);
     if (count($dateValues) !== 3 || (!is_numeric($dateValues[0]) || !is_numeric($dateValues[1]) || !is_numeric($dateValues[2])) || !checkdate($dateValues[1], $dateValues[2], $dateValues[0])) {
         throw InvalidArgumentException::expected($attribute->getCode(), 'a string with the format yyyy-mm-dd', 'setter', 'date', gettype($data), $data);
     }
 }
 public function importMarried($scope)
 {
     if (BasePrimitive::import($scope) && isset($scope[$this->name][self::DAY], $scope[$this->name][self::MONTH], $scope[$this->name][self::YEAR], $scope[$this->name][self::HOURS], $scope[$this->name][self::MINUTES], $scope[$this->name][self::SECONDS], $scope[$this->name][self::ZONE]) && is_array($scope[$this->name])) {
         if ($this->isEmpty($scope)) {
             return !$this->isRequired();
         }
         $zone = $scope[$this->name][self::ZONE];
         $hours = (int) $scope[$this->name][self::HOURS];
         $minutes = (int) $scope[$this->name][self::MINUTES];
         $seconds = (int) $scope[$this->name][self::SECONDS];
         $year = (int) $scope[$this->name][self::YEAR];
         $month = (int) $scope[$this->name][self::MONTH];
         $day = (int) $scope[$this->name][self::DAY];
         if (!checkdate($month, $day, $year)) {
             return false;
         }
         try {
             $stamp = new TimestampTZ($year . '-' . $month . '-' . $day . ' ' . $hours . ':' . $minutes . ':' . $seconds . ' ' . $zone);
         } catch (WrongArgumentException $e) {
             return false;
         }
         if ($this->checkRanges($stamp)) {
             $this->value = $stamp;
             return true;
         }
     }
     return false;
 }
Exemple #27
0
 private function calc($account_type)
 {
     $accounts = Accounts::find()->where(['type' => $account_type])->All();
     $sum = 0;
     $data = array();
     $stime = "00:00:01";
     $etime = "23:59:59";
     $from_date = "{$this->year}-01-01 {$stime}";
     $to_date = "{$this->year}-12-31 {$etime}";
     foreach ($accounts as $account) {
         $sum = $account->getTotal($from_date, $to_date);
         if ($sum != 0) {
             $accounty = array('id' => $account->id, 'name' => $account->name, 'sum' => $sum, 'id6111' => $account->id6111);
             for ($x = 1; $x <= 12; $x++) {
                 if ($x <= 9) {
                     $a = "0{$x}";
                 } else {
                     $a = $x;
                 }
                 $last = 31;
                 while (!checkdate($x, $last, $this->year)) {
                     $last--;
                 }
                 $accounty[$x] = $account->getTotal("{$this->year}-{$a}-01 {$stime}", "{$this->year}-{$a}-{$last} {$etime}");
             }
             $data[] = $accounty;
         }
     }
     return $data;
 }
Exemple #28
0
function grava($ID, $dia, $mes, $ano, $local, $descricao)
{
    $temerro = 0;
    $x = 0;
    if (empty($local)) {
        echo "<tr><td>Informe o local do evento </td></tr>" . "\n";
        $temerro = 1;
    }
    if (!checkdate($mes, $dia, $ano)) {
        echo "<tr><td>Data do evento inválida !</td></tr>" . "\n";
        $temerro = 1;
    }
    if (empty($descricao)) {
        echo "<tr><td>Descreva o evento </td></tr>" . "\n";
        $temerro = 1;
    }
    if ($temerro == 1) {
        include "volta.php";
    } else {
        $eve = new Evento($ID);
        $eve->setLocal($local);
        $eve->setDescricao($descricao);
        $eve->setData($ano . "/" . $mes . "/" . $dia);
        $eve->Grava();
        echo '<tr><td><br></td></tr>' . "\n";
        echo "<tr><td>Evento gravado com sucesso !</td></tr>\n";
        echo '<tr><td><br></td></tr>' . "\n";
        echo '<tr><td><br></td></tr>' . "\n";
        echo '<tr><td><a href="lst_cadeventos.php">OK</a></td></tr>' . "\n";
    }
}
 /**
  * Return count of donations grouped by status.
  *
  * @global 	WPDB $wpdb
  * @param 	array $args
  * @return 	array
  * @access  public
  * @static
  * @since 	1.0.0
  */
 public static function count_by_status($args = array())
 {
     global $wpdb;
     $defaults = array('s' => null, 'start_date' => null, 'end_date' => null);
     $args = wp_parse_args($args, $defaults);
     $where_clause = "post_type = 'donation'";
     if (!empty($args['s'])) {
         $where_clause .= "AND ((p.post_title LIKE '%{$args['s']}%') OR (p.post_content LIKE '%{$args['s']}%'))";
     }
     if (!empty($args['start_date'])) {
         $year = $args['start_date']['year'];
         $month = $args['start_date']['month'];
         $day = $args['start_date']['day'];
         if (false !== checkdate($month, $day, $year)) {
             $where_clause .= $wpdb->prepare(" AND post_date >= '%s'", date('Y-m-d', mktime(0, 0, 0, $month, $day, $year)));
         }
     }
     if (!empty($args['end_date'])) {
         $year = $args['end_date']['year'];
         $month = $args['end_date']['month'];
         $day = $args['end_date']['day'];
         if (false !== checkdate($month, $day, $year)) {
             $where_clause .= $wpdb->prepare(" AND post_date <= '%s'", date('Y-m-d', mktime(0, 0, 0, $month, $day, $year)));
         }
     }
     $sql = "SELECT post_status, COUNT( * ) AS num_donations\n\t\t\t\tFROM {$wpdb->posts}\t\n\t\t\t\tWHERE {$where_clause}\n\t\t\t\tGROUP BY post_status";
     return $wpdb->get_results($sql, OBJECT_K);
 }
 protected function execute(InputInterface $input, OutputInterface $output)
 {
     $em = $this->getContainer()->get('doctrine')->getManager();
     $scheduler = $this->getContainer()->get('scheduler');
     $subject = $input->getArgument('subject');
     $template = $input->getArgument('template');
     $campaignId = $input->getArgument('campaignId');
     $deliveryTime = new \DateTime($input->getArgument('deliverytime'));
     $date = $input->getArgument('date');
     // The date at which the job is to be run
     $dateParts = explode('-', $date);
     if (!checkdate($dateParts[1], $dateParts[2], $dateParts[0])) {
         $output->writeLn("<error>Invalid date or format. Correct format is Y-m-d</error>");
         return;
     }
     $now = new \DateTime();
     $output->writeln("<comment>Scheduling announcement email started on {$now->format('Y-m-d H:i:s')}</comment>");
     // Get All Users
     $qb = $em->createQueryBuilder();
     $qb->add('select', 'u.id')->add('from', 'ClassCentralSiteBundle:User u')->join('u.userPreferences', 'up')->andWhere("up.value = 1")->andWhere("up.type=" . UserPreference::USER_PREFERENCE_FOLLOW_UP_EMAILs);
     $users = $qb->getQuery()->getArrayResult();
     $scheduled = 0;
     foreach ($users as $user) {
         $id = $scheduler->schedule(new \DateTime($date), AnnouncementEmailJob::ANNOUNCEMENT_EMAIL_JOB_TYPE, 'ClassCentral\\MOOCTrackerBundle\\Job\\AnnouncementEmailJob', array('template' => $template, 'subject' => $subject, 'campaignId' => $campaignId, 'deliveryTime' => $deliveryTime->format(\DateTime::RFC2822)), $user['id']);
         if ($id) {
             $scheduled++;
         }
     }
     $output->writeln("<info>{$scheduled} jobs scheduled</info>");
 }