1 package com.dotmarketing.portlets.organization.factories; 2 3 import java.util.ArrayList ; 4 import java.util.List ; 5 6 import com.dotmarketing.db.DotHibernate; 7 import com.dotmarketing.factories.InodeFactory; 8 import com.dotmarketing.portlets.categories.factories.CategoryFactory; 9 import com.dotmarketing.portlets.categories.model.Category; 10 import com.dotmarketing.portlets.organization.model.Organization; 11 import com.dotmarketing.util.Config; 12 import com.dotmarketing.util.UtilMethods; 13 17 public class OrganizationFactory { 18 19 public static java.util.List getAllOrganizations() { 20 DotHibernate dh = new DotHibernate(Organization.class); 21 dh.setQuery( 22 "from inode in class com.dotmarketing.portlets.organization.model.Organization order by title"); 23 return dh.list(); 24 } 25 public static java.util.List getAllOrganizations(String orderby) { 26 DotHibernate dh = new DotHibernate(Organization.class); 27 dh.setQuery( 28 "from inode in class com.dotmarketing.portlets.organization.model.Organization order by " + orderby); 29 return dh.list(); 30 } 31 32 public static java.util.List getAllFirstLevelOrganizations(String orderby) { 33 DotHibernate dh = new DotHibernate(Organization.class); 34 dh.setQuery( 35 "from inode in class com.dotmarketing.portlets.organization.model.Organization where parent_organization = 0 order by " + orderby); 36 return dh.list(); 37 } 38 39 public static java.util.List getChildrenOrganizations(Organization organization, String orderby) { 40 return InodeFactory.getChildrenClass(organization, Organization.class, orderby); 41 } 42 public static Organization getFirstLevelOrganizationByPartnerURL(String partnerURL) { 43 String condition = "partner_url = '" + partnerURL + "' and parent_organization = 0"; 44 return (Organization) InodeFactory.getInodeOfClassByCondition(Organization.class, condition); 45 } 46 47 public static List getOrganizationsByZipCode(String zip) { 48 String condition = "zip = '" + zip + "'"; 49 return InodeFactory.getInodesOfClassByCondition(Organization.class, condition); 50 } 51 52 public static List getOrganizationsByTitle(String title) { 53 DotHibernate dh = new DotHibernate(Organization.class); 54 dh.setQuery( 55 "from inode in class com.dotmarketing.portlets.organization.model.Organization where title = ? "); 56 dh.setParam(title); 57 return dh.list(); 58 } 59 60 public static List getOrganizationsByTitleLike(String title) { 61 if(!UtilMethods.isSet(title)){ 62 return new ArrayList (); 63 } 64 DotHibernate dh = new DotHibernate(Organization.class); 65 String condition = "lower(title) like '" + title.toLowerCase() + "%' and is_system = " + com.dotmarketing.db.DbConnectionFactory.getDBFalse(); 66 dh.setQuery("from inode in class com.dotmarketing.portlets.organization.model.Organization where " + condition + " order by title limit 20"); 67 return dh.list(); 68 } 69 70 @SuppressWarnings ("unchecked") 71 public static List <Organization> getOrganizationsByZipCodeLike(String zip,boolean isSystem) { 72 String condition = "zip like '" + zip + "%'"; 73 String system = (isSystem ? com.dotmarketing.db.DbConnectionFactory.getDBTrue() : com.dotmarketing.db.DbConnectionFactory.getDBFalse()); 74 condition += " and is_system = " + system; 75 String orderBy = "title"; 76 return (List <Organization>)InodeFactory.getInodesOfClassByConditionAndOrderBy(Organization.class, condition, orderBy); 77 } 78 79 @SuppressWarnings ("unchecked") 80 public static List <Organization> getOrganizationsByZipCodeLike(String zip) { 81 String condition = "zip like '" + zip + "%'"; 82 return (List <Organization>)InodeFactory.getInodesOfClassByCondition(Organization.class, condition); 83 } 84 85 public static List getOrganizationsByPartnerKey(String partnerKey,boolean isSystem) { 86 String condition = "partner_key = '" + partnerKey + "'"; 87 String system = (isSystem ? com.dotmarketing.db.DbConnectionFactory.getDBTrue() : com.dotmarketing.db.DbConnectionFactory.getDBFalse()); 88 condition += " and is_system = " + system; 89 return InodeFactory.getInodesOfClassByCondition(Organization.class, condition); 90 } 91 92 public static List getOrganizationsByPartnerKey(String partnerKey) { 93 String condition = "partner_key = '" + partnerKey + "'"; 94 return InodeFactory.getInodesOfClassByCondition(Organization.class, condition); 95 } 96 97 public static java.util.List getOrganizationsSharingPartnerPortal(String partnerURL) { 98 String condition = "partner_url = '" + partnerURL + "'"; 99 return InodeFactory.getInodesOfClassByCondition(Organization.class, condition); 100 } 101 102 public static java.util.List getFilteredOrganizations(String keywords, String category, String orderby) { 103 Category cat = null; 104 String condition = "parent_organization = 0"; 105 106 if (UtilMethods.isSet(category)) { 107 cat = CategoryFactory.getCategory(category); 108 } 109 110 if (UtilMethods.isSet(keywords)) { 111 condition += " and lower(title) like '" + keywords.toLowerCase() + "%'"; 112 } 113 if (cat!= null && cat.getInode()>0 && condition !=null) { 114 return InodeFactory.getChildrenClassByConditionAndOrderBy(cat,Organization.class,condition, orderby); 116 } 117 else if (cat!=null && cat.getInode()>0) { 118 return InodeFactory.getChildrenClass(cat,Organization.class,orderby); 120 } 121 else { 122 return InodeFactory.getInodesOfClassByCondition(Organization.class,condition,orderby); 124 } 125 } 126 public static Organization getParentOrganization(Organization organization) { 127 return (Organization) InodeFactory.getParentOfClass(organization, Organization.class); 128 } 129 130 public static java.util.List getAllSystems() { 131 DotHibernate dh = new DotHibernate(Organization.class); 132 dh.setQuery( 133 "from inode in class com.dotmarketing.portlets.organization.model.Organization where is_system = " + com.dotmarketing.db.DbConnectionFactory.getDBTrue() + " order by title"); 134 return dh.list(); 135 } 136 137 public static Organization newInstance() { 138 Organization m = new Organization(); 139 return m; 140 } 141 142 public static void saveOrganization(Organization organization) { 143 InodeFactory.saveInode(organization); 144 } 145 146 public static void deleteOrganization(Organization organization) { 147 InodeFactory.deleteInode(organization); 148 } 149 150 public static Organization getOrganization(String inode) { 151 return (Organization) InodeFactory.getInode(inode,Organization.class); 152 } 153 154 public static Organization getOrganization(long inode) { 155 return (Organization) InodeFactory.getInode(inode,Organization.class); 156 } 157 158 165 @SuppressWarnings ("unchecked") 166 public static List <Organization> getOrganizationsByPartnerUrl(String partnerUrl) { 167 String condition = "partner_url like '" + partnerUrl + "%'"; 168 return (List <Organization>)InodeFactory.getInodesOfClassByCondition(Organization.class, condition); 169 } 170 171 } 172 | Popular Tags |