KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > dotmarketing > util > UtilHTML


1 package com.dotmarketing.util;
2
3 import java.util.ArrayList JavaDoc;
4 import java.util.Iterator JavaDoc;
5 import java.util.List JavaDoc;
6
7 import javax.portlet.WindowState;
8 import javax.servlet.http.HttpServletRequest JavaDoc;
9
10 import org.apache.commons.beanutils.BeanUtils;
11
12 import com.dotmarketing.beans.Identifier;
13 import com.dotmarketing.beans.Inode;
14 import com.dotmarketing.beans.WebAsset;
15 import com.dotmarketing.factories.IdentifierFactory;
16 import com.dotmarketing.factories.InodeFactory;
17 import com.dotmarketing.factories.RoleFactory;
18 import com.dotmarketing.factories.WebAssetFactory;
19 import com.dotmarketing.portlets.categories.factories.CategoryFactory;
20 import com.dotmarketing.portlets.categories.model.Category;
21 import com.dotmarketing.portlets.containers.model.Container;
22 import com.dotmarketing.portlets.contentlet.factories.ContentletFactory;
23 import com.dotmarketing.portlets.contentlet.model.Contentlet;
24 import com.dotmarketing.portlets.contentlet.struts.ContentletForm;
25 import com.dotmarketing.portlets.entities.factories.EntityFactory;
26 import com.dotmarketing.portlets.entities.model.Entity;
27 import com.dotmarketing.portlets.events.model.Event;
28 import com.dotmarketing.portlets.events.model.Recurance;
29 import com.dotmarketing.portlets.files.model.File;
30 import com.dotmarketing.portlets.htmlpages.model.HTMLPage;
31 import com.dotmarketing.portlets.languagesmanager.factories.LanguageFactory;
32 import com.dotmarketing.portlets.languagesmanager.model.Language;
33 import com.dotmarketing.portlets.links.model.Link;
34 import com.dotmarketing.portlets.structure.factories.StructureFactory;
35 import com.dotmarketing.portlets.structure.model.Structure;
36 import com.dotmarketing.portlets.templates.factories.TemplateFactory;
37 import com.dotmarketing.portlets.templates.model.Template;
38 import com.liferay.portal.model.User;
39 import com.liferay.portal.util.Constants;
40
41 public class UtilHTML {
42
43     public static String JavaDoc getStatusIcons(WebAsset webasset, String JavaDoc COMMON_IMG, boolean showWorking) {
44         return getStatusIcons(webasset.isLive(), webasset.isWorking(), webasset.isDeleted(), webasset.isLocked(),
45                 COMMON_IMG, showWorking);
46     }
47
48     public static String JavaDoc getStatusIcons(boolean live, boolean working, boolean deleted, boolean locked,
49             String JavaDoc COMMON_IMG, boolean showWorking) {
50         StringBuffer JavaDoc strHTML = new StringBuffer JavaDoc();
51         strHTML.append("<table cellpadding=0 cellspacing=0 width=67><tr>");
52         strHTML.append("<td valign=middle width=16>");
53
54         if (live) {
55             strHTML.append("<img SRC=\"" + COMMON_IMG + "/trees/live.gif\" width=16 alt=live>");
56         }
57
58         strHTML.append("</td><td width=1></td>");
59
60         if ((showWorking) && (working)) {
61             strHTML.append("<td valign=middle width=16>");
62             strHTML.append("<img SRC=\"" + COMMON_IMG + "/trees/working.gif\" width=16 alt=working>");
63             strHTML.append("</td><td width=1></td>");
64         }
65
66         strHTML.append("<td valign=middle width=16>");
67
68         if (deleted) {
69             strHTML.append("<img SRC=\"" + COMMON_IMG + "/trees/deleted.gif\" width=16 alt=deleted>");
70         }
71
72         strHTML.append("</td><td width=1></td><td valign=middle width=16>");
73
74         if (locked) {
75             strHTML.append("<img SRC=\"" + COMMON_IMG + "/trees/locked.gif\" width=16 alt=locked>");
76         }
77
78         strHTML.append("</td></tr></table>");
79
80         return strHTML.toString();
81     }
82
83     public static String JavaDoc getAssetIcon(WebAsset webasset) {
84         String JavaDoc imgSrc = "";
85
86         if (webasset instanceof Container) {
87             imgSrc = "/portal/images/icons/entry12.gif";
88         } else if (webasset instanceof Template) {
89             imgSrc = "/portal/images/icons/entry13.gif";
90         } else if (webasset instanceof Link) {
91             imgSrc = "/portal/images/icons/entry16.gif";
92         } else if (webasset instanceof Contentlet) {
93             imgSrc = "/portal/images/icons/entry14.gif";
94         } else if (webasset instanceof File) {
95             imgSrc = "/icon?i=" + ((File) webasset).getFileName();
96         } else if (webasset instanceof HTMLPage) {
97             imgSrc = "/portal/images/icons/entry15.gif";
98         }
99
100         return "<img SRC=\"" + imgSrc + "\">";
101     }
102
103     public static String JavaDoc getSelectCategories(Inode parent, int level, Inode current) {
104
105         level++;
106         Logger.debug(UtilHTML.class, "getSelectCategories!!!");
107
108         List JavaDoc categories = (parent == null) ? CategoryFactory.getTopLevelCategories() : CategoryFactory
109                 .getChildrenCategories(parent);
110
111         StringBuffer JavaDoc strHTML = new StringBuffer JavaDoc();
112         Iterator JavaDoc m = categories.iterator();
113
114         while (m.hasNext()) {
115             Category cat = (Category) m.next();
116
117             if (level == 1) {
118                 strHTML.append("<option value=\"" + cat.getInode() + "\" class='topCat' ");
119             } else {
120                 strHTML.append("<option value=\"" + cat.getInode() + "\"");
121             }
122
123             if (current != null) {
124                 java.util.Iterator JavaDoc l = InodeFactory.getParentsOfClass(current, Category.class).iterator();
125
126                 while (l.hasNext()) {
127                     Category disCat = (Category) l.next();
128
129                     if (cat.getInode() == disCat.getInode()) {
130                         strHTML.append(" selected");
131                     }
132                 }
133             }
134
135             strHTML.append(">");
136
137             for (int k = 0; k < (level - 1); k++) {
138                 strHTML.append(" &nbsp; &nbsp;");
139             }
140
141             strHTML.append("+&nbsp;");
142             strHTML.append(cat.getCategoryName() + "</option>\n");
143
144             if (CategoryFactory.getChildrenCategories(cat).size() > 0) {
145                 strHTML.append(getSelectCategories(cat, level, current));
146             }
147         }
148
149         return strHTML.toString();
150     }
151
152     public static String JavaDoc getLanguagesIcons(HttpServletRequest JavaDoc request, Contentlet contentlet) {
153         StringBuffer JavaDoc strHTML = new StringBuffer JavaDoc();
154
155         try {
156             List JavaDoc languages = LanguageFactory.getLanguages();
157             Language defaultLang = LanguageFactory.getLanguage (Config.getStringProperty("DEFAULT_LANGUAGE_CODE"),
158                     Config.getStringProperty("DEFAULT_LANGUAGE_COUNTRY_CODE"));
159             long langId = (request.getParameter("lang") != null) ? Long.parseLong(request.getParameter("lang")) : defaultLang.getId();
160
161             Logger.debug(UtilHTML.class, "getLanguagesIcons :: langId=" + langId);
162
163             Identifier identifier = null;
164
165             if (contentlet.getInode() > 0) {
166                 identifier = IdentifierFactory.getIdentifierByInode(contentlet);
167                 Logger.debug(UtilHTML.class, "getLanguagesIcons :: Contentlet exists identifier = "
168                         + identifier.getInode());
169             } else {
170                 Contentlet sibblingContentlet = (Contentlet) InodeFactory.getInode(request.getParameter("sibbling"),
171                         Contentlet.class);
172                 Logger.debug(UtilHTML.class, "getLanguagesIcons :: Sibbling Contentlet = "
173                         + sibblingContentlet.getInode());
174                 identifier = IdentifierFactory.getIdentifierByInode(sibblingContentlet);
175                 Logger.debug(UtilHTML.class, "getLanguagesIcons :: Contentlet doesn't exist identifier = "
176                         + identifier.getInode());
177             }
178
179             java.util.Map JavaDoc params = new java.util.HashMap JavaDoc();
180             params.put("struts_action", new String JavaDoc[] { "/ext/contentlet/edit_contentlet" });
181             params.put("cmd", new String JavaDoc[] { "edit" });
182
183             if (request.getParameter("referer") != null) {
184                 params.put("referer", new String JavaDoc[] { request.getParameter("referer") });
185             }
186
187             // container inode
188
if (request.getParameter("contentcontainer_inode") != null) {
189                 params.put("contentcontainer_inode", new String JavaDoc[] { request.getParameter("contentcontainer_inode") });
190             }
191
192             // html page inode
193
if (request.getParameter("htmlpage_inode") != null) {
194                 params.put("htmlpage_inode", new String JavaDoc[] { request.getParameter("htmlpage_inode") });
195             }
196
197             if (contentlet.getInode() > 0) {
198                 params.put("sibbling", new String JavaDoc[] { contentlet.getInode() + "" });
199             } else {
200                 params.put("sibbling", new String JavaDoc[] { (request.getParameter("sibbling") != null) ? request
201                         .getParameter("sibbling") : "0" });
202             }
203             
204             if (contentlet.getInode() > 0) {
205                                 
206                 Structure structure = contentlet.getStructure();
207                 params.put("sibblingStructure", new String JavaDoc[] { ""+structure.getInode() });
208             }else if(UtilMethods.isSet(request.getParameter("selectedStructure"))){
209                 params.put("sibblingStructure", new String JavaDoc[] { request.getParameter("selectedStructure")});
210                 
211             }else if(UtilMethods.isSet(request.getParameter("sibblingStructure"))){
212                 params.put("sibblingStructure", new String JavaDoc[] { request.getParameter("sibblingStructure")});
213             } else {
214                 params.put("sibblingStructure", new String JavaDoc[] { (request.getParameter("selectedStructureFake") != null) ? request
215                         .getParameter("selectedStructureFake") : "0" });
216             }
217
218             String JavaDoc editURL = com.dotmarketing.util.PortletURLUtil.getActionURL(request, WindowState.MAXIMIZED
219                     .toString(), params);
220
221             Iterator JavaDoc m = languages.iterator();
222
223             while (m.hasNext()) {
224                 Language language = (Language) m.next();
225                 Logger.debug(UtilHTML.class, "getLanguagesIcons :: Checking language=" + language.getId() + " code="
226                         + language.getLanguageCode());
227
228                 Contentlet langContentlet = ContentletFactory.getContentletForLanguage(language.getId(), identifier);
229                 Logger.debug(UtilHTML.class, "getLanguagesIcons :: Checking language Contentlet="
230                         + langContentlet.getInode());
231
232                 if (((contentlet.getInode() > 0) && (language.getId() != contentlet.getLanguageId()))
233                         || ((contentlet.getInode() == 0) && (langId != language.getId()))) {
234                     strHTML.append("<a HREF=\"" + editURL + "&inode=" + langContentlet.getInode() + "&lang="
235                             + language.getId() + "\">\n");
236                     strHTML.append("<img style='vertical-align: middle;' border=0 alt=\"" + language.getLanguage()
237                             + "\" SRC=\"/portal/images/languages/" + language.getLanguageCode() + "_"
238                             + language.getCountryCode() + ".gif\"></a>\n");
239                     strHTML.append("&nbsp;\n");
240                 } else {
241                     strHTML.append("<img style='vertical-align: middle;' border=0 alt=\"" + language.getLanguage()
242                             + "\" SRC=\"/portal/images/languages/" + language.getLanguageCode() + "_"
243                             + language.getCountryCode() + "_gray.gif\">\n");
244                     strHTML.append("&nbsp;\n");
245                 }
246             }
247         } catch (Exception JavaDoc e) {
248             Logger.error(UtilHTML.class, e.toString(), e);
249         }
250
251         return strHTML.toString();
252     }
253
254     public static String JavaDoc getSelectLanguages(Contentlet contentlet) {
255         List JavaDoc languages = LanguageFactory.getLanguages();
256
257         StringBuffer JavaDoc strHTML = new StringBuffer JavaDoc();
258         Iterator JavaDoc m = languages.iterator();
259
260         while (m.hasNext()) {
261             Language language = (Language) m.next();
262
263             strHTML.append("<option value=\"" + language.getId() + "\"");
264
265             if (language.getId() == contentlet.getLanguageId()) {
266                 strHTML.append(" selected");
267             }
268
269             strHTML.append(">");
270
271             strHTML.append(language.getLanguage() + " (" + language.getCountry() + ")</option>\n");
272         }
273
274         return strHTML.toString();
275     }
276
277     public static String JavaDoc getSelectCategories(Inode parent, int level, String JavaDoc currentCats) {
278         level++;
279         Logger.debug(UtilHTML.class, "getSelectCategories!!!");
280
281         List JavaDoc categories = (parent == null) ? CategoryFactory.getTopLevelCategories() : CategoryFactory
282                 .getChildrenCategories(parent);
283
284         StringBuffer JavaDoc strHTML = new StringBuffer JavaDoc();
285         Iterator JavaDoc m = categories.iterator();
286
287         while (m.hasNext()) {
288             Category cat = (Category) m.next();
289
290             if (level == 1) {
291                 strHTML.append("<option value=\"" + cat.getInode() + "\" class='topCat' ");
292             } else {
293                 strHTML.append("<option value=\"" + cat.getInode() + "\"");
294             }
295
296             if (currentCats.indexOf(cat.getInode() + ",") != -1) {
297                 Logger.debug(UtilHTML.class, "found the same objects!!!!");
298                 strHTML.append(" selected");
299             }
300
301             strHTML.append(">");
302
303             for (int k = 0; k < (level - 1); k++) {
304                 strHTML.append(" &nbsp; &nbsp;");
305             }
306
307             if (level != 0)
308                 strHTML.append("+&nbsp;");
309             strHTML.append(cat.getCategoryName() + "</option>\n");
310
311             if (CategoryFactory.getChildrenCategories(cat).size() > 0) {
312                 strHTML.append(getSelectCategories(cat, level, currentCats));
313             }
314         }
315
316         return strHTML.toString();
317     }
318
319     public static String JavaDoc getSelectCategoriesTextMode(Inode parent, int level, String JavaDoc currentCats) {
320         level++;
321         Logger.debug(UtilHTML.class, "getSelectCategories!!!");
322
323         List JavaDoc categories = (parent == null) ? CategoryFactory.getTopLevelCategories() : CategoryFactory
324                 .getChildrenCategories(parent);
325
326         StringBuffer JavaDoc strHTML = new StringBuffer JavaDoc();
327         Iterator JavaDoc m = categories.iterator();
328
329         while (m.hasNext()) {
330             Category cat = (Category) m.next();
331
332             if (currentCats.indexOf(cat.getInode() + ",") != -1) {
333                 Logger.debug(UtilHTML.class, "found the same objects!!!!");
334                 strHTML.append("<tr><td>");
335                 strHTML.append(cat.getCategoryName());
336                 strHTML.append("</td></tr>");
337             }
338             if (CategoryFactory.getChildrenCategories(cat).size() > 0) {
339                 strHTML.append(getSelectCategoriesTextMode(cat, level, currentCats));
340             }
341         }
342         return strHTML.toString();
343     }
344
345     public static String JavaDoc getSelectCategories(Inode parent, int level, String JavaDoc[] currentCats) {
346         StringBuffer JavaDoc buffer = new StringBuffer JavaDoc();
347         if (currentCats != null) {
348             for (int i = 0; i < currentCats.length; i++) {
349                 buffer.append(currentCats[i] + ",");
350             }
351         }
352         return getSelectCategories(parent, level, buffer.toString());
353     }
354
355     public static String JavaDoc getSelectCategoriesTextMode(Inode parent, int level, String JavaDoc[] currentCats) {
356         StringBuffer JavaDoc buffer = new StringBuffer JavaDoc();
357         if (currentCats != null) {
358             for (int i = 0; i < currentCats.length; i++) {
359                 buffer.append(currentCats[i] + ",");
360             }
361         }
362         return getSelectCategoriesTextMode(parent, level, buffer.toString());
363     }
364
365     public static String JavaDoc getSelectTemplates(com.liferay.portal.model.User user, long templateInode) {
366         StringBuffer JavaDoc strBuffer = new StringBuffer JavaDoc();
367         String JavaDoc condition = "working=" + com.dotmarketing.db.DbConnectionFactory.getDBTrue() + " and deleted="
368                 + com.dotmarketing.db.DbConnectionFactory.getDBFalse();
369
370         // Gets roles
371
try {
372             com.liferay.portal.model.Role[] roles = (com.liferay.portal.model.Role[]) RoleFactory.getAllRolesForUser(
373                     user.getUserId()).toArray(new com.liferay.portal.model.Role[0]);
374             int limit = WebAssetFactory.getCountAssetsPerConditionWithPermission(condition, Template.class, roles);
375             int offset = 0;
376             String JavaDoc orderby = "title";
377             java.util.List JavaDoc templates = WebAssetFactory.getAssetsAndPermissionsPerRoleAndCondition(roles, condition,
378                     limit, offset, orderby, Template.class, "template");
379
380             // java.util.List templates =
381
// TemplateFactory.getTemplatesAndPermissionsPerRoleAndCondition(roles,condition,limit,offset,orderby);
382
java.util.Iterator JavaDoc templatesIter = templates.iterator();
383
384             while (templatesIter.hasNext()) {
385                 com.dotmarketing.beans.PermissionAsset permAsset = (com.dotmarketing.beans.PermissionAsset) templatesIter
386                         .next();
387
388                 // gets template
389
Template template = (Template) permAsset.getAsset();
390
391                 if (template.getInode() == templateInode) {
392                     strBuffer.append("<option selected value=\"" + template.getInode() + "\">" + template.getTitle()
393                             + "</option>");
394                 } else {
395                     strBuffer.append("<option value=\"" + template.getInode() + "\">" + template.getTitle()
396                             + "</option>");
397                 }
398             }
399         } catch (Exception JavaDoc e) {
400         }
401
402         return strBuffer.toString();
403     }
404
405     public static String JavaDoc getSelectTemplates(long templateInode) {
406         StringBuffer JavaDoc strBuffer = new StringBuffer JavaDoc();
407         String JavaDoc condition = "working=" + com.dotmarketing.db.DbConnectionFactory.getDBTrue() + " and deleted="
408                 + com.dotmarketing.db.DbConnectionFactory.getDBFalse();
409
410         // Gets roles
411
try {
412             java.util.List JavaDoc templates = TemplateFactory.getTemplateByCondition(condition);
413             java.util.Iterator JavaDoc templatesIter = templates.iterator();
414
415             while (templatesIter.hasNext()) {
416                 // gets template
417
Template template = (Template) templatesIter.next();
418
419                 if (template.getInode() == templateInode) {
420                     strBuffer.append("<option selected value=\"" + template.getInode() + "\">" + template.getTitle()
421                             + "</option>");
422                 } else {
423                     strBuffer.append("<option value=\"" + template.getInode() + "\">" + template.getTitle()
424                             + "</option>");
425                 }
426             }
427         } catch (Exception JavaDoc e) {
428         }
429
430         return strBuffer.toString();
431     }
432
433     public static String JavaDoc getSelectCategories(Inode current) {
434         return getSelectCategories(null, 0, current);
435     }
436
437     public static String JavaDoc getSelectCategories(long x) {
438         Category current = CategoryFactory.getCategory(x);
439
440         return getSelectCategories(null, 0, current);
441     }
442
443     public static String JavaDoc getSelectCategoriesByParent(Inode parent) {
444         Inode current = new Inode();
445         Category parentCat = (Category) parent;
446         StringBuffer JavaDoc strHTML = new StringBuffer JavaDoc();
447         strHTML.append("<option value=\"" + parent.getInode() + "\" class='topCat'>");
448         strHTML.append(parentCat.getCategoryName() + "</option>\n");
449         strHTML.append(getSelectCategories(parent, 1, current));
450
451         return strHTML.toString();
452     }
453
454     public static String JavaDoc getSelectCategories(Inode parent, int level, Inode current, int maxlevel) {
455         ArrayList JavaDoc idList = new ArrayList JavaDoc();
456         if (current instanceof Category) {
457             idList.add(Long.toString(current.getInode()));
458         } else {
459             List JavaDoc cats = InodeFactory.getParentsOfClass(current, Category.class);
460             Iterator JavaDoc it = cats.iterator();
461             while (it.hasNext()) {
462                 Category cat = (Category) it.next();
463                 idList.add(Long.toString(cat.getInode()));
464             }
465         }
466         String JavaDoc[] catsArr = (String JavaDoc[]) idList.toArray(new String JavaDoc[0]);
467         return getSelectCategories(parent, level, catsArr, maxlevel);
468     }
469
470     public static String JavaDoc getSelectCategories(Inode parent, int level, String JavaDoc[] selectedCategoriesIds, int maxlevel) {
471         level++;
472
473         List JavaDoc categories = (parent == null) ? CategoryFactory.getTopLevelCategories() : CategoryFactory
474                 .getChildrenCategories(parent);
475
476         StringBuffer JavaDoc strHTML = new StringBuffer JavaDoc();
477         Iterator JavaDoc m = categories.iterator();
478
479         while (m.hasNext()) {
480             Category cat = (Category) m.next();
481
482             if (level == 1) {
483                 strHTML.append("<option value=\"" + cat.getInode() + "\" class=\"topCat\" ");
484             } else {
485                 strHTML.append("<option value=\"" + cat.getInode() + "\"");
486             }
487
488             if (selectedCategoriesIds != null) {
489                 for (int i = 0; i < selectedCategoriesIds.length; i++) {
490                     String JavaDoc id = selectedCategoriesIds[i];
491                     if (cat.getInode() == Long.parseLong(id)) {
492                         strHTML.append(" selected");
493
494                     }
495                 }
496             }
497
498             strHTML.append(">");
499
500             for (int k = 0; k < (level - 1); k++) {
501                 strHTML.append(" &nbsp; &nbsp;");
502             }
503
504             strHTML.append("+&nbsp;");
505             strHTML.append(cat.getCategoryName() + "</option>");
506
507             if (level <= maxlevel && CategoryFactory.getChildrenCategories(cat).size() > 0) {
508                 strHTML.append(getSelectCategories(cat, level, selectedCategoriesIds, maxlevel));
509             }
510         }
511
512         return strHTML.toString();
513     }
514
515     // Event recurance HTML representation
516
public static String JavaDoc recuranceToString(com.dotmarketing.portlets.events.model.Recurance r) {
517         if (r == null || r.getInode() == 0)
518             return "Once";
519
520         String JavaDoc plural = (r.getInterval() < 2) ? r.getOccurs() : r.getInterval() + " " + r.getOccurs() + "s";
521
522         StringBuffer JavaDoc days = new StringBuffer JavaDoc("");
523         if (r.getOccurs() != null && r.getOccurs().equals("week") && r.getDaysOfWeek() != null
524                 && r.getDaysOfWeek().length() > 0) {
525             days.append(" - ");
526             if (r.getDaysOfWeek().indexOf("0") > -1)
527                 days.append("Sun ");
528             if (r.getDaysOfWeek().indexOf("1") > -1)
529                 days.append("Mon ");
530             if (r.getDaysOfWeek().indexOf("2") > -1)
531                 days.append("Tue ");
532             if (r.getDaysOfWeek().indexOf("3") > -1)
533                 days.append("Wed ");
534             if (r.getDaysOfWeek().indexOf("4") > -1)
535                 days.append("Thr ");
536             if (r.getDaysOfWeek().indexOf("5") > -1)
537                 days.append("Fri ");
538             if (r.getDaysOfWeek().indexOf("6") > -1)
539                 days.append("Sat");
540
541         }
542
543         return "Every " + plural + days + " from " + UtilMethods.dateToHTMLDate(r.getStarting()) + " to "
544                 + UtilMethods.dateToHTMLDate(r.getEnding());
545
546     }
547
548     public static String JavaDoc recuranceToString(Event e, Recurance r) {
549         if (r == null || r.getInode() == 0)
550             return "Once";
551
552         String JavaDoc plural = (r.getInterval() < 2) ? r.getOccurs() : r.getInterval() + " " + r.getOccurs() + "s";
553
554         StringBuffer JavaDoc days = new StringBuffer JavaDoc("");
555         if (r.getOccurs() != null && r.getOccurs().equals("week") && r.getDaysOfWeek() != null
556                 && r.getDaysOfWeek().length() > 0) {
557             days.append(" - ");
558             if (r.getDaysOfWeek().indexOf("1") > -1)
559                 days.append("Sun ");
560             if (r.getDaysOfWeek().indexOf("2") > -1)
561                 days.append("Mon ");
562             if (r.getDaysOfWeek().indexOf("3") > -1)
563                 days.append("Tue ");
564             if (r.getDaysOfWeek().indexOf("4") > -1)
565                 days.append("Wed ");
566             if (r.getDaysOfWeek().indexOf("5") > -1)
567                 days.append("Thr ");
568             if (r.getDaysOfWeek().indexOf("6") > -1)
569                 days.append("Fri ");
570             if (r.getDaysOfWeek().indexOf("7") > -1)
571                 days.append("Sat");
572
573         }
574         if (e.isTimeTBD())
575             return "Every " + plural + days + " from <br>"
576                     + UtilMethods.dateToHTMLDateTimeRange(r.getStarting(), r.getEnding()) + " at time TBD";
577         else
578             return "Every " + plural + days + " from <br>"
579                     + UtilMethods.dateToHTMLDateTimeRange(r.getStarting(), r.getEnding()) + " at "
580                     + UtilMethods.dateToHTMLTimeRange(r.getStarting(), r.getEnding());
581     }
582
583     /***************************************************************************
584      * This methods return the selects required for the categories of an entity
585      *
586      * @param parameterName
587      * value of the "name" attribute for the <select> html tag
588      * @param entityName
589      * name of the entity that have the categories
590      * @param selectCatsString
591      * Selected categories inodes
592      * @param displayTitle
593      * if do you want that the title display or not (Entity Name)
594      * @param multipleValues
595      * if the user could select multiple values
596      * @param size
597      * the height in entries that could be displayed
598      * @param readonly
599      * if the select is disable
600      * @return the the HTML that render the selects
601      */

602     public static String JavaDoc getCategoriesByEntityName(String JavaDoc parameterName, String JavaDoc entityName, String JavaDoc[] selectCatsString,
603             boolean displayTitle, boolean multipleValues, int size, boolean readonly) {
604         StringBuffer JavaDoc buffer = new StringBuffer JavaDoc();
605         // GETS THE ENTITY
606
Entity entity = EntityFactory.getEntity(entityName);
607         // GET ALL THE MAIN CATEGORIES FOR THIS ENTITY
608
List JavaDoc categories = EntityFactory.getEntityCategories(entity);
609         if (categories.size() > 0) {
610             buffer.append("<table>");
611             buffer.append("<tr>");
612             buffer.append("<td align='left' colspan='2'>");
613             buffer.append("<table border='0'>");
614             Iterator JavaDoc categoriesIterator = categories.iterator();
615             // /FOR EACH CATEGORY WE GET THE CHILDREN
616
while (categoriesIterator.hasNext()) {
617                 Category category = (Category) categoriesIterator.next();
618                 int count = InodeFactory.countChildrenOfClass(category, Category.class);
619                 if (count > 1) {
620                     buffer.append("<tr>");
621                     if (displayTitle) {
622                         buffer.append("<td valign='top'>");
623                         buffer.append(category.getCategoryName() + ":");
624                         buffer.append("</td>");
625                     }
626                     buffer.append("<td align='left'>");
627                     String JavaDoc multiple = (multipleValues ? "multiple='multiple'" : "");
628                     int sizeAux = (size == -1 ? count - 1 : size);
629                     String JavaDoc disabled = (readonly ? "disabled" : "");
630                     buffer.append("<select id'" + parameterName + "' name='" + parameterName + "' size='" + sizeAux
631                             + "' " + multiple + " " + disabled + ">");
632                     buffer.append(getSelectCategories(category, -1, selectCatsString));
633                     buffer.append("</select>");
634                     buffer.append("</td>");
635                     buffer.append("</tr>");
636                 }
637             }
638             buffer.append("</table>");
639             buffer.append("</td>");
640             buffer.append("</tr>");
641             buffer.append("</table>");
642         }
643         return buffer.toString();
644     }
645
646     public static String JavaDoc getCategoriesByEntityName(String JavaDoc parameterName, String JavaDoc entityName, long childInode,
647             boolean displayTitle, boolean multipleValues, int size, boolean readonly) {
648         String JavaDoc[] selectCatsString = new String JavaDoc[0];
649         // Find the selected values
650
if (childInode != 0) {
651             Inode inode = InodeFactory.getInode(childInode, Inode.class);
652             List JavaDoc<Category> categories = InodeFactory.getParentsOfClass(inode, Category.class);
653             selectCatsString = new String JavaDoc[categories.size()];
654             for (int i = 0; i < categories.size(); i++) {
655                 selectCatsString[i] = Long.toString(categories.get(i).getInode());
656             }
657         }
658
659         return getCategoriesByEntityName(parameterName, entityName, selectCatsString, displayTitle, multipleValues,
660                 size, readonly);
661     }
662
663 }
664
Popular Tags