/**
  * Checkin::get()
  * 
  * This function returns a list of guests not checked in yet.
  * 
  * @return array guests
  * @access public 
  * @since 2003-09-02
  * @author Christian Ehret <*****@*****.**> 
  */
 function get()
 {
     global $gDatabase, $tbl_booking, $tbl_guest, $tbl_booking_detail, $tbl_booking_detail_guest, $errorhandler;
     $guests = array();
     $query = "SELECT pk_booking_id, fk_guest_id, firstname, lastname, " . "DATE_FORMAT({$tbl_booking}.start_date, '%d.%m.%Y'), " . "DATE_FORMAT({$tbl_booking}.end_date, '%d.%m.%Y'), " . "pk_booking_detail_id " . sprintf("FROM {$tbl_booking}, {$tbl_guest}, {$tbl_booking_detail} " . "WHERE checked_in = %s " . "AND {$tbl_booking}.start_date <= NOW() " . "AND pk_guest_id = fk_guest_id " . "AND pk_booking_id = fk_booking_id " . "AND ISNULL({$tbl_booking}.deleted_date) " . "ORDER BY lastname", MetabaseGetBooleanFieldValue($gDatabase, false));
     $result = MetabaseQuery($gDatabase, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'Checkin::get()', $query);
     } else {
         $row = 0;
         for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase, $result)) == 0; ++$row) {
             $color = 0;
             if ($row % 2 != 0) {
                 $color = 1;
             }
             $guests[$row] = array('bookingid' => MetabaseFetchResult($gDatabase, $result, $row, 0), 'guestid' => MetabaseFetchResult($gDatabase, $result, $row, 1), 'firstname' => MetabaseFetchResult($gDatabase, $result, $row, 2), 'lastname' => MetabaseFetchResult($gDatabase, $result, $row, 3), 'startdate' => MetabaseFetchResult($gDatabase, $result, $row, 4), 'enddate' => MetabaseFetchResult($gDatabase, $result, $row, 5), 'bookingdetailid' => MetabaseFetchResult($gDatabase, $result, $row, 6), 'color' => $color);
         }
     }
     return $guests;
 }
Example #2
0
 /**
  * Category::getall()
  * 
  * This function returns all users.
  * 
  * @return array users
  * @access public 
  * @since 2003-07-24
  * @author Christian Ehret <*****@*****.**> 
  */
 function getall()
 {
     global $gDatabase2, $tbl_user, $request, $errorhandler;
     $user = array();
     $query = sprintf("SELECT pk_user_id, lastname, firstname, login \n\t\t                 FROM {$tbl_user} \n\t\t\t\t\t\t WHERE fk_hotel_id = %s \n\t\t\t\t\t\t AND ISNULL(deleted_date)\n\t\t\t\t\t\t ORDER BY lastname ", $request->GetVar('hotelid', 'session'));
     $result = MetabaseQuery($gDatabase2, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'Guest::quickinsert()', $query);
     } else {
         $row = 0;
         for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase2, $result)) == 0; ++$row) {
             $color = 0;
             if ($row % 2 != 0) {
                 $color = 1;
             }
             $user[$row] = array('userid' => MetabaseFetchResult($gDatabase2, $result, $row, 0), 'lastname' => MetabaseFetchResult($gDatabase2, $result, $row, 1), 'firstname' => MetabaseFetchResult($gDatabase2, $result, $row, 2), 'login' => MetabaseFetchResult($gDatabase2, $result, $row, 3), 'color' => $color);
         }
     }
     return $user;
 }
 /**
  * Category::getall()
  * 
  * This function returns all categories.
  * 
  * @return array 
  * @access public 
  * @since 2003-07-24
  * @author Christian Ehret <*****@*****.**> 
  */
 function getall()
 {
     global $gDatabase, $tbl_paycat, $errorhandler, $request;
     $cat = array();
     $query = "SELECT pk_paycat_id, paycat\n\t\t          FROM {$tbl_paycat}\n\t\t\t\t  WHERE ISNULL(fk_deleted_user_id) \n\t\t\t\t  ORDER BY paycat";
     $result = MetabaseQuery($gDatabase, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'PayCategory::getall()', $query);
     } else {
         $row = 0;
         for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase, $result)) == 0; ++$row) {
             $color = 0;
             if ($row % 2 != 0) {
                 $color = 1;
             }
             $cat[$row] = array('catid' => MetabaseFetchResult($gDatabase, $result, $row, 0), 'cat' => MetabaseFetchResult($gDatabase, $result, $row, 1), 'color' => $color);
         }
     }
     return $cat;
 }
 /**
  * bcat::get()
  * 
  * get all categories
  * 
  * @return array booking categories
  * @access public 
  * @since 2003-07-24
  * @author Christian Ehret <*****@*****.**> 
  */
 function get()
 {
     global $gDatabase, $tbl_bookingcat, $errorhandler, $request;
     $bcat = array();
     $query = "SELECT pk_bookingcat_id, bookingcat, color, description, days \n\t\t\t\t  FROM {$tbl_bookingcat} \n\t\t\t\t  WHERE ISNULL(fk_deleted_user_id)\n\t\t\t\t  ORDER BY bookingcat ";
     $result = MetabaseQuery($gDatabase, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'BookingCategory::getall()', $query);
     } else {
         $row = 0;
         for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase, $result)) == 0; ++$row) {
             $color = 0;
             if ($row % 2 != 0) {
                 $color = 1;
             }
             $bcat[$row] = array('bcatid' => MetabaseFetchResult($gDatabase, $result, $row, 0), 'name' => MetabaseFetchResult($gDatabase, $result, $row, 1), 'catcolor' => MetabaseFetchResult($gDatabase, $result, $row, 2), 'description' => MetabaseFetchResult($gDatabase, $result, $row, 3), 'days' => MetabaseFetchResult($gDatabase, $result, $row, 4), 'color' => $color);
         }
     }
     return $bcat;
 }
 /**
  * Barguestcat::getall()
  * 
  * This function returns all barguestcategories.
  * 
  * @return array articles
  * @access public 
  * @since 2006-02-17
  * @author Christian Ehret <*****@*****.**> 
  */
 function getall()
 {
     global $gDatabase2, $tbl_barguestcat, $request, $errorhandler;
     $barguestcat = array();
     $query = "SELECT pk_barguestcat_id, barguestcat\n\t\t                 FROM {$tbl_barguestcat}\n\t\t\t\t\t\t WHERE ISNULL(deleted_date)\n\t\t\t\t\t\t ORDER BY barguestcat  ";
     $result = MetabaseQuery($gDatabase2, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'Barguestcat::getall()', $query);
     } else {
         $row = 0;
         for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase2, $result)) == 0; ++$row) {
             $color = 0;
             if ($row % 2 != 0) {
                 $color = 1;
             }
             $barguestcat[$row] = array('barguestcatid' => MetabaseFetchResult($gDatabase2, $result, $row, 0), 'barguestcat' => MetabaseFetchResult($gDatabase2, $result, $row, 1), 'color' => $color);
         }
     }
     return $barguestcat;
 }
 /**
  * Archive::get()
  * 
  * This function returns the archived sql and depending on the parameters deletes data.
  * 
  * @param timestamp $thedate date till data should be archived
  * @param boolean $delete deletes the data if true
  * @return string $output
  * @access public 
  * @since 2004-07-09
  * @author Christian Ehret <*****@*****.**> 
  */
 function get($thedate, $delete)
 {
     global $gDatabase, $tbl_bought, $tbl_bararticle, $tbl_barguest, $request, $errorhandler;
     $output = "/*Archiv bis {$thedate}*/\n";
     $output1 = "/*{$tbl_bought}*/\n";
     $output2 = "/*{$tbl_bararticle}*/\n";
     $output3 = "/*{$tbl_barguest}*/\n";
     list($day, $month, $year) = split('[.]', $thedate);
     $thedate = "{$year}-{$month}-{$day} 23:59:59";
     $query = "SELECT pk_bought_id, fk_barguest_id, fk_bararticle_id, timestamp, num,\n\t\t  paid, inserted_date, fk_inserted_user_id, updated_date, fk_updated_user_id\n\t\t  FROM {$tbl_bought}\n\t\t  WHERE timestamp <= '{$thedate}'";
     $result = MetabaseQuery($gDatabase, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'Archive::get()', $query);
     } else {
         $guestids = array();
         $articleids = array();
         for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase, $result)) == 0; ++$row) {
             if (!in_array(MetabaseFetchResult($gDatabase, $result, $row, 1), $guestids)) {
                 array_push($guestids, MetabaseFetchResult($gDatabase, $result, $row, 1));
             }
             if (!in_array(MetabaseFetchResult($gDatabase, $result, $row, 2), $articleids)) {
                 array_push($articleids, MetabaseFetchResult($gDatabase, $result, $row, 2));
             }
             $output1 .= "\n";
             $output1 .= "DELETE FROM {$tbl_bought} WHERE pk_bought_id = " . MetabaseFetchResult($gDatabase, $result, $row, 0) . ";";
             $output1 .= "\n";
             $output1 .= sprintf("INSERT INTO {$tbl_bought} (pk_bought_id, fk_barguest_id, fk_bararticle_id, timestamp, num, paid, inserted_date, fk_inserted_user_id, updated_date, fk_updated_user_id) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s);", $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 0), 'no'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 1), 'no'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 2), 'no'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 3), 'yesifnotnull'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 4), 'no'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 5), 'yes'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 6), 'yesifnotnull'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 7), 'no'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 8), 'yesifnotnull'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 9), 'no'));
             if ($delete) {
                 $query = "DELETE FROM {$tbl_bought} WHERE pk_bought_id = " . MetabaseFetchResult($gDatabase, $result, $row, 0);
                 $result2 = MetabaseQuery($gDatabase, $query);
                 if (!$result2) {
                     $errorhandler->display('SQL', 'Archive::get()', $query);
                 }
             }
         }
         for ($i = 0; $i < count($articleids); $i++) {
             $query = "SELECT pk_bararticle_id, description, price, hotkey, inserted_date,\n\t\t\t\t          fk_inserted_user_id, updated_date, fk_updated_user_id, deleted_date, fk_deleted_user_id\n\t\t\t\t\t\t  FROM {$tbl_bararticle} WHERE pk_bararticle_id = {$articleids[$i]}";
             $result = MetabaseQuery($gDatabase, $query);
             if (!$result) {
                 $errorhandler->display('SQL', 'Archive::get()', $query);
             } else {
                 for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase, $result)) == 0; ++$row) {
                     $output2 .= "\n";
                     $output2 .= "DELETE FROM {$tbl_bararticle} WHERE pk_bararticle_id = " . MetabaseFetchResult($gDatabase, $result, $row, 0) . ";";
                     $output2 .= "\n";
                     $output2 .= sprintf("INSERT INTO {$tbl_bararticle} (pk_bararticle_id, description, price, hotkey, inserted_date, fk_inserted_user_id, updated_date, fk_updated_user_id, deleted_date, fk_deleted_user_id) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s); ", $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 0), 'no'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 1), 'yes'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 2), 'yes'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 3), 'yes'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 4), 'yesifnotnull'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 5), 'no'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 6), 'yesifnotnull'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 7), 'no'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 8), 'yesifnotnull'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 9), 'no'));
                 }
             }
         }
         for ($i = 0; $i < count($guestids); $i++) {
             $query = "SELECT pk_barguest_id, firstname, lastname, inserted_date,\n\t\t\t\t          fk_inserted_user_id, updated_date, fk_updated_user_id, deleted_date, fk_deleted_user_id\n\t\t\t\t\t\t  FROM {$tbl_barguest} WHERE pk_barguest_id = {$guestids[$i]}";
             $result = MetabaseQuery($gDatabase, $query);
             if (!$result) {
                 $errorhandler->display('SQL', 'Archive::get()', $query);
             } else {
                 for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase, $result)) == 0; ++$row) {
                     $output3 .= "\n";
                     $output3 .= "DELETE FROM {$tbl_barguest} WHERE pk_barguest_id = " . MetabaseFetchResult($gDatabase, $result, $row, 0) . ";";
                     $output3 .= "\n";
                     $output3 .= sprintf("INSERT INTO {$tbl_barguest} (pk_barguest_id, firstname, lastname, inserted_date, fk_inserted_user_id, updated_date, fk_updated_user_id, deleted_date, fk_deleted_user_id) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s); ", $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 0), 'no'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 1), 'yes'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 2), 'yes'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 3), 'yesifnotnull'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 4), 'no'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 5), 'yesifnotnull'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 6), 'no'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 7), 'yesifnotnull'), $this->nullifempty(MetabaseFetchResult($gDatabase, $result, $row, 8), 'no'));
                 }
             }
         }
         $output .= $output2 . "\n\n" . $output3 . "\n\n" . $output1;
     }
     return $output;
 }
 /**
  * Category::getall2()
  * 
  * This function returns all employees from all hotels.
  * 
  * @return array employees
  * @access public 
  * @since 2004-10-03
  * @author Christian Ehret <*****@*****.**> 
  */
 function getall2()
 {
     global $gDatabase2, $tbl_employee, $request, $errorhandler;
     $user = array();
     $query = "SELECT pk_employee_id, lastname, firstname, login, salary \n\t\t                 FROM {$tbl_employee} \n\t\t\t\t\t\t WHERE ISNULL(deleted_date)\n\t\t\t\t\t\t ORDER BY login";
     $result = MetabaseQuery($gDatabase2, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'Employee::getall2()', $query);
     } else {
         $row = 0;
         for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase2, $result)) == 0; ++$row) {
             $color = 0;
             if ($row % 2 != 0) {
                 $color = 1;
             }
             $user[$row] = array('userid' => MetabaseFetchResult($gDatabase2, $result, $row, 0), 'lastname' => MetabaseFetchResult($gDatabase2, $result, $row, 1), 'firstname' => MetabaseFetchResult($gDatabase2, $result, $row, 2), 'login' => MetabaseFetchResult($gDatabase2, $result, $row, 3), 'salary' => MetabaseFetchResult($gDatabase2, $result, $row, 4), 'color' => $color);
         }
     }
     return $user;
 }
Example #8
0
 /**
  * room::getname()
  * 
  * get the name of a room
  * 
  * @param number $roomid room id
  * @return string room name
  * @access public 
  * @since 2003-07-24
  * @author Christian Ehret <*****@*****.**> 
  */
 function getname($roomid)
 {
     global $gDatabase, $request, $tbl_room, $errorhandler;
     $query = sprintf("SELECT room FROM {$tbl_room} WHERE pk_room_id = %s", $roomid);
     $result = MetabaseQuery($gDatabase, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'room::getname()', $query);
     } else {
         return MetabaseFetchResult($gDatabase, $result, 0, 0);
     }
 }
 /**
  * Article::saveupdatePeriod
  * 
  * Save period as new or update existing one
  * 
  * @access public 
  * @since 2004-12-13
  * @author Christian Ehret <*****@*****.**> 
  */
 function saveupdatePeriod()
 {
     global $gDatabase, $request, $tbl_period, $tbl_bararticle, $errorhandler;
     $periodid = $request->GetVar('frm_theperiodid', 'post');
     $active = false;
     $auto_commit = false;
     $success = MetabaseAutoCommitTransactions($gDatabase, $auto_commit);
     if ($request->GetVar('frm_periodact', 'post') == 'true') {
         $active = true;
         $query = sprintf("UPDATE {$tbl_period} SET \n\t\t\t\t\t\t\t active = %s,\n\t\t\t\t\t\t\t updated_date = NOW(), \n\t\t\t\t\t\t\t fk_updated_user_id = %s ", MetabaseGetBooleanFieldValue($gDatabase, false), $request->GetVar('uid', 'session'));
         $result = MetabaseQuery($gDatabase, $query);
         if (!$result) {
             $success = MetabaseRollbackTransaction($gDatabase);
             $errorhandler->display('SQL', 'Article::saveupdatePeriod()', $query);
         }
     }
     // update
     if ($periodid !== '-1') {
         $query = sprintf("UPDATE {$tbl_period} SET \n\t\t\t                 period = %s, \n\t\t\t\t\t\t\t active = %s,\n\t\t\t\t\t\t\t updated_date = NOW(), \n\t\t\t\t\t\t\t fk_updated_user_id = %s \n\t\t\t\t\t\t\t WHERE pk_period_id = %s ", MetabaseGetTextFieldValue($gDatabase, $request->GetVar('frm_perioddesc', 'post')), MetabaseGetBooleanFieldValue($gDatabase, $active), $request->GetVar('uid', 'session'), $periodid);
     } else {
         // new
         $name = "zvs_pk_period_id";
         $sequence = MetabaseGetSequenceNextValue($gDatabase, $name, &$periodid);
         $query = sprintf("INSERT INTO {$tbl_period}\n\t\t\t                  (pk_period_id, period, active, inserted_date, fk_inserted_user_id, updated_date, fk_updated_user_id)\n\t\t\t\t\t\t\t  VALUES (%s, %s, %s, NOW(), %s, NULL, NULL )", $periodid, MetabaseGetTextFieldValue($gDatabase, $request->GetVar('frm_perioddesc', 'post')), MetabaseGetBooleanFieldValue($gDatabase, $active), $request->GetVar('uid', 'session'));
     }
     $result = MetabaseQuery($gDatabase, $query);
     if (!$result) {
         $success = MetabaseRollbackTransaction($gDatabase);
         $errorhandler->display('SQL', 'Article::saveupdatePeriod()', $query);
     } else {
         if ($request->GetVar('frm_cpyperiod', 'post') != -1) {
             $query = "SELECT fk_bararticlecat_id, description, price, hotkey\n\t\t\t\t\t  FROM {$tbl_bararticle} \n\t\t\t\t\t  WHERE ISNULL(deleted_date) AND\n\t\t\t\t\t  fk_period_id = " . $request->GetVar('frm_cpyperiod', 'post');
             $result = MetabaseQuery($gDatabase, $query);
             if (!$result) {
                 $success = MetabaseRollbackTransaction($gDatabase);
                 $errorhandler->display('SQL', 'Article::saveupdatePeriod()', $query);
             }
             for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase, $result)) == 0; ++$row) {
                 $name = "zvs_pk_bararticle_id";
                 $sequence = MetabaseGetSequenceNextValue($gDatabase, $name, &$bararticleid);
                 $query = sprintf("INSERT INTO {$tbl_bararticle} \n\t\t\t\t\t         (pk_bararticle_id, fk_period_id, fk_bararticlecat_id,\n\t\t\t\t\t\t\t description, price, hotkey, inserted_date, \n\t\t\t\t\t\t\t fk_inserted_user_id)\n\t\t\t\t\t\t\t VALUES (%s, %s, %s, %s, %s, %s, NOW(), %s) ", $bararticleid, $periodid, MetabaseFetchResult($gDatabase, $result, $row, 0), MetabaseGetTextFieldValue($gDatabase, MetabaseFetchResult($gDatabase, $result, $row, 1)), MetabaseGetTextFieldValue($gDatabase, MetabaseFetchResult($gDatabase, $result, $row, 2)), MetabaseGetTextFieldValue($gDatabase, MetabaseFetchResult($gDatabase, $result, $row, 3)), $request->GetVar('uid', 'session'));
                 $result2 = MetabaseQuery($gDatabase, $query);
                 if (!$result2) {
                     $success = MetabaseRollbackTransaction($gDatabase);
                     $errorhandler->display('SQL', 'Article::saveupdatePeriod()', $query);
                 }
             }
         }
         $success = MetabaseCommitTransaction($gDatabase);
         // end transaction
         $auto_commit = true;
         $success = MetabaseAutoCommitTransactions($gDatabase, $auto_commit);
     }
     return $periodid;
 }
*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
*  GNU General Public License for more details.
*
*  This copyright notice MUST APPEAR in all copies of the script!
***************************************************************/
/**
* Get a list of all guests with firstname beginning with a proper string
* 
* Guest
* 
* @since 2006-02-24
* @author Christian Ehret <*****@*****.**> 
*/
include_once "../includes/default.inc.php";
$auth->is_authenticated();
if ($_POST['autocomplete']) {
    $entry = $_POST['autocomplete'];
    echo '<ul>';
    $query = sprintf("SELECT lastname, firstname, pk_guest_id FROM {$tbl_guest} \n\t\t  WHERE firstname LIKE '%s%%' AND ISNULL(deleted_date)\n\t\t  ORDER BY lastname LIMIT 25", $entry);
    $result = MetabaseQuery($gDatabase, $query);
    if (!$result) {
    } else {
        for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase, $result)) == 0; ++$row) {
            echo "<li id=\"" . MetabaseFetchResult($gDatabase, $result, $row, 0) . "\"><span class=\"informal\">" . MetabaseFetchResult($gDatabase, $result, $row, 0) . ", </span>" . MetabaseFetchResult($gDatabase, $result, $row, 1) . "</li>";
        }
    }
    echo '</ul>';
}
?>

Example #11
0
 /**
  * Guest::asearch()
  * 
  * search adresses for a guest
  * 
  * @param string $firstname firstname
  * @param string $lastname lastname
  * @return array guest data
  * @access public 
  * @since 2003-07-24
  * @author Christian Ehret <*****@*****.**> 
  */
 function asearch($firstname, $lastname)
 {
     global $gDatabase, $tbl_guest, $tbl_address, $tbl_guest_address, $tbl_country, $tbl_booking, $tbl_booking_detail_guest, $tbl_booking_detail, $errorhandler, $request;
     $guest = array();
     $query = "SELECT g.pk_guest_id, \n\t\t\t\t  IF ( g.firstname =  '' OR g.firstname IS  NULL ,  '-', g.firstname )firstname, \n\t\t\t\t  g.lastname, \n\t\t\t\t  IF ( g.company =  '' OR g.company IS  NULL ,  '-', g.company )company \n\t\t\t\t  FROM {$tbl_guest} g  ";
     if ($firstname != "" or $lastname != "") {
         $query .= "WHERE ";
     }
     if ($firstname != "") {
         $query .= "firstname LIKE '%" . $firstname . "%' ";
     }
     if ($firstname != "" and $lastname != "") {
         $query .= "AND ";
     }
     if ($lastname != "") {
         $query .= "lastname LIKE '%" . $lastname . "%' ";
     }
     $query .= "GROUP  BY g.pk_guest_id ";
     $query .= "ORDER BY lastname, firstname ";
     $result = MetabaseQuery($gDatabase, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'Guest::asearch()', $query);
     } else {
         $row = 0;
         for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase, $result)) == 0; ++$row) {
             unset($addresses);
             $query = "SELECT pk_fk_address_id, address_type FROM {$tbl_guest_address} WHERE pk_fk_guest_id = " . MetabaseFetchResult($gDatabase, $result, $row, 0);
             $result2 = MetabaseQuery($gDatabase, $query);
             if (!$result2) {
                 $errorhandler->display('SQL', 'Guest::asearch()', $query);
             }
             for ($row2 = 0; ($eor = MetabaseEndOfResult($gDatabase, $result2)) == 0; ++$row2) {
                 $addresses[$row2] = $this->getAddress(MetabaseFetchResult($gDatabase, $result2, $row2, 0), MetabaseFetchResult($gDatabase, $result2, $row2, 1));
             }
             $color = 0;
             if ($row % 2 != 0) {
                 $color = 1;
             }
             $guest[$row] = array('guestid' => MetabaseFetchResult($gDatabase, $result, $row, 0), 'firstname' => MetabaseFetchResult($gDatabase, $result, $row, 1), 'lastname' => MetabaseFetchResult($gDatabase, $result, $row, 2), 'company' => MetabaseFetchResult($gDatabase, $result, $row, 3), 'addresses' => $addresses, 'color' => $color);
         }
     }
     return $guest;
 }
Example #12
0
 /**
  * price::getall()
  * 
  * get all prices
  * 
  * @param char $price_type price type 'N' normal 'A' advanced
  * @access public 
  * @return array prices
  * @since 2004-01-01
  * @author Christian Ehret <*****@*****.**> 
  */
 function getall($price_type)
 {
     global $gDatabase, $request, $tbl_price, $tbl_price2, $errorhandler;
     $prices = array();
     if ($price_type == 'N') {
         $query = "SELECT fk_roomcat_id, fk_bookingcat_id, fk_season_id,\n\t\t\t\t  price_person, price_children, price_absolute, price_type,\n\t\t\t\t  price_person_short, price_children_short, price_absolute_short,\n\t\t\t\t  price_children2, price_children2_short, price_children3, price_children3_short\n\t\t\t\t  FROM {$tbl_price} ";
         $result = MetabaseQuery($gDatabase, $query);
         if ($result) {
             for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase, $result)) == 0; ++$row) {
                 $prices[MetabaseFetchResult($gDatabase, $result, $row, 2)][MetabaseFetchResult($gDatabase, $result, $row, 0)][MetabaseFetchResult($gDatabase, $result, $row, 1)]['person'] = MetabaseFetchResult($gDatabase, $result, $row, 3);
                 $prices[MetabaseFetchResult($gDatabase, $result, $row, 2)][MetabaseFetchResult($gDatabase, $result, $row, 0)][MetabaseFetchResult($gDatabase, $result, $row, 1)]['children'] = MetabaseFetchResult($gDatabase, $result, $row, 4);
                 $prices[MetabaseFetchResult($gDatabase, $result, $row, 2)][MetabaseFetchResult($gDatabase, $result, $row, 0)][MetabaseFetchResult($gDatabase, $result, $row, 1)]['absolute'] = MetabaseFetchResult($gDatabase, $result, $row, 5);
                 $prices[MetabaseFetchResult($gDatabase, $result, $row, 2)][MetabaseFetchResult($gDatabase, $result, $row, 0)][MetabaseFetchResult($gDatabase, $result, $row, 1)]['type'] = MetabaseFetchResult($gDatabase, $result, $row, 6);
                 $prices[MetabaseFetchResult($gDatabase, $result, $row, 2)][MetabaseFetchResult($gDatabase, $result, $row, 0)][MetabaseFetchResult($gDatabase, $result, $row, 1)]['person_short'] = MetabaseFetchResult($gDatabase, $result, $row, 7);
                 $prices[MetabaseFetchResult($gDatabase, $result, $row, 2)][MetabaseFetchResult($gDatabase, $result, $row, 0)][MetabaseFetchResult($gDatabase, $result, $row, 1)]['children_short'] = MetabaseFetchResult($gDatabase, $result, $row, 8);
                 $prices[MetabaseFetchResult($gDatabase, $result, $row, 2)][MetabaseFetchResult($gDatabase, $result, $row, 0)][MetabaseFetchResult($gDatabase, $result, $row, 1)]['absolute_short'] = MetabaseFetchResult($gDatabase, $result, $row, 9);
                 $prices[MetabaseFetchResult($gDatabase, $result, $row, 2)][MetabaseFetchResult($gDatabase, $result, $row, 0)][MetabaseFetchResult($gDatabase, $result, $row, 1)]['children2'] = MetabaseFetchResult($gDatabase, $result, $row, 10);
                 $prices[MetabaseFetchResult($gDatabase, $result, $row, 2)][MetabaseFetchResult($gDatabase, $result, $row, 0)][MetabaseFetchResult($gDatabase, $result, $row, 1)]['children2_short'] = MetabaseFetchResult($gDatabase, $result, $row, 11);
                 $prices[MetabaseFetchResult($gDatabase, $result, $row, 2)][MetabaseFetchResult($gDatabase, $result, $row, 0)][MetabaseFetchResult($gDatabase, $result, $row, 1)]['children3'] = MetabaseFetchResult($gDatabase, $result, $row, 12);
                 $prices[MetabaseFetchResult($gDatabase, $result, $row, 2)][MetabaseFetchResult($gDatabase, $result, $row, 0)][MetabaseFetchResult($gDatabase, $result, $row, 1)]['children3_short'] = MetabaseFetchResult($gDatabase, $result, $row, 13);
             }
         }
         if ($request->GetVar('debug', 'get') == 'true') {
             print $query;
             print '<br><br>';
             print '<pre>';
             print_r($result);
             print '</pre><br><br>';
             print '<pre>';
             print_r($prices);
             print '</pre>';
         }
     } else {
         $query = "SELECT fk_roomcat_id, fk_bookingcat_id, fk_season_id,\n\t\t\t\t  price, price_short, persons_included, price_additional,\n\t\t\t\t  price_short_additional\n\t\t\t\t  FROM {$tbl_price2} ";
         $result = MetabaseQuery($gDatabase, $query);
         if ($result) {
             for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase, $result)) == 0; ++$row) {
                 $prices[MetabaseFetchResult($gDatabase, $result, $row, 2)][MetabaseFetchResult($gDatabase, $result, $row, 0)][MetabaseFetchResult($gDatabase, $result, $row, 1)]['price'] = MetabaseFetchResult($gDatabase, $result, $row, 3);
                 $prices[MetabaseFetchResult($gDatabase, $result, $row, 2)][MetabaseFetchResult($gDatabase, $result, $row, 0)][MetabaseFetchResult($gDatabase, $result, $row, 1)]['price_short'] = MetabaseFetchResult($gDatabase, $result, $row, 4);
                 $prices[MetabaseFetchResult($gDatabase, $result, $row, 2)][MetabaseFetchResult($gDatabase, $result, $row, 0)][MetabaseFetchResult($gDatabase, $result, $row, 1)]['person'] = MetabaseFetchResult($gDatabase, $result, $row, 5);
                 $prices[MetabaseFetchResult($gDatabase, $result, $row, 2)][MetabaseFetchResult($gDatabase, $result, $row, 0)][MetabaseFetchResult($gDatabase, $result, $row, 1)]['additional'] = MetabaseFetchResult($gDatabase, $result, $row, 6);
                 $prices[MetabaseFetchResult($gDatabase, $result, $row, 2)][MetabaseFetchResult($gDatabase, $result, $row, 0)][MetabaseFetchResult($gDatabase, $result, $row, 1)]['additional_short'] = MetabaseFetchResult($gDatabase, $result, $row, 7);
             }
         }
         if ($request->GetVar('debug', 'get') == 'true') {
             print $query;
             print '<br><br>';
             print '<pre>';
             print_r($result);
             print '</pre><br><br>';
             print '<pre>';
             print_r($prices);
             print '</pre>';
         }
     }
     return $prices;
 }
 /**
  * Calendar::getdates()
  * 
  * This function returns an array with all dates.
  * 
  * @return array dates
  * @access public 
  * @since 2005-01-11
  * @author Christian Ehret <*****@*****.**> 
  */
 function getdates()
 {
     global $gDatabase, $tbl_booking_detail, $request, $errorhandler;
     $dates = array();
     $j = 0;
     $query = "SELECT DATE_FORMAT(min( start_date  ) ,'%Y')  \n\t\t                 FROM {$tbl_booking_detail}  ";
     $result = MetabaseQuery($gDatabase, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'Calendar::getdates()', $query);
     } else {
         $startyear = MetabaseFetchResult($gDatabase, $result, 0, 0);
         $todaydate = getdate();
         $todayyear = $todaydate['year'];
         $i = 0;
         for ($year = $startyear; $year <= $todayyear; ++$year) {
             $dates[$i] = $year;
             ++$i;
         }
         for ($j = 0; $j <= 20; ++$j) {
             $dates[$i] = $year + $j;
             ++$i;
         }
     }
     return $dates;
 }
 /**
  * Newsletter::send()
  * 
  * This function sends eMail.
  * 
  * @param array $cats categories
  * @param string $sender sender
  * @param string $senderemail sender email
  * @param string $subject subject
  * @param string $body body
  * @param boolean $andop and operator
  * @param boolean $salutation insert salutation
  * @return number number of mails
  * @access public 
  * @since 2004-07-10
  * @author Christian Ehret <*****@*****.**> 
  */
 function send($cats, $sender, $senderemail, $subject, $body, $andop, $salutation)
 {
     global $gDatabase, $tbl_guest, $tbl_guestcat, $tbl_guest_guestcat, $tbl_guest_address, $tbl_address, $errorhandler, $request;
     set_time_limit(0);
     $num = 0;
     if ($andop) {
         $query = "SELECT t0.pk_fk_guest_id, a.email, g.firstname, g.lastname\n\t\t\t\t  FROM ";
         for ($i = 0; $i < count($cats); $i++) {
             $query .= "{$tbl_guest_guestcat} t{$i} ";
             if ($i !== count($cats) - 1) {
                 $query .= ", ";
             }
         }
         $query .= "LEFT JOIN {$tbl_guest_address} ga ON t0.pk_fk_guest_id = ga.pk_fk_guest_id AND\n\t\t\t\t  \t\t\t\t\t\t\t         ga.default_address = 'Y'\t\t\n\t\t\t\t       LEFT JOIN {$tbl_address} a ON ga.pk_fk_address_id = a.pk_address_id \n\t\t\t\t\t   LEFT JOIN {$tbl_guest} g ON t0.pk_fk_guest_id = g.pk_guest_id ";
         $query .= "WHERE ";
         for ($i = 0; $i < count($cats); $i++) {
             $query .= "t{$i}.pk_fk_guestcat_id = {$cats[$i]} ";
             if ($i > 0) {
                 $query .= "AND t0.pk_fk_guest_id = t{$i}.pk_fk_guest_id ";
             }
             if ($i !== count($cats) - 1) {
                 $query .= "AND ";
             }
         }
         $query .= "AND NOT ISNULL( a.email ) ";
     } else {
         $query = "SELECT DISTINCT ggc.pk_fk_guest_id, a.email, g.firstname, g.lastname \n\t\t\t\t  FROM {$tbl_guest_guestcat} ggc\n\t\t\t\t  LEFT JOIN {$tbl_guest_address} ga ON ggc.pk_fk_guest_id = ga.pk_fk_guest_id AND\n\t\t\t\t  \t\t\t\t\t\t\t         ga.default_address = 'Y'\t\t\n\t\t\t\t  LEFT JOIN {$tbl_address} a ON ga.pk_fk_address_id = a.pk_address_id \n\t\t\t\t  LEFT JOIN {$tbl_guest} g ON ggc.pk_fk_guest_id = g.pk_guest_id\t\t  \n\t\t\t\t  WHERE (";
         for ($i = 0; $i < count($cats); $i++) {
             $query .= "ggc.pk_fk_guestcat_id = " . $cats[$i];
             if ($i !== count($cats) - 1) {
                 $query .= " OR ";
             }
         }
         $query .= ") AND NOT ISNULL( a.email ) ";
     }
     $result = MetabaseQuery($gDatabase, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'Newsletter::send()', $query);
     } else {
         $row = 0;
         if ($salutation) {
             include_once "guestclass.inc.php";
             $guestclass = new Guest();
         }
         for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase, $result)) == 0; ++$row) {
             if ($salutation) {
                 $salutationtxt = $guestclass->getGreeting(MetabaseFetchResult($gDatabase, $result, $row, 0)) . "\n";
             } else {
                 $salutationtxt = "";
             }
             $files = $_FILES;
             $message = $salutationtxt;
             $message .= $body;
             $email = MetabaseFetchResult($gDatabase, $result, $row, 1);
             $firstname = MetabaseFetchResult($gDatabase, $result, $row, 2);
             $lastname = MetabaseFetchResult($gDatabase, $result, $row, 3);
             $from = $sender . " <" . $senderemail . ">";
             $recipient = $firstname . " " . $lastname . " <" . $email . ">";
             $mime_boundary = "<<<:" . md5(uniqid(mt_rand(), 1));
             $content = "";
             $header = "From: {$from}\r\n";
             $header .= "Reply-To: {$from}\r\n";
             $header .= "X-Priority: 3 (Normal)\r\n";
             $header .= "X-Mailer: PHP/" . phpversion() . "\r\n";
             $header .= "MIME-Version: 1.0\r\n";
             if (is_array($files)) {
                 $header .= "Content-Type: multipart/mixed;\r\n";
                 $header .= " boundary=\"" . $mime_boundary . "\"\r\n";
                 $content = "This is a multi-part message in MIME format.\r\n\r\n";
                 $content .= "--" . $mime_boundary . "\r\n";
             }
             $content .= "Content-Type: text/plain; charset=\"ISO-8859-1\"\r\n";
             $content .= "Content-Transfer-Encoding: 8bit\r\n\r\n";
             $content .= "{$message}\r\n\r\n";
             if (is_array($files)) {
                 $content .= "--" . $mime_boundary . "\r\n";
                 foreach ($files as $filename => $filelocation) {
                     $filename = $filelocation['name'];
                     $filelocation = $filelocation['tmp_name'];
                     if (is_readable($filelocation)) {
                         $data = chunk_split(base64_encode(implode("", file($filelocation))));
                         $content .= "Content-Disposition: attachment;\r\n";
                         if (!function_exists("mime_content_type")) {
                             $mimecontenttype = "application/octet-stream";
                         } else {
                             $mimecontenttype = mime_content_type($filelocation);
                         }
                         $content .= "Content-Type: " . $mimecontenttype . ";";
                         $content .= " name=\"" . $filename . "\"\r\n";
                         $content .= "Content-Transfer-Encoding: base64\r\n\r\n";
                         $content .= $data . "\r\n";
                         $content .= "--" . $mime_boundary . "\r\n";
                     }
                 }
             }
             mail($recipient, $subject, $content, $header);
             $num++;
         }
     }
     return $num;
 }
Example #15
0
 /**
  * Kassa::getTimeline()
  * 
  * This function returns all bought articles for one guest.
  * 
  * @param number $guestid guest id
  * @param date $start start date
  * @param date $end end date
  * @param string $order order desc or asc
  * @param array $cats categories
  * @return array articles
  * @access public 
  * @since 2004-01-06
  * @author Christian Ehret <*****@*****.**> 
  */
 function getTimeline($guestid, $start, $end, $order, $cats = array())
 {
     global $gDatabase2, $tbl_bararticle, $tbl_user, $tbl_bought, $tbl_barguest, $request, $errorhandler, $articlerows;
     $article = array();
     if (count($cats) > 0) {
         $catstr = "AND ba.fk_bararticlecat_id IN (";
         for ($i = 0; $i < count($cats); $i++) {
             if ($i > 0) {
                 $catstr .= ", ";
             }
             $catstr .= $cats[$i];
         }
         $catstr .= ")";
     } else {
         return array();
     }
     list($day, $month, $year) = split('.', $start);
     $query = "SELECT ba.pk_bararticle_id, ba.description, ba.price, DATE_FORMAT( b.timestamp, '%d.%m.%Y, %H:%i' ), num, pk_bought_id, paid,\n\t\t\t\t  DATE_FORMAT( b.updated_date, '%d.%m.%Y, %H:%i Uhr' ), u2.firstname, u2.lastname,\n\t\t\t\t  DATE_FORMAT( b.inserted_date, '%d.%m.%Y, %H:%i Uhr' ), u1.firstname, u1.lastname \n                 FROM {$tbl_bought} b\n\t\t\t\t  \t\t  LEFT JOIN {$tbl_barguest} bg ON bg.pk_barguest_id = b.fk_barguest_id\n\t\t\t\t  \t      LEFT JOIN {$tbl_bararticle} ba ON b.fk_bararticle_id = ba.pk_bararticle_id\n\t\t\t\t\t\t  LEFT JOIN {$tbl_user} u1 ON b.fk_inserted_user_id = u1.pk_user_id\n\t\t\t\t\t\t  LEFT JOIN {$tbl_user} u2 ON b.fk_updated_user_id = u2.pk_user_id\n\t\t\t\t\t\t  WHERE bg.pk_barguest_id = {$guestid} \n\t\t\t\t\t\t  {$catstr} ";
     if ($start !== "") {
         list($day, $month, $year) = split('[.]', $start);
         $query .= "AND UNIX_TIMESTAMP(b.timestamp) >= " . mktime(0, 0, 0, $month, $day, $year) . " ";
     }
     if ($end !== "") {
         list($day, $month, $year) = split('[.]', $end);
         $query .= "AND UNIX_TIMESTAMP(b.timestamp) <= " . mktime(0, 0, 0, $month, $day + 1, $year) . " ";
     }
     $query .= "ORDER BY b.timestamp " . $order;
     $result = MetabaseQuery($gDatabase2, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'Kassa::getTimeline()', $query);
     } else {
         $row = 0;
         for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase2, $result)) == 0; ++$row) {
             $color = 0;
             if ($row % 2 != 0) {
                 $color = 1;
             }
             $total = MetabaseFetchResult($gDatabase2, $result, $row, 2) * MetabaseFetchResult($gDatabase2, $result, $row, 4);
             // print "paid: ".MetabaseFetchBooleanResult($gDatabase2, $result, $row, 6);
             if (MetabaseFetchBooleanResult($gDatabase2, $result, $row, 6)) {
                 $sum2 += $total;
                 $sum += $total;
                 $paid = $total;
             } else {
                 $sum += $total;
                 $paid = "0.00";
             }
             $article[$row] = array('articleid' => MetabaseFetchResult($gDatabase2, $result, $row, 0), 'description' => MetabaseFetchResult($gDatabase2, $result, $row, 1), 'price' => MetabaseFetchResult($gDatabase2, $result, $row, 2), 'timestamp' => MetabaseFetchResult($gDatabase2, $result, $row, 3), 'num' => MetabaseFetchResult($gDatabase2, $result, $row, 4), 'boughtid' => MetabaseFetchResult($gDatabase2, $result, $row, 5), 'paid' => MetabaseFetchBooleanResult($gDatabase2, $result, $row, 6), 'updated' => MetabaseFetchResult($gDatabase2, $result, $row, 7), 'updateduser' => MetabaseFetchResult($gDatabase2, $result, $row, 8) . " " . MetabaseFetchResult($gDatabase2, $result, $row, 9), 'inserted' => MetabaseFetchResult($gDatabase2, $result, $row, 10), 'inserteduser' => MetabaseFetchResult($gDatabase2, $result, $row, 11) . " " . MetabaseFetchResult($gDatabase2, $result, $row, 12), 'total1' => number_format($total, 2, '.', ''), 'total2' => number_format($paid, 2, '.', ''), 'color' => $color);
         }
         $color = 0;
         if ($row % 2 != 0) {
             $color = 1;
         }
         $article[$row] = array('articleid' => 0, 'description' => "Summe:", 'price' => "", 'timestamp' => "", 'num' => "", 'boughtid' => "", 'paid' => "", 'updated' => "", 'total1' => number_format($sum, 2, '.', ''), 'total2' => number_format($sum2, 2, '.', ''), 'color' => $color);
         $sum -= $sum2;
         $article[$row + 1] = array('articleid' => 0, 'description' => "zu zahlen:", 'price' => "", 'timestamp' => "", 'num' => "", 'boughtid' => "", 'paid' => "", 'updated' => "", 'total1' => number_format($sum, 2, '.', ''), 'total2' => "", 'color' => $color);
     }
     return $article;
 }
 /**
  * Category::getallwithstatus()
  * 
  * Get all categories with status if
  * subscribed or not
  * 
  * @param number $guestid id of the guest
  * @return array categories and 	
  * @access public 
  * @since 2003-07-24
  * @author Christian Ehret <*****@*****.**> 
  */
 function getallwithstatus($guestid)
 {
     global $gDatabase, $request, $tbl_guest_guestcat, $errorhandler;
     $allcat = $this->getall();
     $cat = array();
     $query = sprintf("SELECT pk_fk_guestcat_id " . "FROM {$tbl_guest_guestcat} " . "WHERE pk_fk_guest_id = %s ", $guestid);
     $result = MetabaseQuery($gDatabase, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'GuestCategory::getallwithstatus()', $query);
     } else {
         $row = 0;
         for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase, $result)) == 0; ++$row) {
             $cat[$row] = array('catid' => MetabaseFetchResult($gDatabase, $result, $row, 0));
         }
     }
     for ($i = 0; $i < count($allcat); $i++) {
         $allcat[$i][subscribed] = 'no';
         for ($j = 0; $j < count($cat); $j++) {
             if ($allcat[$i][catid] == $cat[$j][catid]) {
                 $allcat[$i][subscribed] = 'yes';
             }
         }
     }
     return $allcat;
 }
 /**
  * roomchangelist::getdates()
  * 
  * This function returns an array with all dates.
  * 
  * @return array dates
  * @access public 
  * @since 2004-06-12
  * @author Christian Ehret <*****@*****.**> 
  */
 function getdates()
 {
     global $gDatabase, $tbl_booking, $request, $errorhandler;
     $dates = array();
     $j = 0;
     $query = "SELECT DATE_FORMAT(min( start_date  ) ,'%Y'),  DATE_FORMAT(max( end_date  ),'%Y')  \n\t\t                 FROM {$tbl_booking}  ";
     $result = MetabaseQuery($gDatabase, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'roomchangelist::getdates()', $query);
     } else {
         $startyear = MetabaseFetchResult($gDatabase, $result, 0, 0);
         $endyear = MetabaseFetchResult($gDatabase, $result, 0, 1);
         for ($year = $startyear; $year <= $endyear; ++$year) {
             for ($i = 1; $i <= 12; $i++) {
                 $dates[$j] = $i . '/' . $year;
                 $j++;
             }
         }
     }
     return $dates;
 }
Example #18
0
 function getPageRows($query, $obj)
 {
     global $mdb;
     $this->queryAssign('getPageRows', $query);
     $db_res = $this->query($query, $obj);
     $rows = @MetabaseFetchResult($mdb, $db_res, 0, "num");
     return $rows;
 }
Example #19
0
function VerifyFetchedValues($database, $result, $row, &$data, &$value, &$field)
{
    return strcmp($value = MetabaseFetchResult($database, $result, $row, "user_name"), $data[$field = "user_name"]) || strcmp($value = MetabaseFetchResult($database, $result, $row, "user_password"), $data[$field = "user_password"]) || strcmp($value = MetabaseFetchBooleanResult($database, $result, $row, "subscribed"), $data[$field = "subscribed"]) || strcmp($value = MetabaseFetchResult($database, $result, $row, "user_id"), $data[$field = "user_id"]) || ($value = MetabaseFetchDecimalResult($database, $result, $row, "quota")) != $data[$field = "quota"] || strcmp($value = MetabaseFetchFloatResult($database, $result, $row, "weight"), $data[$field = "weight"]) || strcmp($value = MetabaseFetchDateResult($database, $result, $row, "access_date"), $data[$field = "access_date"]) || strcmp($value = MetabaseFetchTimeResult($database, $result, $row, "access_time"), $data[$field = "access_time"]) || strcmp($value = MetabaseFetchTimestampResult($database, $result, $row, "approved"), $data[$field = "approved"]);
}
/**
* createEmailConfirmation()
* 
* Create a mailto link for email confirmation
* 
* @param number $bookid id of booking
* @return string mailto link
* @access public 
* @since 2003-10-12
* @author Christian Ehret <*****@*****.**> 
*/
function createEmailConfirmation($bookid)
{
    global $tbl_booking, $tbl_guest, $tbl_address, $tbl_guest_address, $tbl_bookingcat, $tbl_country, $gDatabase, $errorhandler, $request;
    include_once 'guestclass.inc.php';
    $guest = new Guest();
    $query = "SELECT {$tbl_booking}.fk_bookingcat_id, {$tbl_booking}.fk_guest_id, \n\t          UNIX_TIMESTAMP(start_date), UNIX_TIMESTAMP(end_date), \n\t\t\t  TO_DAYS( end_date ) - TO_DAYS( start_date ) AS days, \n\t\t\t  {$tbl_booking}.persons, children, {$tbl_guest}.firstname, \n\t\t\t  {$tbl_guest}.lastname, {$tbl_bookingcat}.bookingcat, \n\t\t\t  DATE_FORMAT({$tbl_guest}.date_of_birth , '%d.%m.%Y'), \n\t\t\t  postalcode, city, address, country_de, email, \n\t\t\t  booking_type, {$tbl_guest}.formal_greeting,  \n\t\t\t  {$tbl_guest}.gender, \n\t\t\t  COALESCE( CASE WHEN {$tbl_bookingcat}.description = '' THEN NULL ELSE {$tbl_bookingcat}.description END, CASE WHEN {$tbl_bookingcat}.bookingcat = '' THEN NULL ELSE {$tbl_bookingcat}.bookingcat END, '' ),\n\t\t\t  children2, children3, children0 \n\t\t\t  FROM {$tbl_booking} \n\t\t\t  LEFT JOIN {$tbl_guest} ON ({$tbl_booking}.fk_guest_id = {$tbl_guest}.pk_guest_id) \n\t\t\t  LEFT JOIN {$tbl_guest_address} ON ({$tbl_guest_address}.default_address  = " . MetabaseGetBooleanFieldValue($gDatabase, true) . " \n\t\t\t  AND {$tbl_guest}.pk_guest_id = {$tbl_guest_address}.pk_fk_guest_id) \n\t\t\t  LEFT JOIN {$tbl_address} ON ({$tbl_address}.pk_address_id = {$tbl_guest_address}.pk_fk_address_id) \n\t\t\t  LEFT JOIN {$tbl_bookingcat} ON ({$tbl_booking}.fk_bookingcat_id = {$tbl_bookingcat}.pk_bookingcat_id) \n\t\t\t  LEFT JOIN {$tbl_country} ON (fk_country_id = {$tbl_country}.pk_country_id )\n\t\t\t  WHERE pk_booking_id =  " . $bookid;
    $result = MetabaseQuery($gDatabase, $query);
    if (!$result) {
        $errorhandler->display('SQL', 'Booking::emailConfirmation()', $query);
    } else {
        if (MetabaseNumberOfRows($gDatabase, $result) == 1) {
            $booking = array();
            $str = "";
            $bookingtype = "";
            $bookingstr = "";
            $isformal = MetabaseFetchBooleanResult($gDatabase, $result, 0, 16);
            $dirihnen = "Dir";
            if ($isformal) {
                $dirihnen = "Ihnen";
            }
            switch (MetabaseFetchResult($gDatabase, $result, 0, 16)) {
                case 'R':
                    $bookingtype = "Reservierungsbestätigung";
                    $bookingstr = "Reservierung";
                    break;
                case 'B':
                    $bookingtype = "Buchungsbestätigung";
                    $bookingstr = "Buchung";
                    break;
                case 'P':
                    $bookingtype = "Buchungsbestätigung";
                    $bookingstr = "Buchung";
                    break;
            }
            $body = "";
            $body .= $guest->GetGreeting(MetabaseFetchResult($gDatabase, $result, 0, 1)) . "\n";
            $body .= "hiermit bestätigen wir " . $dirihnen . " folgende " . $bookingstr . ":\n\n";
            $body .= "Anreise: " . date("d. m. Y", MetabaseFetchResult($gDatabase, $result, 0, 2)) . "\n";
            $body .= "Abreise: " . date("d. m. Y", MetabaseFetchResult($gDatabase, $result, 0, 3)) . "\n";
            $body .= "Kategorie: " . MetabaseFetchResult($gDatabase, $result, 0, 19) . "\n";
            $body .= "Erwachsene: " . MetabaseFetchResult($gDatabase, $result, 0, 5) . "\n";
            $body .= $request->GetVar('children0', 'session') . ": " . MetabaseFetchResult($gDatabase, $result, 0, 22) . "\n";
            $body .= $request->GetVar('children1', 'session') . ": " . MetabaseFetchResult($gDatabase, $result, 0, 6) . "\n";
            $body .= $request->GetVar('children2', 'session') . ": " . MetabaseFetchResult($gDatabase, $result, 0, 20) . "\n";
            $body .= $request->GetVar('children3', 'session') . ": " . MetabaseFetchResult($gDatabase, $result, 0, 21) . "\n\n";
            $body .= "für:\n";
            $body .= MetabaseFetchResult($gDatabase, $result, 0, 7) . " " . MetabaseFetchResult($gDatabase, $result, 0, 8) . "\n";
            $body .= MetabaseFetchResult($gDatabase, $result, 0, 13) . "\n";
            $body .= MetabaseFetchResult($gDatabase, $result, 0, 11) . " " . MetabaseFetchResult($gDatabase, $result, 0, 12) . "\n";
            $body .= MetabaseFetchResult($gDatabase, $result, 0, 14) . "\n\n";
            $str = "mailto:" . MetabaseFetchResult($gDatabase, $result, 0, 7) . "%20" . MetabaseFetchResult($gDatabase, $result, 0, 8) . "%20&lt;" . MetabaseFetchResult($gDatabase, $result, 0, 15) . "&gt;?subject={$bookingtype}" . "&body=" . rawurlencode($body);
        }
        return $str;
    }
}
Example #21
0
 /**
  * season::getOneYear()
  * 
  * get all season data of one year
  * 
  * @param number $year year
  * @return array season data
  * @access public 
  * @since 2003-12-31
  * @author Christian Ehret <*****@*****.**> 
  */
 function getOneYear($year)
 {
     global $gDatabase, $tbl_season, $errorhandler, $request;
     $season = array();
     $query = "SELECT pk_season_id, name \n\t\t          FROM {$tbl_season} \n\t\t\t\t  WHERE ISNULL(fk_deleted_user_id) \n\t\t\t\t  AND DATE_FORMAT( start_date,  '%Y'  )  = {$year}\n\t\t\t\t  ORDER BY start_date ";
     $result = MetabaseQuery($gDatabase, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'Season::getOneYear()', $query);
     } else {
         $row = 0;
         for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase, $result)) == 0; ++$row) {
             $season[$row] = array('seasonid' => MetabaseFetchResult($gDatabase, $result, $row, 0), 'name' => MetabaseFetchResult($gDatabase, $result, $row, 1));
         }
     }
     return $season;
 }
 /**
  * Guestlist::getBirthdayReminders()
  * 
  * This function returns a list of guests wich have their birthday and the reminder set.
  * 
  * @return array guests
  * @access public 
  * @since 2004-07-26
  * @author Christian Ehret <*****@*****.**> 
  */
 function getBirthdayReminders()
 {
     global $gDatabase, $tbl_guest, $request, $errorhandler;
     $days = $request->GetVar('birthday_days', 'Session');
     $guests = array();
     $query = "SELECT pk_guest_id, firstname, lastname, DATE_FORMAT(date_of_birth ,'%d.%m.%Y'),\n\t\t\t\t\t\t DATE_FORMAT(now(), '%Y') - DATE_FORMAT(date_of_birth ,'%Y')\n\t\t                 FROM {$tbl_guest}\n\t\t\t\t\t\t WHERE DATE_FORMAT( date_of_birth, '%m%d' ) BETWEEN DATE_FORMAT( now(), '%m%d' ) AND DATE_FORMAT( DATE_ADD(now(), INTERVAL {$days} DAY), '%m%d' ) \t\t\t\t  \n\t\t\t\t\t\t AND birthday_reminder = " . MetabaseGetBooleanFieldValue($gDatabase, true) . "\n\t\t\t\t\t\t ORDER BY DATE_FORMAT( date_of_birth, '%d') ";
     $result = MetabaseQuery($gDatabase, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'Guestlist::getBirthdayReminders()', $query);
     } else {
         for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase, $result)) == 0; ++$row) {
             $color = 0;
             if ($row % 2 != 0) {
                 $color = 1;
             }
             $guests[$row] = array('guestid' => MetabaseFetchResult($gDatabase, $result, $row, 0), 'firstname' => MetabaseFetchResult($gDatabase, $result, $row, 1), 'lastname' => MetabaseFetchResult($gDatabase, $result, $row, 2), 'birthday' => MetabaseFetchResult($gDatabase, $result, $row, 3), 'age' => MetabaseFetchResult($gDatabase, $result, $row, 4), 'color' => $color);
         }
         $color = 0;
         if ($row % 2 != 0) {
             $color = 1;
         }
         return $guests;
     }
 }
 /**
  * RoomCategory::get()
  * 
  * This function returns all categories of a price_type.
  * 
  * @param char $price_type price type
  * @return array categories
  * @access public 
  * @since 2004-03-20
  * @author Christian Ehret <*****@*****.**> 
  */
 function get($price_type)
 {
     global $gDatabase, $tbl_roomcat, $errorhandler, $request;
     $cat = array();
     $query = sprintf("SELECT pk_roomcat_id, roomcat, price_type \n\t\t\t\t  FROM {$tbl_roomcat} \n\t\t\t\t  WHERE ISNULL(fk_deleted_user_id) \n\t\t\t\t  AND price_type = %s\n\t\t\t\t  ORDER BY roomcat", MetabaseGetTextFieldValue($gDatabase, $price_type));
     $result = MetabaseQuery($gDatabase, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'RoomCategory::get()', $query);
     } else {
         $row = 0;
         for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase, $result)) == 0; ++$row) {
             $color = 0;
             $articles = "";
             if ($row % 2 != 0) {
                 $color = 1;
             }
             $cat[$row] = array('catid' => MetabaseFetchResult($gDatabase, $result, $row, 0), 'name' => MetabaseFetchResult($gDatabase, $result, $row, 1), 'price_type' => MetabaseFetchResult($gDatabase, $result, $row, 2), 'color' => $color);
         }
     }
     return $cat;
 }
Example #24
0
 function DumpDatabase($arguments)
 {
     if (!isset($arguments["Output"])) {
         return "it was not specified a valid output function";
     }
     $output = $arguments["Output"];
     $eol = isset($arguments["EndOfLine"]) ? $arguments["EndOfLine"] : "\n";
     $dump_definition = isset($arguments["Definition"]);
     $sequences = array();
     if (isset($this->database_definition["SEQUENCES"])) {
         for ($error = "", Reset($this->database_definition["SEQUENCES"]), $sequence = 0; $sequence < count($this->database_definition["SEQUENCES"]); Next($this->database_definition["SEQUENCES"]), $sequence++) {
             $sequence_name = Key($this->database_definition["SEQUENCES"]);
             if (isset($this->database_definition["SEQUENCES"][$sequence_name]["on"])) {
                 $table = $this->database_definition["SEQUENCES"][$sequence_name]["on"]["table"];
             } else {
                 $table = "";
             }
             $sequences[$table][] = $sequence_name;
         }
     }
     $previous_database_name = strcmp($this->database_definition["name"], "") ? MetabaseSetDatabase($this->database, $this->database_definition["name"]) : "";
     $output("<?xml version=\"1.0\" encoding=\"ISO-8859-1\" ?>{$eol}");
     $output("<database>{$eol}{$eol} <name>" . $this->database_definition["name"] . "</name>{$eol} <create>" . $this->database_definition["create"] . "</create>{$eol}");
     for ($error = "", Reset($this->database_definition["TABLES"]), $table = 0; $table < count($this->database_definition["TABLES"]); Next($this->database_definition["TABLES"]), $table++) {
         $table_name = Key($this->database_definition["TABLES"]);
         $output("{$eol} <table>{$eol}{$eol}  <name>{$table_name}</name>{$eol}");
         $output("{$eol}  <declaration>{$eol}");
         $fields = $this->database_definition["TABLES"][$table_name]["FIELDS"];
         for (Reset($fields), $field_number = 0; $field_number < count($fields); $field_number++, Next($fields)) {
             $field_name = Key($fields);
             $field = $fields[$field_name];
             if (!isset($field["type"])) {
                 return "it was not specified the type of the field \"{$field_name}\" of the table \"{$table_name}\"";
             }
             $output("{$eol}   <field>{$eol}    <name>{$field_name}</name>{$eol}    <type>" . $field["type"] . "</type>{$eol}");
             switch ($field["type"]) {
                 case "integer":
                     if (isset($field["unsigned"])) {
                         $output("    <unsigned>1</unsigned>{$eol}");
                     }
                     break;
                 case "text":
                 case "clob":
                 case "blob":
                     if (isset($field["length"])) {
                         $output("    <length>" . $field["length"] . "</length>{$eol}");
                     }
                     break;
                 case "boolean":
                 case "date":
                 case "timestamp":
                 case "time":
                 case "float":
                 case "decimal":
                     break;
                 default:
                     return "type \"" . $field["type"] . "\" is not yet supported";
             }
             if (isset($field["notnull"])) {
                 $output("    <notnull>1</notnull>{$eol}");
             }
             if (isset($field["default"])) {
                 $output("    <default>" . $this->EscapeSpecialCharacters($field["default"]) . "</default>{$eol}");
             }
             $output("   </field>{$eol}");
         }
         if (isset($this->database_definition["TABLES"][$table_name]["INDEXES"])) {
             $indexes = $this->database_definition["TABLES"][$table_name]["INDEXES"];
             for (Reset($indexes), $index_number = 0; $index_number < count($indexes); $index_number++, Next($indexes)) {
                 $index_name = Key($indexes);
                 $index = $indexes[$index_name];
                 $output("{$eol}   <index>{$eol}    <name>{$index_name}</name>{$eol}");
                 if (isset($indexes[$index_name]["unique"])) {
                     $output("    <unique>1</unique>{$eol}");
                 }
                 for (Reset($index["FIELDS"]), $field_number = 0; $field_number < count($index["FIELDS"]); $field_number++, Next($index["FIELDS"])) {
                     $field_name = Key($index["FIELDS"]);
                     $field = $index["FIELDS"][$field_name];
                     $output("    <field>{$eol}     <name>{$field_name}</name>{$eol}");
                     if (isset($field["sorting"])) {
                         $output("     <sorting>" . $field["sorting"] . "</sorting>{$eol}");
                     }
                     $output("    </field>{$eol}");
                 }
                 $output("   </index>{$eol}");
             }
         }
         $output("{$eol}  </declaration>{$eol}");
         if ($dump_definition) {
             if (isset($this->database_definition["TABLES"][$table_name]["initialization"])) {
                 $output("{$eol}  <initialization>{$eol}");
                 $instructions = $this->database_definition["TABLES"][$table_name]["initialization"];
                 for (Reset($instructions), $instruction = 0; $instruction < count($instructions); $instruction++, Next($instructions)) {
                     switch ($instructions[$instruction]["type"]) {
                         case "insert":
                             $output("{$eol}   <insert>{$eol}");
                             $fields = $instructions[$instruction]["FIELDS"];
                             for (Reset($fields), $field_number = 0; $field_number < count($fields); $field_number++, Next($fields)) {
                                 $field_name = Key($fields);
                                 $output("{$eol}    <field>{$eol}     <name>{$field_name}</name>{$eol}     <value>" . $this->EscapeSpecialCharacters($fields[$field_name]) . "</value>{$eol}    </field>{$eol}");
                             }
                             $output("{$eol}   </insert>{$eol}");
                             break;
                     }
                 }
                 $output("{$eol}  </initialization>{$eol}");
             }
         } else {
             if (count($this->database_definition["TABLES"][$table_name]["FIELDS"]) == 0) {
                 return "the definition of the table \"{$table_name}\" does not contain any fields";
             }
             if (strcmp($error = $this->GetFields($table_name, $query_fields), "")) {
                 return $error;
             }
             if ($support_summary_functions = MetabaseSupport($this->database, "SummaryFunctions")) {
                 if (($result = MetabaseQuery($this->database, "SELECT COUNT(*) FROM {$table_name}")) == 0) {
                     return MetabaseError($this->database);
                 }
                 $rows = MetabaseFetchResult($this->database, $result, 0, 0);
                 MetabaseFreeResult($this->database, $result);
             }
             if (($result = MetabaseQuery($this->database, "SELECT {$query_fields} FROM {$table_name}")) == 0) {
                 return MetabaseError($this->database);
             }
             if (!$support_summary_functions) {
                 $rows = MetabaseNumberOfRows($this->database, $result);
             }
             if ($rows > 0) {
                 $output("{$eol}  <initialization>{$eol}");
                 for ($row = 0; $row < $rows; $row++) {
                     $output("{$eol}   <insert>{$eol}");
                     for (Reset($fields), $field_number = 0; $field_number < count($fields); $field_number++, Next($fields)) {
                         $field_name = Key($fields);
                         if (!MetabaseResultIsNull($this->database, $result, $row, $field_name)) {
                             $field = $fields[$field_name];
                             $output("{$eol}    <field>{$eol}     <name>{$field_name}</name>{$eol}     <value>");
                             switch ($field["type"]) {
                                 case "integer":
                                 case "text":
                                     $output($this->EscapeSpecialCharacters(MetabaseFetchResult($this->database, $result, $row, $field_name)));
                                     break;
                                 case "clob":
                                     if (!($lob = MetabaseFetchCLOBResult($this->database, $result, $row, $field_name))) {
                                         return MetabaseError($this->database);
                                     }
                                     while (!MetabaseEndOfLOB($lob)) {
                                         if (MetabaseReadLOB($lob, $data, 8000) < 0) {
                                             return MetabaseLOBError($lob);
                                         }
                                         $output($this->EscapeSpecialCharacters($data));
                                     }
                                     MetabaseDestroyLOB($lob);
                                     break;
                                 case "blob":
                                     if (!($lob = MetabaseFetchBLOBResult($this->database, $result, $row, $field_name))) {
                                         return MetabaseError($this->database);
                                     }
                                     while (!MetabaseEndOfLOB($lob)) {
                                         if (MetabaseReadLOB($lob, $data, 8000) < 0) {
                                             return MetabaseLOBError($lob);
                                         }
                                         $output(bin2hex($data));
                                     }
                                     MetabaseDestroyLOB($lob);
                                     break;
                                 case "float":
                                     $output($this->EscapeSpecialCharacters(MetabaseFetchFloatResult($this->database, $result, $row, $field_name)));
                                     break;
                                 case "decimal":
                                     $output($this->EscapeSpecialCharacters(MetabaseFetchDecimalResult($this->database, $result, $row, $field_name)));
                                     break;
                                 case "boolean":
                                     $output($this->EscapeSpecialCharacters(MetabaseFetchBooleanResult($this->database, $result, $row, $field_name)));
                                     break;
                                 case "date":
                                     $output($this->EscapeSpecialCharacters(MetabaseFetchDateResult($this->database, $result, $row, $field_name)));
                                     break;
                                 case "timestamp":
                                     $output($this->EscapeSpecialCharacters(MetabaseFetchTimestampResult($this->database, $result, $row, $field_name)));
                                     break;
                                 case "time":
                                     $output($this->EscapeSpecialCharacters(MetabaseFetchTimeResult($this->database, $result, $row, $field_name)));
                                     break;
                                 default:
                                     return "type \"" . $field["type"] . "\" is not yet supported";
                             }
                             $output("</value>{$eol}    </field>{$eol}");
                         }
                     }
                     $output("{$eol}   </insert>{$eol}");
                 }
                 $output("{$eol}  </initialization>{$eol}");
             }
             MetabaseFreeResult($this->database, $result);
         }
         $output("{$eol} </table>{$eol}");
         if (isset($sequences[$table_name])) {
             for ($sequence = 0; $sequence < count($sequences[$table_name]); $sequence++) {
                 if (!$this->DumpSequence($sequences[$table_name][$sequence], $output, $eol, $dump_definition)) {
                     return MetabaseError($this->database);
                 }
             }
         }
     }
     if (isset($sequences[""])) {
         for ($sequence = 0; $sequence < count($sequences[""]); $sequence++) {
             if (!$this->DumpSequence($sequences[""][$sequence], $output, $eol, $dump_definition)) {
                 return MetabaseError($this->database);
             }
         }
     }
     $output("{$eol}</database>{$eol}");
     if (strcmp($previous_database_name, "")) {
         MetabaseSetDatabase($this->database, $previous_database_name);
     }
     return $error;
 }
Example #25
0
 /**
  * auth::auth_validatelogin()
  * 
  * validate login
  * 
  * @access public 
  * @since 2003-07-24
  * @author Christian Ehret <*****@*****.**> 
  * @return number user id
  */
 function auth_validatelogin()
 {
     global $gDatabase2, $tbl_employee, $tbl_hotel, $uid, $firstname, $request, $sess, $smarty, $errorhandler;
     $auth_challenge = session_id();
     $auth_username = $request->GetVar('username', 'post');
     $auth_password = $request->GetVar('password', 'post');
     $auth_response = $request->GetVar('response', 'post');
     $this->auth["uname"] = $auth_username;
     ## This provides access for "loginform.ihtml"
     $query = sprintf("SELECT e.pk_employee_id, e.password, e.firstname, e.lastname, \n\t\t                  e.login, e.fk_hotel_id, h.database_schema, h.hotel_code \n\t\t\t\t\t\t  FROM {$tbl_employee} e, {$tbl_hotel} h \n\t\t\t\t\t\t  WHERE e.login = %s \n\t\t\t\t\t\t  AND e.locked = %s \n\t\t\t\t\t\t  AND ISNULL(deleted_date)\n\t\t\t\t\t\t  AND e.fk_hotel_id = h.pk_hotel_id ", MetabaseGetTextFieldValue($gDatabase2, addslashes($auth_username)), MetabaseGetBooleanFieldValue($gDatabase2, false));
     $result = MetabaseQuery($gDatabase2, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'auth::auth_validatelogin()', $query);
     } else {
         if (MetabaseNumberOfRows($gDatabase2, $result) != 0) {
             if ($result) {
                 $uid = MetabaseFetchResult($gDatabase2, $result, 0, 0);
                 $pass = MetabaseFetchResult($gDatabase2, $result, 0, 1);
                 ## Password is stored as a md5 hash
                 $firstname = MetabaseFetchResult($gDatabase2, $result, 0, 2);
                 $lastname = MetabaseFetchResult($gDatabase2, $result, 0, 3);
                 $login = MetabaseFetchResult($gDatabase2, $result, 0, 4);
                 $hotelid = MetabaseFetchResult($gDatabase2, $result, 0, 5);
                 $schema = MetabaseFetchResult($gDatabase2, $result, 0, 6);
                 $hotel_code = MetabaseFetchResult($gDatabase2, $result, 0, 7);
             }
         }
     }
     $exspected_response = md5("{$auth_username}:{$pass}:{$auth_challenge}");
     // # True when JS is disabled
     if ($auth_response == "") {
         if (md5($auth_password) != $pass) {
             // # md5 hash for non-JavaScript browsers
             return false;
         } else {
             $sess->SetVar("firstname", $firstname);
             $sess->SetVar("lastname", $lastname);
             $sess->SetVar("login", $login);
             $sess->SetVar("uid", $uid);
             $sess->SetVar("authenticated", 'valid');
             $sess->SetVar("hotelid", $hotelid);
             $sess->SetVar("schema", $schema);
             $sess->SetVar("hotel_code", $hotel_code);
             return $uid;
         }
     }
     // # Response is set, JS is enabled
     if ($exspected_response != $auth_response) {
         return false;
     } else {
         $sess->SetVar('firstname', $firstname);
         $sess->SetVar('lastname', $lastname);
         $sess->SetVar('login', $login);
         $sess->SetVar('uid', $uid);
         $sess->SetVar('authenticated', 'valid');
         $sess->SetVar("hotelid", $hotelid);
         $sess->SetVar("schema", $schema);
         $sess->SetVar("hotel_code", $hotel_code);
         return $uid;
     }
 }
 /**
  * Timetracker::getpresent()
  * 
  * This function returns an array with all dates.
  * 
  * @return array employees
  * @access public 
  * @since 2004-11-02
  * @author Christian Ehret <*****@*****.**> 
  */
 function getpresent()
 {
     global $gDatabase, $tbl_timetracker, $tbl_employee, $request, $errorhandler;
     $employees = array();
     $query = "SELECT DATE_FORMAT(tt.start_date, '%d.%m.%Y %H:%i' ), e.lastname, e.firstname\n\t\t                 FROM {$tbl_timetracker} tt\n\t\t\t\t\t\t LEFT JOIN {$tbl_employee} e ON tt.fk_employee_id = e.pk_employee_id\n\t\t\t\t\t\t WHERE ISNULL(tt.end_date) AND ISNULL(tt.deleted_date)\n\t\t\t\t\t\t ORDER BY tt.start_date";
     $result = MetabaseQuery($gDatabase, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'Timetracker::getpresent()', $query);
     } else {
         $row = 0;
         for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase, $result)) == 0; ++$row) {
             $color = 0;
             if ($row % 2 != 0) {
                 $color = 1;
             }
             $employees[$row] = array('start_date' => MetabaseFetchResult($gDatabase, $result, $row, 0), 'lastname' => MetabaseFetchResult($gDatabase, $result, $row, 1), 'firstname' => MetabaseFetchResult($gDatabase, $result, $row, 2), 'color' => $color);
         }
     }
     return $employees;
 }
Example #27
0
 /**
  * article::getone()
  * 
  * get a article
  * 
  * @param  $articleid article id
  * @return array article
  * @access public 
  * @since 2004-03-09
  * @author Christian Ehret <*****@*****.**> 
  */
 function getone($articleid)
 {
     global $gDatabase, $tbl_article, $errorhandler, $request;
     $article = array();
     $query = "SELECT pk_article_id, article, price_netto, price_brutto, mwst\n\t\t\t\t  FROM {$tbl_article} \n\t\t\t\t  WHERE pk_article_id = {$articleid} \n\t\t\t\t  ORDER BY article ";
     $result = MetabaseQuery($gDatabase, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'Article::getone()', $query);
     } else {
         $row = 0;
         $article = array('articleid' => MetabaseFetchResult($gDatabase, $result, $row, 0), 'article' => MetabaseFetchResult($gDatabase, $result, $row, 1), 'price_netto' => MetabaseFetchResult($gDatabase, $result, $row, 2), 'price_brutto' => MetabaseFetchResult($gDatabase, $result, $row, 3), 'mwst' => MetabaseFetchResult($gDatabase, $result, $row, 4));
     }
     return $article;
 }
 /**
  * DefaultData::´setfield()
  * 
  * This function updates a given field and updates the session value
  * 
  * @param number $id id of field
  * @param string $value value
  * @access public 
  * @since 2003-08-01
  * @author Christian Ehret <*****@*****.**> 
  */
 function setfield($id, $value)
 {
     global $tbl_default, $tbl_hotel_default, $gDatabase, $request, $sess, $errorhandler;
     $query = sprintf("SELECT fieldtype, default_name " . "FROM {$tbl_default} " . "WHERE pk_default_id = %s ", $id);
     $result = MetabaseQuery($gDatabase, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'defaultdata::setfield()', $query);
     } else {
         $fieldname = MetabaseFetchResult($gDatabase, $result, 0, 1);
         if (MetabaseFetchResult($gDatabase, $result, 0, 0) == "int") {
             $field = "integer_value";
             $inputvalue = MetabaseGetTextFieldValue($gDatabase, $value);
         } else {
             if (MetabaseFetchResult($gDatabase, $result, 0, 0) == "boolean") {
                 $field = "boolean_value";
                 $inputvalue = MetabaseBooleanFieldValue($gDatabase, $value);
             } else {
                 if (MetabaseFetchResult($gDatabase, $result, 0, 0) == "date") {
                     $field = "datetime_value";
                     $inputvalue = MetabaseGetTextFieldValue($gDatabase, $value);
                 } else {
                     $field = "string_value";
                     $inputvalue = MetabaseGetTextFieldValue($gDatabase, $value);
                 }
             }
         }
         $query = sprintf("SELECT updated_date " . "FROM {$tbl_hotel_default} " . "WHERE pk_fk_hotel_id = %s " . "AND pk_fk_default_id = %s ", $request->GetVar('hotelid', 'session'), $id);
         $result = MetabaseQuery($gDatabase, $query);
         $rows = MetabaseNumberOfRows($gDatabase, $result);
         if ($rows == 0) {
             $query = sprintf("INSERT INTO {$tbl_hotel_default} " . "(pk_fk_hotel_id, pk_fk_default_id, {$field}, " . "fk_inserted_user_id, inserted_date) " . "VALUES (%s, %s, %s, %s, NOW()) ", $request->GetVar('hotelid', 'session'), $id, $inputvalue, $request->GetVar('uid', 'session'));
         } else {
             $query = sprintf("UPDATE {$tbl_hotel_default} " . "SET {$field} = %s, " . "fk_updated_user_id = %s, " . "updated_date = NOW(), " . "WHERE pk_fk_hotel_id = %s " . "AND pk_fk_default_id = %s ", $inputvalue, $request->GetVar('uid', 'session'), $request->GetVar('hotelid', 'session'), $id);
         }
         $result = MetabaseQuery($gDatabase, $query);
         if (!$result) {
             $errorhandler->display('SQL', 'defaultdata::setfield()', $query);
         } else {
             $sess->SetVar($fieldname, $value);
         }
     }
 }
Example #29
0
 /**
  * Get the suggestions from the database and write to array
  */
 function getSuggestions($prefix, &$arr)
 {
     global $gDatabase, $tbl_guest, $errorhandler;
     // firstly clean up the data
     //$o = $prefix;
     //setlocale (LC_ALL, 'de_DE');
     // $prefix = ltrim(preg_replace("/^[[:alpha:]]+$/", '',  strtolower($prefix)));
     $prefix = preg_replace('/\\s+/', ' ', strtolower($prefix));
     if (strlen($prefix) > 0) {
         $query = sprintf("SELECT lastname, firstname FROM {$tbl_guest} \n\t\t\t\t\t  WHERE lastname LIKE '%s%%' AND ISNULL(deleted_date)\n\t\t\t\t\t  LIMIT %d", $prefix, $this->suggestion_limit);
         $result = MetabaseQuery($gDatabase, $query);
         if (!$result) {
             return;
         } else {
             for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase, $result)) == 0; ++$row) {
                 $arr[$row] = array(MetabaseFetchResult($gDatabase, $result, $row, 0), MetabaseFetchResult($gDatabase, $result, $row, 1));
             }
         }
     }
 }
 /**
  * Statistics::getByDayAndHour()
  * 
  * This function returns statistics of articles by day and hour.
  * 
  * @param string $thestart start date
  * @param string $theend end date
  * @param int $id category
  * @param int $from from hour
  * @param int $till till hour
  * @return array statistic
  * @access public 
  * @since 2004-12-10
  * @author Christian Ehret <*****@*****.**> 
  */
 function getByDayAndHour($thestart, $theend, $id, $from = 0, $till = 23)
 {
     global $gDatabase, $tbl_bought, $tbl_bararticle, $request, $errorhandler;
     $statistic = array();
     $query = "SELECT sum(num), sum( num * price ), DATE_FORMAT( timestamp, '%d.%m.%Y' ) AS DAY, DATE_FORMAT( timestamp, '%H' ) AS HOUR\n\t\t                 FROM {$tbl_bought} \n\t\t\t\t\t\t LEFT JOIN {$tbl_bararticle} ON {$tbl_bought}.fk_bararticle_id = {$tbl_bararticle}.pk_bararticle_id\n\t\t\t\t\t\t WHERE timestamp >= '{$thestart}'\n\t\t\t\t\t\t AND timestamp <= '{$theend}' ";
     if ($id != -1) {
         $query .= "  AND {$tbl_bararticle}.fk_bararticlecat_id = {$id} ";
     }
     if (!($from == 0 && $till == 23)) {
         $query .= " AND (";
         if ($from <= $till) {
             for ($i = $from; $i <= $till; $i++) {
                 $query .= "DATE_FORMAT( timestamp,  '%H'  ) = {$i}";
                 if ($i != $till) {
                     $query .= " OR ";
                 }
             }
         } else {
             for ($i = $from; $i <= 23; $i++) {
                 $query .= "DATE_FORMAT( timestamp,  '%H'  ) = {$i}";
                 $query .= " OR ";
             }
             for ($i = 0; $i <= $till; $i++) {
                 $query .= "DATE_FORMAT( timestamp,  '%H'  ) = {$i}";
                 if ($i != $till) {
                     $query .= " OR ";
                 }
             }
         }
         $query .= ") ";
     }
     $query .= "\t\t GROUP BY DAY, HOUR\n\t\t\t\t\t\t ORDER BY HOUR ";
     $result = MetabaseQuery($gDatabase, $query);
     if (!$result) {
         $errorhandler->display('SQL', 'Statistics::get()', $query);
     } else {
         $row = 0;
         for ($row = 0; ($eor = MetabaseEndOfResult($gDatabase, $result)) == 0; ++$row) {
             $statistic[$row] = array('num' => MetabaseFetchResult($gDatabase, $result, $row, 0), 'price' => MetabaseFetchResult($gDatabase, $result, $row, 1), 'hour' => MetabaseFetchResult($gDatabase, $result, $row, 2), 'color' => $color);
         }
     }
     return $statistic;
 }