<%@page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*"%> <%@ include file="Connections/library.jsp" %> <%--Copyright (C) 2002 Tony Grant This file is part of lmstoolkit lmstoolkit is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. lmstoolkit is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with lmstoolkit; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA--%> <% // *** Edit Operations: declare variables // set the form action variable String MM_editAction = request.getRequestURI(); if (request.getQueryString() != null && request.getQueryString().length() > 0) { MM_editAction += "?" + request.getQueryString(); } // connection information String MM_editDriver = null, MM_editConnection = null, MM_editUserName = null, MM_editPassword = null; // redirect information String MM_editRedirectUrl = null; // query string to execute StringBuffer MM_editQuery = null; // boolean to abort record edit boolean MM_abortEdit = false; // table information String MM_editTable = null, MM_editColumn = null, MM_recordId = null; // form field information String[] MM_fields = null, MM_columns = null; %> <% // *** Insert Record: set variables if (request.getParameter("MM_insert") != null) { MM_editDriver = MM_library_DRIVER; MM_editConnection = MM_library_STRING; MM_editUserName = MM_library_USERNAME; MM_editPassword = MM_library_PASSWORD; MM_editTable = "loan"; MM_editRedirectUrl = ""; String MM_fieldsStr = "loan_id|value|book_id|value|datesortie|value|dateretour|value|borrower_id|value|sorti|value"; String MM_columnsStr = "loan_id|none,none,NULL|book_id|none,none,NULL|datesortie|',none,NULL|dateretour|',none,NULL|borrower_id|none,none,NULL|sorti|none,'Y','N'"; // create the MM_fields and MM_columns arrays java.util.StringTokenizer tokens = new java.util.StringTokenizer(MM_fieldsStr,"|"); MM_fields = new String[tokens.countTokens()]; for (int i=0; tokens.hasMoreTokens(); i++) MM_fields[i] = tokens.nextToken(); tokens = new java.util.StringTokenizer(MM_columnsStr,"|"); MM_columns = new String[tokens.countTokens()]; for (int i=0; tokens.hasMoreTokens(); i++) MM_columns[i] = tokens.nextToken(); // set the form values for (int i=0; i+1 < MM_fields.length; i+=2) { MM_fields[i+1] = ((request.getParameter(MM_fields[i])!=null)?(String)request.getParameter(MM_fields[i]):""); } // append the query string to the redirect URL if (MM_editRedirectUrl.length() != 0 && request.getQueryString() != null) { MM_editRedirectUrl += ((MM_editRedirectUrl.indexOf('?') == -1)?"?":"&") + request.getQueryString(); } } %> <% // *** Insert Record: construct a sql insert statement and execute it if (request.getParameter("MM_insert") != null) { // create the insert sql statement StringBuffer MM_tableValues = new StringBuffer(), MM_dbValues = new StringBuffer(); for (int i=0; i+1 < MM_fields.length; i+=2) { String formVal = MM_fields[i+1]; String elem; java.util.StringTokenizer tokens = new java.util.StringTokenizer(MM_columns[i+1],","); String delim = ((elem = (String)tokens.nextToken()) != null && elem.compareTo("none")!=0)?elem:""; String altVal = ((elem = (String)tokens.nextToken()) != null && elem.compareTo("none")!=0)?elem:""; String emptyVal = ((elem = (String)tokens.nextToken()) != null && elem.compareTo("none")!=0)?elem:""; if (formVal.length() == 0) { formVal = emptyVal; } else { if (altVal.length() != 0) { formVal = altVal; } else if (delim.compareTo("'") == 0) { // escape quotes StringBuffer escQuotes = new StringBuffer(formVal); for (int j=0; j < escQuotes.length(); j++) if (escQuotes.charAt(j) == '\'') escQuotes.insert(j++,'\''); formVal = "'" + escQuotes + "'"; } else { formVal = delim + formVal + delim; } } MM_tableValues.append((i!=0)?",":"").append(MM_columns[i]); MM_dbValues.append((i!=0)?",":"").append(formVal); } MM_editQuery = new StringBuffer("insert into " + MM_editTable); MM_editQuery.append(" (").append(MM_tableValues.toString()).append(") values ("); MM_editQuery.append(MM_dbValues.toString()).append(")"); if (!MM_abortEdit) { // finish the sql and execute it Driver MM_driver = (Driver)Class.forName(MM_editDriver).newInstance(); Connection MM_connection = DriverManager.getConnection(MM_editConnection,MM_editUserName,MM_editPassword); PreparedStatement MM_editStatement = MM_connection.prepareStatement(MM_editQuery.toString()); MM_editStatement.executeUpdate(); MM_connection.close(); // redirect with URL parameters if (MM_editRedirectUrl.length() != 0) { response.sendRedirect(response.encodeRedirectURL(MM_editRedirectUrl)); } } } %> <% String loan__varEmp = "1"; if (session.getAttribute("loan_id") !=null) {loan__varEmp = (String)session.getAttribute("loan_id") ;} %> <% Driver Driverloan = (Driver)Class.forName(MM_library_DRIVER).newInstance(); Connection Connloan = DriverManager.getConnection(MM_library_STRING,MM_library_USERNAME,MM_library_PASSWORD); PreparedStatement Statementloan = Connloan.prepareStatement("SELECT loan.loan_id, borrower.borrower_id, datesortie, dateretour, name, first_name FROM loan, borrower WHERE loan_id = '" + loan__varEmp + "' AND loan.borrower_id = borrower.borrower_id"); ResultSet loan = Statementloan.executeQuery(); boolean loan_isEmpty = !loan.next(); boolean loan_hasData = !loan_isEmpty; Object loan_data; int loan_numRows = 0; %> <% Driver Driversortie = (Driver)Class.forName(MM_library_DRIVER).newInstance(); Connection Connsortie = DriverManager.getConnection(MM_library_STRING,MM_library_USERNAME,MM_library_PASSWORD); PreparedStatement Statementsortie = Connsortie.prepareStatement("SELECT to_char(datesortie, 'DD-MM-YYYY') FROM loan"); ResultSet sortie = Statementsortie.executeQuery(); boolean sortie_isEmpty = !sortie.next(); boolean sortie_hasData = !sortie_isEmpty; Object sortie_data; int sortie_numRows = 0; %> <% Driver Driverretour = (Driver)Class.forName(MM_library_DRIVER).newInstance(); Connection Connretour = DriverManager.getConnection(MM_library_STRING,MM_library_USERNAME,MM_library_PASSWORD); PreparedStatement Statementretour = Connretour.prepareStatement("SELECT to_char(dateretour, 'DD-MM-YYYY') FROM loan"); ResultSet retour = Statementretour.executeQuery(); boolean retour_isEmpty = !retour.next(); boolean retour_hasData = !retour_isEmpty; Object retour_data; int retour_numRows = 0; %> <% String namebre__varEmp = "1"; if (request.getParameter("borrower_id") !=null) {namebre__varEmp = (String)request.getParameter("borrower_id");} %> <% Driver Drivernamebre = (Driver)Class.forName(MM_library_DRIVER).newInstance(); Connection Connnamebre = DriverManager.getConnection(MM_library_STRING,MM_library_USERNAME,MM_library_PASSWORD); PreparedStatement Statementnamebre = Connnamebre.prepareStatement("SELECT count(loan_id) FROM loan WHERE borrower_id = " + namebre__varEmp + " AND sorti = 't'"); ResultSet namebre = Statementnamebre.executeQuery(); boolean namebre_isEmpty = !namebre.next(); boolean namebre_hasData = !namebre_isEmpty; Object namebre_data; int namebre_numRows = 0; %> Fiche Emprunt

N° loan : <%=(((loan_data = loan.getObject("loan_id"))==null || loan.wasNull())?"":loan_data)%> ">
Document_id :
   
Out  <%=(((sortie_data = sortie.getObject("to_char"))==null || sortie.wasNull())?"":sortie_data)%> ">
To be returned  <%=(((retour_data = retour.getObject("to_char"))==null || retour.wasNull())?"":retour_data)%> ">
   
N° Borrowerr : <%=(((loan_data = loan.getObject("borrower_id"))==null || loan.wasNull())?"":loan_data)%> - <%=(((loan_data = loan.getObject("first_name"))==null || loan.wasNull())?"":loan_data)%> <%=(((loan_data = loan.getObject("name"))==null || loan.wasNull())?"":loan_data)%> ">
  Borrower has <% if (!loan_isEmpty ) { %> <%=(((namebre_data = namebre.getObject("count"))==null || namebre.wasNull())?"":namebre_data)%> <% } /* end !loan_isEmpty */ %> documents on loan
<% loan.close(); Connloan.close(); %> <% sortie.close(); Connsortie.close(); %> <% retour.close(); Connretour.close(); %> <% namebre.close(); Connnamebre.close(); %>