// cet emprunteur a déjà emprunté ce document define('ALREADY_BORROWED', 128); // ce document est emprunté par un autre emprunteur define('HAS_RESA_PLANNED_FALSE', 256); //Les prévisions sur le document sont égales ou supérieures au nb d'exemplaires disponibles define('IS_TRUSTED', 512); //l'exemplaire est monopolisé define('IS_GROUP', 1024); //l'exemplaire fait parti d'un groupe d'exemplaires $affichage = ""; $warning_text = ''; $dispo_text = ''; $erreur_affichage = "<table border='0' cellpadding='1' width='100%' height='40'><tr><td width='30'> <span></span></td>\n\t\t<td width='100%'> </td></tr></table>"; // Confirm pret rfid mode1 if ($confirm_pret && $id_empr) { $expl = new do_pret(); if (is_array($id_expl)) { foreach ($id_expl as $id) { if ($id) { $status = $expl->confirm_pret($id_empr, $id, $short_loan); } } } else { if ($id_expl) { $status = $expl->confirm_pret($id_empr, $id_expl, $short_loan); } } $erreur_affichage = "<hr />\n\t\t<div class='row'>\n\t\t<div class='colonne10'><img src='./images/info.png' /></div>\n\t\t<div class='colonne-suite'><span class='erreur'>" . $msg[384] . "</span><br />\n\t\t"; $erreur_affichage .= get_display_custom_fields($id_empr, $id_expl); if ($pmb_play_pret_sound) { $alert_sound_list[] = "information";
<?php // +-------------------------------------------------+ // © 2002-2004 PMB Services / www.sigb.net pmb@sigb.net et contributeurs (voir www.sigb.net) // +-------------------------------------------------+ // $Id: del_pret.inc.php,v 1.1 2007-09-14 14:55:42 ngantier Exp $ if (stristr($_SERVER['REQUEST_URI'], ".inc.php")) { die("no access"); } require_once $class_path . "/ajax_pret.class.php"; //$id_expl; // init de la class $pret = new do_pret(); $status = $pret->del_pret($id_expl); ajax_http_send_response("{$status}", "text/xml");
function _checkout_response_($values) { global $pmb_antivol, $msg; global $see_all_pret; global $selfservice_pret_carte_invalide_msg; global $selfservice_pret_pret_interdit_msg; global $selfservice_pret_deja_prete_msg; global $selfservice_pret_deja_reserve_msg; global $selfservice_pret_quota_bloc_msg; global $selfservice_pret_non_pretable_msg; global $selfservice_pret_expl_inconnu_msg; $see_all_pret = 1; //Transaction obligatoire car déjà effectuée ! //$force_checkout=($values["NO_BLOCK"]=="Y"?true:false); $localisation = $values["INSTITUTION_ID"][0]; $empr_cb = $values["PATRON_IDENTIFIER"][0]; $expl_cb = $values["ITEM_IDENTIFIER"][0]; $fee_ack = $values["FEE_ACKNOWLEDGED"][0] == "Y" ? true : false; $cancel = $values["CANCEL"][0] == "Y" ? true : false; $magnetic = "N"; $desensitize = "N"; $titre = $expl_cb; $due_date = ""; //Recherche de l'exemplaire $requete = "SELECT exemplaires.*, pret.*, docs_location.*, docs_section.*, docs_statut.*, tdoc_libelle, "; $requete .= " date_format(pret_date, '" . $msg["format_date"] . "') as aff_pret_date, "; $requete .= " date_format(pret_retour, '" . $msg["format_date"] . "') as aff_pret_retour, "; $requete .= " IF(pret_retour>sysdate(),0,1) as retard "; $requete .= " FROM exemplaires LEFT JOIN pret ON exemplaires.expl_id=pret.pret_idexpl "; $requete .= " left join docs_location on exemplaires.expl_location=docs_location.idlocation "; $requete .= " left join docs_section on exemplaires.expl_section=docs_section.idsection "; $requete .= " left join docs_statut on exemplaires.expl_statut=docs_statut.idstatut "; $requete .= " left join docs_type on exemplaires.expl_typdoc=docs_type.idtyp_doc "; $requete .= " WHERE expl_cb='" . addslashes($expl_cb) . "' "; $requete .= " order by location_libelle, section_libelle, expl_cote, expl_cb "; $resultat = pmb_mysql_query($requete); if (pmb_mysql_num_rows($resultat)) { $expl = pmb_mysql_fetch_object($resultat); //Recherche de l'emprunteur $requete = "select id_empr from empr where empr_cb='" . addslashes($empr_cb) . "'"; $resultat = pmb_mysql_query($requete); if (!pmb_mysql_num_rows($resultat)) { $error = true; $error_message = $selfservice_pret_carte_invalide_msg; $ok = 0; } else { $id_empr = pmb_mysql_result($resultat, 0, 0); $empr = new emprunteur($id_empr, '', '', 1); $pret = $empr->blocage_retard || $empr->blocage_amendes || $empr->blocage_abt || !$empr->allow_loan ? false : true; if (!$pret) { $ok = 0; $error = true; $error_message = $selfservice_pret_pret_interdit_msg; } else { if ($expl->pret_flag) { if ($expl->expl_bulletin) { $isbd = new bulletinage_display($expl->expl_bulletin); $titre = $isbd->display; } else { $isbd = new mono_display($expl->expl_notice, 1); $titre = $isbd->header_texte; } if ($expl->pret_retour) { $error = true; $error_message = $selfservice_pret_deja_prete_msg; $ok = 0; } else { // tester si réservé $result_resa = pmb_mysql_query("select 1 from resa where resa_cb='" . addslashes($expl->expl_cb) . "' and resa_idempr!='" . addslashes($id_empr) . "'"); $reserve = @pmb_mysql_num_rows($result_resa); if ($reserve) { $error = true; $error_message = $selfservice_pret_deja_reserve_msg; $ok = 0; } else { //On fait le prêt $pret = new do_pret(); $pret->check_pieges($empr_cb, 0, $expl_cb, 0, 0); if (!$pret->status) { $ok = 1; $pret->confirm_pret($id_empr, $expl->expl_id); //Recherche de la date de retour $requete = "select date_format(pret_retour, '" . $msg["format_date"] . "') as retour from pret where pret_idexpl=" . $expl->expl_id; $resultat = pmb_mysql_query($requete); $error = true; $error_message = $titre . " / retour le : " . @pmb_mysql_result($resultat, 0, 0); $due_date = @pmb_mysql_result($resultat, 0, 0); } else { $ok = 0; $error = true; $error_message = $selfservice_pret_quota_bloc_msg; $ret["SCREEN_MESSAGE"][1] = $pret->error_message; } //Est-ce un support magnétique if ($pmb_antivol) { if ($expl->type_antivol == 2) { $magnetic = "Y"; } } } } } else { $error = true; $error_message = $selfservice_pret_non_pretable_msg; $ok = 0; } } } } else { $error = true; $error_message = $selfservice_pret_expl_inconnu_msg; $titre = $expl_cb; $ok = 0; } $ret["OK"] = $ok; $ret["RENEWAL_OK"] = "N"; $ret["MAGNETIC_MEDIA"] = $magnetic; $ret["DESENSITIZE"] = $desensitize; $ret["TRANSACTION_DATE"] = date("Ymd His", time()); $ret["INSTITUTION_ID"][0] = $localisation; $ret["PATRON_IDENTIFIER"][0] = $empr_cb; $ret["ITEM_IDENTIFIER"][0] = $expl_cb; $ret["TITLE_IDENTIFIER"][0] = $titre; $ret["DUE_DATE"][0] = $due_date; if ($error) { $ret["SCREEN_MESSAGE"][0] = $error_message; } return $ret; }
<?php // +-------------------------------------------------+ // © 2002-2004 PMB Services / www.sigb.net pmb@sigb.net et contributeurs (voir www.sigb.net) // +-------------------------------------------------+ // $Id: get_info_expl.inc.php,v 1.1 2008-01-25 15:01:43 ngantier Exp $ if (stristr($_SERVER['REQUEST_URI'], ".inc.php")) { die("no access"); } require_once $class_path . "/ajax_pret.class.php"; //cb_doc, id_empr; // init de la class $info_expl = new do_pret(); $status = $info_expl->get_info_expl($cb_doc); ajax_http_send_response("{$status}", "text/xml");
// $Id: add_cb_list.inc.php,v 1.1 2010-06-16 12:19:04 ngantier Exp $ if (stristr($_SERVER['REQUEST_URI'], ".inc.php")) { die("no access"); } require_once $class_path . "/ajax_pret.class.php"; require_once "{$include_path}/ajax.inc.php"; //input: cb_list, id_empr; if ($del_pret) { $query = "delete from pret where pret_idempr = '" . $id_empr . "' and pret_temp = '" . $_SERVER['REMOTE_ADDR'] . "'"; mysql_query($query); } foreach ($cb_list as $cb_doc) { // init de la class $info_1 = array(); $info_2 = array(); $pret = new do_pret(); $info_1 = $pret->mode1_get_info_expl($cb_doc); if ($info_1["error_message"]) { $erreur = 1; } $id_expl = $info_1["expl_id"]; $forcage = $force[$cb_doc]; if (!$erreur) { $info_2 = $pret->mode1_check_pieges($cb_empr, $id_empr, $cb_doc, $id_expl, $forcage); } if ($info_2["error_message"]) { $erreur = 1; } $result[] = array_merge($info_1, $info_2); } ajax_http_send_response(array2xml($result), "text/xml");
<?php // +-------------------------------------------------+ // © 2002-2004 PMB Services / www.sigb.net pmb@sigb.net et contributeurs (voir www.sigb.net) // +-------------------------------------------------+ // $Id: add_cb.inc.php,v 1.2 2012-04-30 14:04:19 dbellamy Exp $ if (stristr($_SERVER['REQUEST_URI'], ".inc.php")) { die("no access"); } require_once $class_path . "/ajax_pret.class.php"; //cb_doc, id_empr, short_loan // init de la class $pret = new do_pret(); $status = $pret->check_pieges($cb_empr, $id_empr, $cb_doc, $id_expl, $forcage, $short_loan); ajax_http_send_response("{$status}", "text/xml");
function self_checkout($expl_cb, $id_empr, $PMBUserId = -1) { global $msg; global $charset; global $selfservice_pret_carte_invalide_msg; global $selfservice_pret_pret_interdit_msg; global $selfservice_pret_deja_prete_msg; global $selfservice_pret_deja_reserve_msg; global $selfservice_pret_quota_bloc_msg; global $selfservice_pret_non_pretable_msg; global $selfservice_pret_expl_inconnu_msg; $titre = $expl_cb; $due_date = ""; $ret["message_expl_comment"] = ""; $ret["message_quota"] = ""; $ret["status"] = ""; $ret["message"] = ""; $ret["title"] = ""; $ret["transaction_date"] = ""; $ret["due_date"] = ""; //Recherche de l'exemplaire $requete = "SELECT exemplaires.*, pret.*, docs_location.*, docs_section.*, docs_statut.*, tdoc_libelle, "; $requete .= " date_format(pret_date, '" . $msg["format_date"] . "') as aff_pret_date, "; $requete .= " date_format(pret_retour, '" . $msg["format_date"] . "') as aff_pret_retour, "; $requete .= " IF(pret_retour>sysdate(),0,1) as retard "; $requete .= " FROM exemplaires LEFT JOIN pret ON exemplaires.expl_id=pret.pret_idexpl "; $requete .= " left join docs_location on exemplaires.expl_location=docs_location.idlocation "; $requete .= " left join docs_section on exemplaires.expl_section=docs_section.idsection "; $requete .= " left join docs_statut on exemplaires.expl_statut=docs_statut.idstatut "; $requete .= " left join docs_type on exemplaires.expl_typdoc=docs_type.idtyp_doc "; $requete .= " WHERE expl_cb='" . addslashes($expl_cb) . "' "; $requete .= " order by location_libelle, section_libelle, expl_cote, expl_cb "; $resultat = mysql_query($requete); if (mysql_num_rows($resultat)) { $expl = mysql_fetch_object($resultat); if ($expl->expl_bulletin) { $isbd = new bulletinage_display($expl->expl_bulletin); $titre = $isbd->display; } else { $isbd = new mono_display($expl->expl_notice, 1); $titre = $isbd->header_texte; } //Recherche de l'emprunteur $requete = "select empr_cb id_empr from empr where id_empr='{$id_empr}'"; $resultat = mysql_query($requete); if (!mysql_num_rows($resultat)) { $error = true; $error_message = $selfservice_pret_carte_invalide_msg; $ok = 0; } else { $empr_cb = mysql_result($resultat, 0, 0); $empr = new emprunteur($id_empr, '', '', 1); $pret = $empr->blocage_retard || $empr->blocage_amendes || $empr->blocage_abt || !$empr->allow_loan ? false : true; if (!$pret) { $ok = 0; $error = true; $error_message = $selfservice_pret_pret_interdit_msg; } else { if ($expl->pret_flag) { if ($expl->pret_retour) { $error = true; $error_message = $selfservice_pret_deja_prete_msg; $ok = 0; } else { // tester si réservé $result_resa = mysql_query("select 1 from resa where resa_cb='" . addslashes($expl->expl_cb) . "' and resa_idempr!='" . addslashes($id_empr) . "'"); $reserve = @mysql_num_rows($result_resa); if ($reserve) { $error = true; $error_message = $selfservice_pret_deja_reserve_msg; $ok = 0; } else { //On fait le prêt $pret = new do_pret(); $pret->check_pieges($empr_cb, 0, $expl_cb, 0, 0); if ($pret->expl_comment) { $ret["message_expl_comment"] = $pret->expl_comment; } if (!$pret->status) { $ok = 1; $pret->confirm_pret($id_empr, $expl->expl_id); //Recherche de la date de retour $requete = "select date_format(pret_retour, '" . $msg["format_date"] . "') as retour from pret where pret_idexpl=" . $expl->expl_id; $resultat = mysql_query($requete); $error = true; $error_message = "Retour le : " . @mysql_result($resultat, 0, 0); $due_date = @mysql_result($resultat, 0, 0); } else { $ok = 0; $error = true; $error_message = $selfservice_pret_quota_bloc_msg; $ret["message_quota"] = $pret->error_message; } } } } else { $error = true; $error_message = $selfservice_pret_non_pretable_msg; $ok = 0; } } } } else { $error = true; $error_message = $selfservice_pret_expl_inconnu_msg; $titre = $expl_cb; $ok = 0; } if ($charset != "utf-8") { $error_message = utf8_encode($error_message); } if ($charset != "utf-8") { $ret["message_quota"] = utf8_encode($ret["message_quota"]); } if ($charset != "utf-8") { $ret["message_expl_comment"] = utf8_encode($ret["message_expl_comment"]); } $ret["status"] = $ok; $ret["message"] = $error_message; $ret["transaction_date"] = date("Ymd His", time()); if ($charset != "utf-8") { $ret["title"] = utf8_encode($titre); } else { $ret["title"] = $titre; } $ret["due_date"] = $due_date; return $ret; }
function self_del_temp_pret($expl_cb) { $requete = "select expl_id,expl_bulletin,expl_notice,type_antivol,empr_cb from exemplaires join pret on (expl_id=pret_idexpl) join empr on (pret_idempr=id_empr) where expl_cb='" . addslashes($expl_cb) . "' and pret_temp != ''"; $resultat = pmb_mysql_query($requete); if (!$resultat) { $ok = 0; } else { $expl = pmb_mysql_fetch_object($resultat); $pret = new do_pret(); $pret->del_pret($expl->expl_id); $ok = 1; } $ret["status"] = $ok; return $ret; }