shuber      2004/10/15 19:11:28 CEST

  Modified files:
    war/src/java/org/jahia/webapps/addressbook 
                                               AdbApplicationDB.java 
                                               AddressBookServlet.java 
                                               DbAddBook.java 
  Log:
  JAHIA-196 : Webapps 4.0.5: various bugs
  Corrected :
  Address Book: export function exports with an ADB extension (?), why not .csv? + the 
export does not use comma but ";" which are now not directly correctly opened by Excel 
(all the columns in one single cell)
  
  Revision  Changes    Path
  1.2       +1 -1      
addressbook/war/src/java/org/jahia/webapps/addressbook/AdbApplicationDB.java
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/addressbook/war/src/java/org/jahia/webapps/addressbook/AdbApplicationDB.java.diff?r1=1.1&r2=1.2&f=h
  1.2       +1 -1      
addressbook/war/src/java/org/jahia/webapps/addressbook/AddressBookServlet.java
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/addressbook/war/src/java/org/jahia/webapps/addressbook/AddressBookServlet.java.diff?r1=1.1&r2=1.2&f=h
  1.2       +17 -5     
addressbook/war/src/java/org/jahia/webapps/addressbook/DbAddBook.java
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/addressbook/war/src/java/org/jahia/webapps/addressbook/DbAddBook.java.diff?r1=1.1&r2=1.2&f=h
  
  
  
  Index: AdbApplicationDB.java
  ===================================================================
  RCS file: 
/home/cvs/repository/addressbook/war/src/java/org/jahia/webapps/addressbook/AdbApplicationDB.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- AdbApplicationDB.java     13 Sep 2004 12:53:14 -0000      1.1
  +++ AdbApplicationDB.java     15 Oct 2004 17:11:28 -0000      1.2
  @@ -739,7 +739,7 @@
   
          try {
            Criteria crit1 = new Criteria();
  -         crit1.addEqualTo("contac_id", new Integer(id));
  +         crit1.addEqualTo("contact_id", new Integer(id));
            Query q = QueryFactory.newQuery(Contact.class, crit1);
            broker.clearCache();
            Collection userColl = broker.getCollectionByQuery(q);
  
  
  
  Index: AddressBookServlet.java
  ===================================================================
  RCS file: 
/home/cvs/repository/addressbook/war/src/java/org/jahia/webapps/addressbook/AddressBookServlet.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- AddressBookServlet.java   13 Sep 2004 12:53:14 -0000      1.1
  +++ AddressBookServlet.java   15 Oct 2004 17:11:28 -0000      1.2
  @@ -299,7 +299,7 @@
             try {
               String filePath = AddbookHandler.save(request);
               Tools.toConsole("AddressbookServlet: doGet","File saved: path = " + 
filePath);
  -            FileDownload fdwn = new 
FileDownload(request,response,"AddressBook.adb",filePath,"bin/octet-stream");
  +            FileDownload fdwn = new 
FileDownload(request,response,"AddressBook.csv",filePath,"text/csv");
               fdwn.writeFileContentToResponse();
               // Delete temp file
               try {
  
  
  
  Index: DbAddBook.java
  ===================================================================
  RCS file: 
/home/cvs/repository/addressbook/war/src/java/org/jahia/webapps/addressbook/DbAddBook.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- DbAddBook.java    13 Sep 2004 12:53:14 -0000      1.1
  +++ DbAddBook.java    15 Oct 2004 17:11:28 -0000      1.2
  @@ -25,7 +25,7 @@
   
     private AddressBook addbookRef;
   
  -  private static String SEPARATOR = ";";
  +  private static String SEPARATOR = ",";
   
   
     /**
  @@ -111,6 +111,18 @@
   
   
   
  +    private static String toExportFormat(String input) {
  +        if (input == null) {
  +          return null;
  +        }
  +        StringBuffer sb = new StringBuffer(input);
  +        if (input.indexOf(",") != -1) {
  +          String result = Tools.replace(input, "\"", "\"\"");
  +          return "\"" + result + "\"";
  +        } else {
  +          return input;
  +        }
  +    }
   
       /**
        * Method save : save the content of the address book in a flat file
  @@ -128,7 +140,7 @@
           ResultSetMetaData rsmd = rs.getMetaData();
           int numberOfColumns = rsmd.getColumnCount();
           for(int i = 1; i <= numberOfColumns; i++) {
  -          out.print(rsmd.getColumnName(i) + SEPARATOR);
  +          out.print(toExportFormat(rsmd.getColumnName(i)) + SEPARATOR);
           }
           out.print("\n");
           int nb = 0;
  @@ -142,7 +154,7 @@
                // Character c= table[0].toUppercase();
                 String provisoire= table.substring(1);
                 //String classe= c.concat(provisoire);
  -              out.print(readData(table,rs.getInt(column)) + SEPARATOR);
  +              out.print(toExportFormat(readData(table,rs.getInt(column))) + 
SEPARATOR);
   
               } else if (column.equals("company")) {
                 String company = rs.getString(column);
  @@ -154,10 +166,10 @@
                 } catch(NumberFormatException nfe) {
                   // nothing to do, company is not a reference to an existing contact
                 }
  -              out.print(company + SEPARATOR);
  +              out.print(toExportFormat(company) + SEPARATOR);
   
               } else {
  -              out.print(rs.getString(column) + SEPARATOR);
  +              out.print(toExportFormat(rs.getString(column)) + SEPARATOR);
               }
             }
             out.print("\n");
  

Reply via email to