code cleaning, new config
[mir.git] / source / mircoders / module / ModuleUsers.java
1 /*
2  * Copyright (C) 2001, 2002  The Mir-coders group
3  *
4  * This file is part of Mir.
5  *
6  * Mir is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  *
11  * Mir is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with Mir; if not, write to the Free Software
18  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
19  *
20  * In addition, as a special exception, The Mir-coders gives permission to link
21  * the code of this program with the com.oreilly.servlet library, any library
22  * licensed under the Apache Software License, The Sun (tm) Java Advanced
23  * Imaging library (JAI), The Sun JIMI library (or with modified versions of
24  * the above that use the same license as the above), and distribute linked
25  * combinations including the two.  You must obey the GNU General Public
26  * License in all respects for all of the code used other than the above
27  * mentioned libraries.  If you modify this file, you may extend this exception
28  * to your version of the file, but you are not obligated to do so.  If you do
29  * not wish to do so, delete this exception statement from your version.
30  */
31
32 package mircoders.module;
33
34 import mir.entity.EntityList;
35 import mir.log.LoggerWrapper;
36 import mir.module.AbstractModule;
37 import mir.module.ModuleException;
38 import mir.storage.StorageObject;
39 import mir.storage.StorageObjectFailure;
40 import mircoders.entity.EntityUsers;
41 import mircoders.storage.DatabaseUsers;
42 import freemarker.template.SimpleList;
43
44
45 /*
46  *  Users Module -
47  *
48  *
49  * @author RK
50  */
51
52 public class ModuleUsers extends AbstractModule
53 {
54   static LoggerWrapper logger = new LoggerWrapper("Module.Users");
55
56   public ModuleUsers(StorageObject theStorage)
57   {
58     if (theStorage == null)
59       logger.warn("StorageObject was null!");
60
61     this.theStorage = theStorage;
62   }
63
64   /**
65    * login method
66    */
67
68   public EntityUsers getUserForLogin(String user, String password) throws ModuleException
69   {
70     String whereString = "login='" +user + "' and password='"+ password + "' and is_admin='1'";
71     EntityList userList = getByWhereClause(whereString, -1);
72     if (userList != null && userList.getCount()==1)
73       return (EntityUsers)userList.elementAt(0);
74     else
75       return null;
76   }
77
78   public EntityList getUsers(String whereClause, int offset, int limit) throws ModuleException
79   {
80     try {
81       return theStorage.selectByWhereClause(whereClause, null, offset, limit);
82     }
83     catch (StorageObjectFailure e){
84       throw new ModuleException(e.toString());
85     }
86   }
87
88   public SimpleList getUsersAsSimpleList() throws ModuleException {
89     try {
90       return ((DatabaseUsers)theStorage).getPopupData();
91     }
92     catch(StorageObjectFailure e) {
93       throw new ModuleException(e.toString());
94     }
95   }
96 }