Package sk.iway.iwcm.users
Class UsersDB
java.lang.Object
sk.iway.iwcm.users.UsersDB
Databaza registrovanych pouzivatelov
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
static final int
static final int
static final int
static final String
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic void
addApproveGroup
(int userId, int groupId, int mode) static void
addUserGroups
(UserDetails usr, String[] groupsParams) Prida zadanemu pouzivatelovi nove user skupinystatic void
addUserToPermissionGroup
(int userId, int permId) static UserDetails
authorizeEmail
(javax.servlet.http.HttpServletRequest request, String hash) static void
authorizeUser
(int userId) autorizuje uzivatelastatic boolean
static boolean
static boolean
checkUserPerms
(Identity user, String perms) Kontroluje prava pouzivatela na admin cast a moduly, medzi perms je pouzity OR mod, zapisuje sa ako admin|editableGroupsNotEmpty Pozna aj specialne prava admin (kontrola na isAdmin) a editableGroupsNotEmpty (editableGroups nie je prazdne)static void
clearApproveGroups
(int userId) static void
deleteApproveGroup
(int userId, int groupId) static String
deleteUser
(int userId) Vymaze z DB pozadovaneho userastatic String
deleteUser
(int userId, String descriptionPrefix) static void
deleteUserFromPermissionGroup
(int userId, int permId) static void
disableItem
(int userId, String whichItemToDisable) static void
enableItem
(int userId, String whichItemToEnable) static void
fillSettingsBean
(SettingsBean settings, ResultSet rs) Naplni SettingsBean z rs objektustatic void
fillUserDetails
(UserDetails usr, ResultSet rs) static List<SettingsBean>
filterSettingsByPrefix
(String prefix, Map<String, SettingsBean> allSettings) Odfiltruje nastavenia podla nejakeho prefixu a usporiada podla nazvovstatic List<UserDetails>
filterUserByGroupName
(List<UserDetails> users, String groupName) Prefiltruje zoznam pouzivatelov cez meno skupinystatic String
generateNameLogin
(String firstName, String lastName) Vytvori login z mena a priezviska.static List<UserDetails>
Vrati zoznam vsetkych adminovgetApproveGroups
(int userId) static int
getApproveMode
(int userId, int groupId) static Identity
getCurrentUser
(javax.servlet.http.HttpServletRequest request) Ziska objekt aktualne prihlaseneho pouzivatela, alebo nullstatic Identity
getCurrentUser
(javax.servlet.http.HttpSession session) Ziska objekt aktualne prihlaseneho pouzivatela, alebo nullstatic Identity
getCurrentUser
(net.sourceforge.stripes.action.ActionBeanContext context) Ziska objekt aktualne prihlaseneho pouzivatela, alebo nullstatic String
getDomainIdSqlWhere
(boolean addAnd) Specialna verzia UsersDB.getDomainIdSqlWhere pre USERS tabulku, kde pre NIE CLOUD WJ nerozlisujeme userov podla domenstatic String
getGenerateAuthorizeHash
(int userId) Vygeneruje a nastavi do DB authorize_hashstatic String
Vrati nahodny 16 znakovy retazec pouzitelny pre vygenerovanie prihlasovacieho menastatic String
getSalt
(int userId) Get password_salt for userstatic Map<String,
SettingsBean> getSettings
(int userId) static Map<String,
SettingsBean> getSettings
(int userId, int countDown) Vrati nastavenia pouzivatela z tabulky user_settingsstatic UserDetails
getUser
(int userId) Vrati pozadovaneho userastatic UserDetails
Vrati pouzivatela so zadanym loginNamestatic UserDetails
getUserByEmail
(String email) Vrati pouzivatela so zadanym emailom (prveho co najde)static UserDetails
getUserByEmail
(String email, int cacheInSeconds) Vrati pouzivatela so zadanym emailom (prveho co najde)static UserDetails
getUserCached
(int userId) static UserGroupVerify
getUserGroupVerify
(int userId) static Integer
getUserIdByEmail
(String email) Ziska ID uzivatela z emailu, ak uzivatel s takym emailom neexistuje vratinull
static Integer
getUserIdByLogin
(String login) Ziska ID uzivatela z loginu, ak uzivatel s takym loginom neexistuje vratinull
static List<UserDetails>
getUsers()
Vrati zoznam vsetkych pouzivatelov v DBstatic List<UserDetails>
getUsers
(SelectionFilter<UserDetails> filter) static List<UserDetails>
getUsersByGroup
(int userGroupId) Vrati zoznam pouzivatelov v danej skupinestatic List<UserDetails>
getUsersByGroup
(String groupName) Vrati zoznam pouzivatelov v danej skupinestatic List<UserDetails>
getUsersByGroups
(int[] userGroupIds) Ziska zoznam pouzivatelov v zadanych skupinachstatic List<UserDetails>
getUsersByName
(String startsWith) Vrati zoznam vsetkych pouzivatelov zacinajucich retazcomstatic List<UserDetails>
getUsersByParentId
(int userId) Vrati zoznam userov ktori maju ako parent_id nastavene userId z parametrastatic List<UserDetails>
getUsersByWhereSql
(String whereSql) Ziska zoznam pouzivatelov, ktori splnaju zadane podmienkystatic List<UserDetails>
Vrati zoznam userov ktori maju ako parent_id nastavene 0static boolean
isFolderWritable
(String writableFoldersParam, String folderParam) static void
Prakticky private metoda pre nahratie dat z DB, je to takto spravene kvoli CloudTools a multiwebu a donahratiu pravstatic void
loadDisabledItemsFromDB
(Identity user, boolean alsoGroups) Read disabled items for userstatic void
removeUserFromCache
(int userId) static boolean
saveApproveGroups
(int userId, Map<String, LabelValueDetails> approveGroups) Ulozi schvalovanie pre webove adresare.static boolean
saveDisabledItems
(int userId, String disabledItems) Ulozi zakazane pravomoci do DBstatic boolean
saveUser
(UserDetails user) Ulozenie pouzivatela do DBstatic boolean
sendPassword
(javax.servlet.http.HttpServletRequest request, String login) Deprecated.UserChangePasswordService.sendPasswordstatic boolean
sendPassword
(javax.servlet.http.HttpServletRequest request, String login, String emailParams) Deprecated.UserChangePasswordService.sendPasswordstatic void
setDisabledItems
(Identity user) Nastavi pouzivatelovi zakazane polozky/modulystatic boolean
setSettings
(int userId, Map<String, SettingsBean> settings) Ulozi nastavenie pouzivatela do databazystatic boolean
settingsInsertFirst
(Map<String, SettingsBean> settings, String prefix, SettingsBean sb) Ak mame indexovane nastavenia, napr.static int
subscribeEmail
(UserDetails user, javax.servlet.http.HttpServletRequest request, String emailBody, String emailSenderEmail, String emailSenderName, String emailSubject) static int
unsubscribeEmail
(UserDetails user, javax.servlet.http.HttpServletRequest request, String emailBody, String emailSenderEmail, String emailSenderName, String emailSubject)
-
Field Details
-
APPROVE_APPROVE
public static final int APPROVE_APPROVE- See Also:
-
APPROVE_NOTIFY
public static final int APPROVE_NOTIFY- See Also:
-
APPROVE_NONE
public static final int APPROVE_NONE- See Also:
-
APPROVE_LEVEL2
public static final int APPROVE_LEVEL2- See Also:
-
IS_ADMIN_SECTION_KEY
- See Also:
-
-
Constructor Details
-
UsersDB
protected UsersDB()
-
-
Method Details
-
getDomainIdSqlWhere
Specialna verzia UsersDB.getDomainIdSqlWhere pre USERS tabulku, kde pre NIE CLOUD WJ nerozlisujeme userov podla domen- Parameters:
addAnd
-- Returns:
-
fillUserDetails
- Throws:
Exception
-
getUsersByGroup
Vrati zoznam pouzivatelov v danej skupine- Parameters:
userGroupId
- - id skupiny, ak je -1 vrati zoznam vsetkych- Returns:
-
getUsersByGroup
Vrati zoznam pouzivatelov v danej skupine- Parameters:
groupName
- - nazov skupiny- Returns:
-
getUsersByName
Vrati zoznam vsetkych pouzivatelov zacinajucich retazcom- Returns:
- zoznam vsetkych userov podla mena
-
getUsersByGroups
Ziska zoznam pouzivatelov v zadanych skupinach- Parameters:
userGroupIds
-- Returns:
-
getUser
Vrati pozadovaneho usera- Parameters:
userId
-- Returns:
-
getUser
Vrati pouzivatela so zadanym loginName- Parameters:
loginName
-- Returns:
-
getUserByEmail
Vrati pouzivatela so zadanym emailom (prveho co najde)- Parameters:
email
-- Returns:
-
getUserByEmail
Vrati pouzivatela so zadanym emailom (prveho co najde)- Parameters:
email
-- Returns:
-
getUserIdByEmail
Ziska ID uzivatela z emailu, ak uzivatel s takym emailom neexistuje vratinull
- Parameters:
email
-- Returns:
-
getUserIdByLogin
Ziska ID uzivatela z loginu, ak uzivatel s takym loginom neexistuje vratinull
- Parameters:
login
-- Returns:
-
subscribeEmail
public static int subscribeEmail(UserDetails user, javax.servlet.http.HttpServletRequest request, String emailBody, String emailSenderEmail, String emailSenderName, String emailSubject) -
unsubscribeEmail
public static int unsubscribeEmail(UserDetails user, javax.servlet.http.HttpServletRequest request, String emailBody, String emailSenderEmail, String emailSenderName, String emailSubject) -
authorizeEmail
public static UserDetails authorizeEmail(javax.servlet.http.HttpServletRequest request, String hash) -
sendPassword
@Deprecated public static boolean sendPassword(javax.servlet.http.HttpServletRequest request, String login) Deprecated.UserChangePasswordService.sendPasswordDeprecated, use UserChangePasswordService.sendPassword- Parameters:
request
-login
-- Returns:
-
sendPassword
@Deprecated public static boolean sendPassword(javax.servlet.http.HttpServletRequest request, String login, String emailParams) Deprecated.UserChangePasswordService.sendPasswordDeprecated, use UserChangePasswordService.sendPassword- Parameters:
request
-login
-emailParams
-- Returns:
-
deleteUser
Vymaze z DB pozadovaneho usera- Parameters:
userId
-- Returns:
-
deleteUser
-
saveUser
Ulozenie pouzivatela do DB- Parameters:
user
-- Returns:
-
getGenerateAuthorizeHash
Vygeneruje a nastavi do DB authorize_hash- Parameters:
userId
-- Returns:
-
checkHast
-
checkHash
-
getUsers
-
getUsers
Vrati zoznam vsetkych pouzivatelov v DB- Returns:
- zoznam vsetkych uzivatelov
-
authorizeUser
public static void authorizeUser(int userId) autorizuje uzivatela- Parameters:
userId
-
-
getAdmins
Vrati zoznam vsetkych adminov- Returns:
- zoznam vsetkych adminov
-
getUserGroupVerify
- Returns:
- UserGroupVerify pre usera
-
addUserGroups
Prida zadanemu pouzivatelovi nove user skupiny- Parameters:
usr
-groupsParams
-
-
getCurrentUser
Ziska objekt aktualne prihlaseneho pouzivatela, alebo null- Parameters:
session
-- Returns:
-
getCurrentUser
Ziska objekt aktualne prihlaseneho pouzivatela, alebo null- Parameters:
request
-- Returns:
-
getCurrentUser
Ziska objekt aktualne prihlaseneho pouzivatela, alebo null- Parameters:
context
-- Returns:
-
getRandomLogin
Vrati nahodny 16 znakovy retazec pouzitelny pre vygenerovanie prihlasovacieho mena- Returns:
-
generateNameLogin
Vytvori login z mena a priezviska. Pre meno: Maros Urbanec Primarne vytvori login ako priezvisko.toLowerCase() - urbanec Ak existuje, skusi pridat prve pismeno z mena - urbanecm Ak existuje, skuska postupne loginy urbanecm1,urbanecm2,... az pokym nenajde cislo, pre ktore login este neexistuje. VyhodiIllegalArgumentException
ak su mu dodane prazdne parametre -
fillSettingsBean
Naplni SettingsBean z rs objektu- Parameters:
settings
-rs
-- Throws:
Exception
-
getSettings
Vrati nastavenia pouzivatela z tabulky user_settings- Parameters:
userId
-countDown
- max pocet rekurzivnych volani pri neuspesnom nacitani settingsov- Returns:
-
getSettings
-
filterSettingsByPrefix
public static List<SettingsBean> filterSettingsByPrefix(String prefix, Map<String, SettingsBean> allSettings) Odfiltruje nastavenia podla nejakeho prefixu a usporiada podla nazvov- Parameters:
prefix
- - mojeOdkazyallSettings
-- Returns:
- vrati hodnoty ako mojeOdkazy@1, mojeOdkazy@2.. usporiadane podla cisla za znakom @
-
setSettings
Ulozi nastavenie pouzivatela do databazy- Parameters:
userId
-settings
-- Returns:
-
settingsInsertFirst
public static boolean settingsInsertFirst(Map<String, SettingsBean> settings, String prefix, SettingsBean sb) Ak mame indexovane nastavenia, napr. mojeOdkazy, tak prida novu hodnotu na zaciatok zoznamu a vsetky ostatne posunie o 1- Parameters:
settings
-prefix
-sb
-- Returns:
-
deleteApproveGroup
public static void deleteApproveGroup(int userId, int groupId) -
addApproveGroup
public static void addApproveGroup(int userId, int groupId, int mode) -
getApproveMode
public static int getApproveMode(int userId, int groupId) -
setDisabledItems
Nastavi pouzivatelovi zakazane polozky/moduly- Parameters:
user
-
-
loadDisabledItemsFromDB
Prakticky private metoda pre nahratie dat z DB, je to takto spravene kvoli CloudTools a multiwebu a donahratiu prav- Parameters:
user
-
-
loadDisabledItemsFromDB
Read disabled items for user- Parameters:
user
-alsoGroups
- - true to load perms from groups
-
getApproveGroups
-
clearApproveGroups
public static void clearApproveGroups(int userId) -
disableItem
-
enableItem
-
addUserToPermissionGroup
public static void addUserToPermissionGroup(int userId, int permId) -
deleteUserFromPermissionGroup
public static void deleteUserFromPermissionGroup(int userId, int permId) -
isFolderWritable
-
getUsersByParentId
Vrati zoznam userov ktori maju ako parent_id nastavene userId z parametra- Parameters:
userId
-- Returns:
- zoznam userov ktorum je userId parent, ak taky nie je tak vrati prazdny list
-
filterUserByGroupName
Prefiltruje zoznam pouzivatelov cez meno skupiny- Parameters:
users
-groupName
-- Returns:
- zoznam pouzivatelv ktori patria do danej skupiny
-
getUsersWithoutParent
Vrati zoznam userov ktori maju ako parent_id nastavene 0- Returns:
- zoznam userov ktorum je 0 parent a maju prava na intranet ak taky nie je tak vrati prazdny list
-
checkUserPerms
Kontroluje prava pouzivatela na admin cast a moduly, medzi perms je pouzity OR mod, zapisuje sa ako admin|editableGroupsNotEmpty Pozna aj specialne prava admin (kontrola na isAdmin) a editableGroupsNotEmpty (editableGroups nie je prazdne)- Parameters:
user
-perms
-- Returns:
-
getUsersByWhereSql
Ziska zoznam pouzivatelov, ktori splnaju zadane podmienky- Returns:
-
saveApproveGroups
Ulozi schvalovanie pre webove adresare.- Parameters:
userId
-approveGroups
-- Returns:
- true ak sa vsetko podari ulozit
-
saveDisabledItems
Ulozi zakazane pravomoci do DB- Parameters:
userId
-disabledItems
- retazec pravomoci oddeleny Ĩiarkami (bez medzier)- Returns:
- true ak sa vsetko podari ulozit
-
getUserCached
-
removeUserFromCache
public static void removeUserFromCache(int userId) -
getSalt
Get password_salt for user- Parameters:
userId
-- Returns:
-