[elvystrac] r1723 - DB changed - version 25 (part.4):

  • From: elvys@xxxxxxxxxxxxxxxxxxxxxx
  • To: elvystrac@xxxxxxxxxxxxx
  • Date: Sun, 14 Feb 2010 17:06:16 +0100

Author: DavidK
Date: 2010-02-14 17:06:15 +0100 (Sun, 14 Feb 2010)
New Revision: 1723

Added:
   trunk/server/webServer2/WebContent/js/components/layout/
   
trunk/server/webServer2/WebContent/js/components/layout/layoutListComponent.js
   trunk/server/webServer2/WebContent/js/components/user/
   trunk/server/webServer2/WebContent/js/components/user/userLabelComponent.js
   trunk/server/webServer2/WebContent/secured/components/user/
   
trunk/server/webServer2/WebContent/secured/components/user/userLabelComponent.xhtml
   trunk/server/webServer2/WebContent/styles/components/layout/
   
trunk/server/webServer2/WebContent/styles/components/layout/layoutListComponent.css
   trunk/server/webServer2/WebContent/styles/components/user/
   
trunk/server/webServer2/WebContent/styles/components/user/layoutListComponent.css
Modified:
   
trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/debug/DebugBean.java
   
trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/planningrel/PlanningModalBean.java
   
trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/planningrel/plug/PlanningModalDocumentBean.java
   
trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/planningrel/plug/PlanningModalVideoBean.java
   
trunk/server/webServer2/JavaSource/cz/elvys/webServer/messages/labels_cs.properties
   
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/elvysrel/PlanDocumentBLImpl.java
   
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/elvysrel/Rectangle.java
   
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/planning/api/PlanningModalBL.java
   
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/planning/api/PlanningModalSpecBL.java
   
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/planning/impl/PlanningModalBLImpl.java
   
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/planning/impl/PlanningModalDocumentBLImpl.java
   
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/planning/impl/PlanningModalVideoBLImpl.java
   trunk/server/webServer2/WebContent/WEB-INF/elvystags.xml
   
trunk/server/webServer2/WebContent/secured/components/layoutListComponent.xhtml
   
trunk/server/webServer2/WebContent/secured/components/layoutSelectAndCloseComp.xhtml
   trunk/server/webServer2/WebContent/secured/elvysrel/planDocuments.xhtml
   trunk/server/webServer2/WebContent/secured/plug/planningModalDocument.xhtml
   
trunk/server/webServer2/WebContent/secured/plug/planningModalDocumentInnerModal.xhtml
   
trunk/server/webServer2/WebContent/secured/plug/planningModalDocumentTooltip.xhtml
   trunk/server/webServer2/WebContent/secured/plug/planningModalVideo.xhtml
   
trunk/server/webServer2/WebContent/secured/plug/planningModalVideoInnerModal.xhtml
   
trunk/server/webServer2/WebContent/secured/plug/planningModalVideoTooltip.xhtml
   trunk/server/webServer2/WebContent/styles/planning/planDocuments.css
Log:
DB changed - version 25 (part.4):
        - abstraktni predek planovani souboru
        - datum zmeny u timeline, uzivatel, ktery zmenu provedl
        - datum zalozeni a modifikace layoutu, uzivatel, ktery provedl posl. 
modif.
        - type_plug identity

Modified: 
trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/debug/DebugBean.java
===================================================================
--- 
trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/debug/DebugBean.java
    2010-02-14 16:04:59 UTC (rev 1722)
+++ 
trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/debug/DebugBean.java
    2010-02-14 16:06:15 UTC (rev 1723)
@@ -18,6 +18,7 @@
 import cz.elvys.webServer.HIBgen.File;
 import cz.elvys.webServer.HIBgen.Layout;
 import cz.elvys.webServer.HIBgen.Panel;
+import cz.elvys.webServer.HIBgen.User;
 import cz.elvys.webServer.HIBgen.Video;
 import cz.elvys.webServer.HIBgen.VideoContent;
 import cz.elvys.webServer.bl.api.Factory;
@@ -123,36 +124,42 @@
                }
                
                
-               
+               // assign category to group
                cbl.assignCategoryDefinitionToGroup(categoryDefId, 
elvys.getElvysGroup().getId());
                
+               // get category planning
                Category category = 
cbl.getCatByCatDefAndGroupMakeSession(categoryDefId, 
elvys.getElvysGroup().getId());
                if (category == null) {
                        throw new NullPointerException("added cateogry");
                }
-               
                CategoryPlanning cp = category.getCategoryPlanning();
                if (cp == null) {
                        throw new NullPointerException("added 
cateogryPlanning");
                }
                
+               // add panel
                cbl.addPanelMakeSession(cp.getId());
                
+               // check that there are 2 panels exactly
                List<Panel> panels = 
cbl.listPanelsForCatPlanningMakeSession(cp.getId());
                if (panels.size() != 2) {
                        throw new RuntimeException("panel count != 2");
                }
                
                
+               // prepare user
+               User modifyingUser = BeanManager.getUser().getUser();
                
+               // documentContentType preparation
                ContentType documentCt = new ContentType();
                documentCt.setId(1);
                documentCt.setType("document");
+               // videoContentType preparation
                ContentType videoCt = new ContentType();
                videoCt.setId(5);
                videoCt.setType("video");
                
-               
+               // dateFrom-dateTo preparation
                Calendar calendar = new GregorianCalendar();
                calendar.setTime(new Date());
                calendar.add(Calendar.DAY_OF_MONTH, 3);
@@ -165,11 +172,21 @@
                if (file1 != null && file1 instanceof Document) {
                        DocumentContent docc = new DocumentContent();
                        docc.setContentType(documentCt);
-                       docc.setDocument((Document)file1);
+                       docc.setFile((Document)file1);
                        docc.setNumPreviewPage("1");
                        docc.setPageList("1-1");
                        List<ValidationMessageHolder> validationres = 
-                               pmbl.store("tajne", cp.getId(), 1, 
layout.getId(), 1, null, begin, end, new Date(), docc);
+                               pmbl.store("tajne",
+                                               cp.getId(), 
+                                               1, 
+                                               layout.getId(), 
+                                               1, 
+                                               null, 
+                                               begin, 
+                                               end, 
+                                               new Date(), 
+                                               docc,
+                                               modifyingUser);
                        checkValidationResp(validationres);
                }
                
@@ -177,11 +194,21 @@
                if (video1 != null && video1 instanceof Video) {
                        VideoContent vidc = new VideoContent();
                        vidc.setContentType(videoCt);
-                       vidc.setVideo((Video)video1);
+                       vidc.setFile((Video)video1);
                        vidc.setAutostart(true);
                        vidc.setStartPosMs(1500);
                        List<ValidationMessageHolder> validationres = 
-                               pmbl.store("tajne", cp.getId(), 1, 
layout.getId(), 2, null, begin, end, new Date(), vidc);
+                               pmbl.store("tajne",
+                                               cp.getId(), 
+                                               1, 
+                                               layout.getId(), 
+                                               2, 
+                                               null, 
+                                               begin, 
+                                               end, 
+                                               new Date(), 
+                                               vidc,
+                                               modifyingUser);
                        checkValidationResp(validationres);
                }
                
@@ -191,11 +218,21 @@
                if (file2 != null && file2 instanceof Document) {
                        DocumentContent docc = new DocumentContent();
                        docc.setContentType(documentCt);
-                       docc.setDocument((Document)file2);
+                       docc.setFile((Document)file2);
                        docc.setNumPreviewPage("1");
                        docc.setPageList("1-1");
                        List<ValidationMessageHolder> validationres = 
-                               pmbl.store("tajne", cp.getId(), 2, 
layout.getId(), 3, null, begin, end, new Date(), docc);
+                               pmbl.store("tajne", 
+                                               cp.getId(), 
+                                               2, 
+                                               layout.getId(), 
+                                               3, 
+                                               null, 
+                                               begin, 
+                                               end, 
+                                               new Date(), 
+                                               docc,
+                                               modifyingUser);
                        checkValidationResp(validationres);
                }
                
@@ -203,11 +240,21 @@
                if (video2 != null && video2 instanceof Video) {
                        VideoContent vidc = new VideoContent();
                        vidc.setContentType(videoCt);
-                       vidc.setVideo((Video)video2);
+                       vidc.setFile((Video)video2);
                        vidc.setAutostart(false);
                        vidc.setStartPosMs(1500);
                        List<ValidationMessageHolder> validationres = 
-                               pmbl.store("tajne", cp.getId(), 2, 
layout.getId(), 4, null, begin, end, new Date(), vidc);
+                               pmbl.store("tajne", 
+                                               cp.getId(), 
+                                               2, 
+                                               layout.getId(), 
+                                               4, 
+                                               null, 
+                                               begin, 
+                                               end, 
+                                               new Date(), 
+                                               vidc,
+                                               modifyingUser);
                        checkValidationResp(validationres);
                }
                

Modified: 
trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/planningrel/PlanningModalBean.java
===================================================================
--- 
trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/planningrel/PlanningModalBean.java
      2010-02-14 16:04:59 UTC (rev 1722)
+++ 
trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/planningrel/PlanningModalBean.java
      2010-02-14 16:06:15 UTC (rev 1723)
@@ -20,6 +20,7 @@
 import cz.elvys.webServer.HIBgen.ContentType;
 import cz.elvys.webServer.HIBgen.FrameContent;
 import cz.elvys.webServer.HIBgen.Timeline;
+import cz.elvys.webServer.HIBgen.User;
 import cz.elvys.webServer.beans.planningrel.plug.PlanningModalSpecBean;
 import cz.elvys.webServer.bl.api.Factory;
 import cz.elvys.webServer.db.InitSessionFactory;
@@ -377,9 +378,12 @@
                // get data from specific part of planning
                FrameContent formValues = innerBean.getFormData();
                
+               // concat dates (2x2parts)
                formShowStart = concatDateAndTime(formShowStart, 
formShowStartTime);
                formShowEnd = concatDateAndTime(formShowEnd, formShowEndTime);
                
+               // prepare user
+               User modifyingUser = BeanManager.getUser().getUser();
                
                PlanningModalBL bl = Factory.getPlanningModalBL();
                // list of validation messages
@@ -394,7 +398,8 @@
                                        formShowStart, 
                                        formShowEnd,
                                        nowDate,
-                                       formValues);
+                                       formValues,
+                                       modifyingUser);
                } catch (Exception e) {
                        String message = ERR_NOT_STORED;
                        log.error(message,e);

Modified: 
trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/planningrel/plug/PlanningModalDocumentBean.java
===================================================================
--- 
trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/planningrel/plug/PlanningModalDocumentBean.java
 2010-02-14 16:04:59 UTC (rev 1722)
+++ 
trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/planningrel/plug/PlanningModalDocumentBean.java
 2010-02-14 16:06:15 UTC (rev 1723)
@@ -2,9 +2,14 @@
 
 import javax.faces.event.ActionEvent;
 
+import org.apache.log4j.Logger;
+
+
 import cz.elvys.webServer.HIBgen.ContentType;
+import cz.elvys.webServer.HIBgen.Document;
 import cz.elvys.webServer.HIBgen.DocumentContent;
 import cz.elvys.webServer.HIBgen.FrameContent;
+import cz.elvys.webServer.toSpring.exception.ExecuteException;
 
 /**
  * Bean connected with the DOC planning view.
@@ -13,11 +18,17 @@
 public class PlanningModalDocumentBean extends PlanningModalSpecBean {
        // formular fields
        private DocumentContent formData;
+       private static Logger log;
+       
+       
+       static {
+               log = Logger.getLogger(PlanningModalDocumentBean.class);
+       }
     
        @Override
        public void initPlanningModalSpecBean(ContentType type) {
                formData = new DocumentContent();
-               formData.setDocument(null);
+               formData.setFile(null);
                formData.setNumPreviewPage("");
                formData.setPageList("");
                formData.setContentType(type);
@@ -27,7 +38,7 @@
        public void initPlanningModalSpecBean(FrameContent frc) {
                DocumentContent dcc = (DocumentContent) frc;
                formData = new DocumentContent();
-               formData.setDocument(dcc.getDocument());
+               formData.setFile(dcc.getFile());
                formData.setNumPreviewPage(dcc.getNumPreviewPage());
                formData.setPageList(dcc.getPageList());
                formData.setContentType(dcc.getContentType());
@@ -43,11 +54,22 @@
         * @param event
         */
        public void afterDocumentSelected(ActionEvent event){
-               // set page range
-               int pageCount = formData.getDocument().getPageCount();
-               String range = "1-"+pageCount;
-               formData.setPageList(range);
-               // set page for preview
-               formData.setNumPreviewPage("1");
+               try {
+                       // set page range
+                       if (formData.getFile() == null) {
+                               throw new ExecuteException("no selected file");
+                       }
+                       if (!(formData.getFile() instanceof Document)) {
+                               throw new ExecuteException("selected file is 
not pdf document");
+                       }
+                       int pageCount = 
((Document)formData.getFile()).getPageCount();
+                       String range = "1-"+pageCount;
+                       formData.setPageList(range);
+                       // set page for preview
+                       formData.setNumPreviewPage("1");
+               } catch (Exception e) {
+                       log.error(e);
+                       throw new RuntimeException(e);
+               }
        }
 }

Modified: 
trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/planningrel/plug/PlanningModalVideoBean.java
===================================================================
--- 
trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/planningrel/plug/PlanningModalVideoBean.java
    2010-02-14 16:04:59 UTC (rev 1722)
+++ 
trunk/server/webServer2/JavaSource/cz/elvys/webServer/beans/planningrel/plug/PlanningModalVideoBean.java
    2010-02-14 16:06:15 UTC (rev 1723)
@@ -18,7 +18,7 @@
                formData.setBrightness(0);
                formData.setPlaySound(false);
                formData.setStartPosMs(1);
-               formData.setVideo(null);
+               formData.setFile(null);
                formData.setContentType(type);
        }
 
@@ -30,7 +30,7 @@
                formData.setBrightness(vcn.getBrightness());
                formData.setPlaySound(vcn.isPlaySound());
                formData.setStartPosMs(vcn.getStartPosMs());
-               formData.setVideo(vcn.getVideo());
+               formData.setFile(vcn.getFile());
                formData.setContentType(vcn.getContentType());
        }
        

Modified: 
trunk/server/webServer2/JavaSource/cz/elvys/webServer/messages/labels_cs.properties
===================================================================
--- 
trunk/server/webServer2/JavaSource/cz/elvys/webServer/messages/labels_cs.properties
 2010-02-14 16:04:59 UTC (rev 1722)
+++ 
trunk/server/webServer2/JavaSource/cz/elvys/webServer/messages/labels_cs.properties
 2010-02-14 16:06:15 UTC (rev 1723)
@@ -122,16 +122,16 @@
 layout.list.body.title=Seznam rozvr\u017Een\u00ED
 layout.list.id=ID
 layout.list.name=Jm\u00E9no
-layout.list.numposition=\# pozic
+layout.list.numposition=Pozic
+layout.list.revision=Revize
+layout.list.modified=Modifikov\u00E1no
+layout.list.created=Vytvo\u0159eno
 layout.list.preview=N\u00E1hled
 layout.list.previewtooltip=Zobraz\u00ED n\u00E1hled rozvr\u017Een\u00ED 
dokument\u016F
-layout.list.selectdaylayout=Zvolen\u00ED denn\u00EDho rozvr\u017Een\u00ED 
dokument\u016F
-layout.list.selectnightlayout=Zvolen\u00ED no\u010Dn\u00EDho 
rozvr\u017Een\u00ED dokument\u016F
 layout.list.newlayouttooltip=Nov\u00E9 rozvr\u017Een\u00ED
-layout.list.editlayout=Editace
-layout.list.editlayouttooltip=Spust\u00ED n\u00E1stroj pro editaci 
rozvr\u017Een\u00ED dokument\u016F
-layout.list.deletelayout=Smaz\u00E1n\u00ED
-layout.list.deletelayouttooltip=Sma\u017Ee dan\u00E9 rozvr\u017Een\u00ED 
dokument\u016F
+layout.list.operations=Operace
+layout.list.editlayouttooltip=Editovat
+layout.list.deletelayouttooltip=Smazat
 layout.list.createlayouttooltip=Nov\u00E9 rozvr\u017Een\u00ED dokument\u016F
 layout.list.modal.delete=Maz\u00E1n\u00ED rozvr\u017Een\u00ED
 layout.list.modal.deletequestion=Opravdu smazat toto rozvr\u017Een\u00ED
@@ -142,8 +142,7 @@
 layout.create.header=Editor rozvr\u017Een\u00ED
 layout.modalselectcomp.header=Rozvr\u017Een\u00ED obrazovky
 layout.modalselectcomp.list.header=Zvolte rozvr\u017Een\u00ED obrazovky
-layout.modalselectcomp.list.select.tooltip=Zvol\u00ED vybran\u00E9 
rozvr\u017Een\u00ED obrazovky
-layout.modalselectcomp.list.select=Zvolit
+layout.modalselectcomp.list.select.tooltip=Zvolit rozvr\u017Een\u00ED obrazovky
 
 
 catdef.list.title=Seznam kategori\u00ED
@@ -310,6 +309,7 @@
 elvys.plan.component.tooltip.videotype=Video
 elvys.plan.component.tooltip.occupied.from=Od
 elvys.plan.component.tooltip.occupied.to=Do
+elvys.plan.component.tooltip.lastmodified=Posledn\u00ED modifikace
 elvys.plan.modal.create.header=Napl\u00E1novat dokument
 elvys.plan.modal.modify.header=Zm\u011Bna pl\u00E1nov\u00E1n\u00ED
 elvys.plan.modal.form.showStart=Za\u010D\u00E1tek

Modified: 
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/elvysrel/PlanDocumentBLImpl.java
===================================================================
--- 
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/elvysrel/PlanDocumentBLImpl.java
   2010-02-14 16:04:59 UTC (rev 1722)
+++ 
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/elvysrel/PlanDocumentBLImpl.java
   2010-02-14 16:06:15 UTC (rev 1723)
@@ -39,7 +39,17 @@
                        // need to get end of this time gap
                        Date gapEnd = findEndOfGap(panelPl, panelOrd, 
layoutPos, scheduleTo);
                        
-                       Rectangle wholePeriod= new Rectangle(panelPl, panelOrd, 
layoutPos, layoutId, null, scheduleFrom, scheduleTo, gapStart, gapEnd, 
componentWidth, null);
+                       Rectangle wholePeriod= new Rectangle(panelPl,
+                               panelOrd, 
+                               layoutPos,
+                               layoutId, 
+                               null, 
+                               scheduleFrom, 
+                               scheduleTo, 
+                               gapStart, 
+                               gapEnd,
+                               componentWidth, 
+                               null);
                        result.add(wholePeriod);
                        return result;
                }
@@ -52,7 +62,17 @@
                        // there is a space between component border and first 
rectangle
                        // need to get start of this time gap
                        Date gapStart = findStartOfGap(panelPl, panelOrd, 
layoutPos, scheduleFrom);
-                       Rectangle spaceBeforeFirst = new Rectangle(panelPl, 
panelOrd, layoutPos, layoutId, null, scheduleFrom, 
timelines.get(0).getShowStart(), gapStart, timelines.get(0).getShowStart(), 
widthBefore, null);
+                       Rectangle spaceBeforeFirst = new Rectangle(panelPl,
+                               panelOrd, 
+                               layoutPos,
+                               layoutId, 
+                               null, 
+                               scheduleFrom, 
+                               timelines.get(0).getShowStart(),
+                               gapStart, 
+                               timelines.get(0).getShowStart(), 
+                               widthBefore, 
+                               null);
                        result.add(spaceBeforeFirst);
                }
                
@@ -83,14 +103,35 @@
                                width= 1;       // just to be able to see very 
small event
                        }
                        FrameContent frc = timelines.get(i).getFrameContent();
-                       Rectangle plannedDocument = new Rectangle(panelPl, 
panelOrd, layoutPos, layoutId, timelines.get(i), rectStart, rectEnd, realStart, 
realEnd, width, frc);
+                       // rectangle of plannedDocument
+                       Rectangle plannedDocument = new Rectangle(panelPl,
+                               panelOrd,
+                               layoutPos,
+                               layoutId, 
+                               timelines.get(i), 
+                               rectStart, 
+                               rectEnd, 
+                               realStart, 
+                               realEnd,
+                               width, 
+                               frc);
                        result.add(plannedDocument);
                        
                        if (i!= last){
                                // manage space after particular planned 
document       
                                int widthBetween;
                                if 
((widthBetween=computeWidthOftimePeriod(timelines.get(i).getShowEnd(), 
timelines.get(i+1).getShowStart(), wholeScheduleDuration, componentWidth)) > 1) 
{
-                                       Rectangle spaceBetween = new 
Rectangle(panelPl, panelOrd, layoutPos, layoutId, null, 
timelines.get(i).getShowEnd(),timelines.get(i+1).getShowStart(), 
timelines.get(i).getShowEnd(),timelines.get(i+1).getShowStart(), widthBetween, 
null);
+                                       Rectangle spaceBetween = new 
Rectangle(panelPl,
+                                               panelOrd, 
+                                               layoutPos,
+                                               layoutId,
+                                               null,
+                                               timelines.get(i).getShowEnd(),
+                                               
timelines.get(i+1).getShowStart(), 
+                                               timelines.get(i).getShowEnd(),
+                                               
timelines.get(i+1).getShowStart(),
+                                               widthBetween,
+                                               null);
                                        result.add(spaceBetween);
                                }
                        }
@@ -103,7 +144,17 @@
                        // there is a space after end of last rectangle and 
component border
                        // need to get end of this time gap
                        Date gapEnd = findEndOfGap(panelPl, panelOrd, 
layoutPos, scheduleTo);
-                       Rectangle spaceAfter = new Rectangle(panelPl, panelOrd, 
layoutPos, layoutId, null, timelines.get(last).getShowEnd(), scheduleTo, 
timelines.get(last).getShowEnd(), gapEnd, widthAfter, null);
+                       Rectangle spaceAfter = new Rectangle(panelPl,
+                               panelOrd,
+                               layoutPos, 
+                               layoutId,
+                               null, 
+                               timelines.get(last).getShowEnd(),
+                               scheduleTo, 
+                               timelines.get(last).getShowEnd(),
+                               gapEnd, 
+                               widthAfter, 
+                               null);
                        result.add(spaceAfter);
                }
                

Modified: 
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/elvysrel/Rectangle.java
===================================================================
--- 
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/elvysrel/Rectangle.java
    2010-02-14 16:04:59 UTC (rev 1722)
+++ 
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/elvysrel/Rectangle.java
    2010-02-14 16:06:15 UTC (rev 1723)
@@ -7,6 +7,7 @@
 
 import cz.elvys.webServer.HIBgen.FrameContent;
 import cz.elvys.webServer.HIBgen.Timeline;
+import cz.elvys.webServer.HIBgen.User;
 import cz.elvys.webServer.utils.plug.PlugablePlanningTypeBeanUtils;
 
 
@@ -33,8 +34,9 @@
        private String realToText = null;
        // width of rectangle in pixels
        private int width = 0;
+       private User lastModifiedUser;
+       private Date lastModificationDate;
        
-       
        // describes CONTENT. If it's null, then deals with free rectangle
        FrameContent frameContent = null;
        
@@ -152,10 +154,20 @@
        public void setLayoutId(Integer layoutId) {
                this.layoutId = layoutId;
        }
+       public User getLastModifiedUser() {
+               return lastModifiedUser;
+       }
+       public void setLastModifiedUser(User lastModifiedUser) {
+               this.lastModifiedUser = lastModifiedUser;
+       }
+       public Date getLastModificationDate() {
+               return lastModificationDate;
+       }
+       public void setLastModificationDate(Date lastModificationDate) {
+               this.lastModificationDate = lastModificationDate;
+       }
 
 
-       
-       
        /**
         * TODO do i need both? timeline and content??
         * Don't be afraid of this constructor. There's nothing bad :). Just 
info, what is needed by planning..
@@ -171,7 +183,18 @@
         * @param content Depends on content. NULLABLE (free layout frame)
         * @throws ClassCastException
         */
-       public Rectangle(Integer panelPl, Integer panelOrd, Integer layoutPos, 
Integer layoutId, Timeline origTimeline, Date from, Date to, Date realStart, 
Date realEnd, int width, FrameContent content) throws ClassCastException {
+       public Rectangle(Integer panelPl,
+                       Integer panelOrd,
+                       Integer layoutPos,
+                       Integer layoutId,
+                       Timeline origTimeline, 
+                       Date from,
+                       Date to,
+                       Date realStart,
+                       Date realEnd, 
+                       int width, 
+                       FrameContent content) throws ClassCastException {
+               
                this.panelPl = panelPl;
                this.panelOrd = panelOrd;
                this.layoutPos = layoutPos;
@@ -196,6 +219,14 @@
                } else {
                        tooltipViewRef = emptyTooltip;
                }
+               
+               if (origTimeline != null) {
+                       this.lastModifiedUser = origTimeline.getUser();
+                       this.lastModificationDate = origTimeline.getModified();
+               } else {
+                       this.lastModificationDate = null;
+                       this.lastModifiedUser = null;
+               }
        }
        
        private String makeStringFromDate(Date aDate) {

Modified: 
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/planning/api/PlanningModalBL.java
===================================================================
--- 
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/planning/api/PlanningModalBL.java
  2010-02-14 16:04:59 UTC (rev 1722)
+++ 
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/planning/api/PlanningModalBL.java
  2010-02-14 16:06:15 UTC (rev 1723)
@@ -7,6 +7,8 @@
 
 import cz.elvys.webServer.HIBgen.FrameContent;
 import cz.elvys.webServer.HIBgen.Timeline;
+import cz.elvys.webServer.HIBgen.User;
+import cz.elvys.webServer.toSpring.exception.ExecuteException;
 import cz.elvys.webServer.utils.type.ValidationMessageHolder;
 
 public interface PlanningModalBL {
@@ -36,7 +38,7 @@
                        Date valueDateFrom,
                        Date valueDateTo,
                        Date now,
-                       FrameContent formValues) throws Exception;
+                       FrameContent formValues) throws ExecuteException;
        
        
        public List<Timeline> getConflictingBeginInside(
@@ -47,7 +49,7 @@
                Date valueDateFrom,
                Date valueDateTo,
                Session sess,
-               Integer modifyingTimelineId);
+               Integer modifyingTimelineId) throws ExecuteException;
        
        public List<Timeline> getConflictingEndInside(
                Integer panelPl,
@@ -57,7 +59,7 @@
                Date valueDateFrom,
                Date valueDateTo,
                Session sess,
-               Integer modifyingTimelineId);
+               Integer modifyingTimelineId) throws ExecuteException;
        
        public List<Timeline> getConflictingEmbrace(
                Integer panelPl,
@@ -67,7 +69,7 @@
                Date valueDateFrom,
                Date valueDateTo,
                Session sess,
-               Integer modifyingTimelineId);
+               Integer modifyingTimelineId) throws ExecuteException;
        
        /**
         * Stores planning. Stores either new planning or modified planning.
@@ -82,6 +84,7 @@
         * @param valueDateTo value of the form - planning to
         * @param now point in time when planning started (e.g. showing 
planning component or sth. like this)
         * @param formValues form values (DocumentContent, TextContent,... 
depends on the selected type)
+        * @param modifyingUser user who is modifying timeline
         * @return list of validation messages. Empty means 'everything went 
ok, stored'
         */
        public List<ValidationMessageHolder> store(
@@ -94,6 +97,7 @@
                        Date valueDateFrom,
                        Date valueDateTo,
                        Date now,
-                       FrameContent formValues) throws Exception;
+                       FrameContent formValues,
+                       User modifyingUser) throws ExecuteException;
 
 }

Modified: 
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/planning/api/PlanningModalSpecBL.java
===================================================================
--- 
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/planning/api/PlanningModalSpecBL.java
      2010-02-14 16:04:59 UTC (rev 1722)
+++ 
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/planning/api/PlanningModalSpecBL.java
      2010-02-14 16:06:15 UTC (rev 1723)
@@ -3,6 +3,7 @@
 import java.util.List;
 
 import cz.elvys.webServer.HIBgen.FrameContent;
+import cz.elvys.webServer.toSpring.exception.ExecuteException;
 import cz.elvys.webServer.utils.type.ValidationMessageHolder;
 
 public interface PlanningModalSpecBL {
@@ -13,6 +14,7 @@
         * @param formName name of form on view page
         * @return list of validation holders. Empty if everything was ok.
         */
-       public List<ValidationMessageHolder> validate(FrameContent formValues, 
String formName);
+       public List<ValidationMessageHolder> validate(FrameContent formValues,
+               String formName) throws ExecuteException;
        
 }

Modified: 
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/planning/impl/PlanningModalBLImpl.java
===================================================================
--- 
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/planning/impl/PlanningModalBLImpl.java
     2010-02-14 16:04:59 UTC (rev 1722)
+++ 
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/planning/impl/PlanningModalBLImpl.java
     2010-02-14 16:06:15 UTC (rev 1723)
@@ -14,7 +14,9 @@
 import cz.elvys.webServer.HIBgen.Layout;
 import cz.elvys.webServer.HIBgen.Panel;
 import cz.elvys.webServer.HIBgen.Timeline;
+import cz.elvys.webServer.HIBgen.User;
 import cz.elvys.webServer.db.InitSessionFactory;
+import cz.elvys.webServer.toSpring.exception.ExecuteException;
 import cz.elvys.webServer.toSpring.planning.api.PlanningModalBL;
 import cz.elvys.webServer.toSpring.planning.api.PlanningModalSpecBL;
 import cz.elvys.webServer.utils.plug.PlugablePlanningTypeBeanUtils;
@@ -42,9 +44,15 @@
        
        
        public List<ValidationMessageHolder> validate(String formName,
-                       Integer panelPl, Integer panelOrd, Integer layoutID, 
Integer positionID,
-                       Timeline oldTimeline, Date valueDateFrom, Date 
valueDateTo, Date now, 
-                       FrameContent formValues) throws Exception {
+                       Integer panelPl,
+                       Integer panelOrd,
+                       Integer layoutID, 
+                       Integer positionID,
+                       Timeline oldTimeline, 
+                       Date valueDateFrom, 
+                       Date valueDateTo, 
+                       Date now, 
+                       FrameContent formValues) throws ExecuteException {
                if (now == null) throw new RuntimeException("now is null");
                
                String formDateStartId = formName+":"+startFormId;
@@ -157,9 +165,13 @@
        
 
        public List<Timeline> getConflictingBeginInside(Integer panelPl,
-                       Integer panelOrd, Integer layoutID, Integer positionID, 
-                       Date valueDateFrom, Date valueDateTo, Session sess, 
-                       Integer modifyingTimelineId) {
+                       Integer panelOrd, 
+                       Integer layoutID, 
+                       Integer positionID, 
+                       Date valueDateFrom, 
+                       Date valueDateTo, 
+                       Session sess, 
+                       Integer modifyingTimelineId) throws ExecuteException {
                
                Query query1 = sess.createQuery("from Timeline tl " +
                                "where tl.panel.id.planning = :panelPl " +
@@ -183,9 +195,13 @@
        
 
        public List<Timeline> getConflictingEndInside(Integer panelPl, 
-                       Integer panelOrd, Integer layoutID, Integer positionID,
-                       Date valueDateFrom,     Date valueDateTo, Session sess,
-                       Integer modifyingTimelineId) {
+                       Integer panelOrd, 
+                       Integer layoutID, 
+                       Integer positionID,
+                       Date valueDateFrom,     
+                       Date valueDateTo, 
+                       Session sess,
+                       Integer modifyingTimelineId) throws ExecuteException {
                
                Query query2 = sess.createQuery("from Timeline tl " +
                                "where tl.panel.id.planning = :panelPl " +
@@ -208,9 +224,13 @@
        
        
        public List<Timeline> getConflictingEmbrace(Integer panelPl,
-                       Integer panelOrd, Integer layoutID, Integer positionID, 
-                       Date valueDateFrom, Date valueDateTo, Session sess, 
-                       Integer modifyingTimelineId) {
+                       Integer panelOrd, 
+                       Integer layoutID, 
+                       Integer positionID, 
+                       Date valueDateFrom, 
+                       Date valueDateTo, 
+                       Session sess, 
+                       Integer modifyingTimelineId) throws ExecuteException{
                Query query3 = sess.createQuery("from Timeline tl " +
                                "where tl.panel.id.planning = :panelPl " +
                                "  and tl.panel.id.orderNum = :panelOrd " +
@@ -232,9 +252,16 @@
 
        
        public List<ValidationMessageHolder> store(String formName,
-                       Integer panelPl, Integer panelOrd, Integer layoutID, 
Integer positionID,
-                       Timeline oldTimeline, Date valueDateFrom, Date 
valueDateTo, Date now,
-                       FrameContent formValues) throws Exception {
+                       Integer panelPl, 
+                       Integer panelOrd, 
+                       Integer layoutID, 
+                       Integer positionID,
+                       Timeline oldTimeline, 
+                       Date valueDateFrom, 
+                       Date valueDateTo, 
+                       Date now,
+                       FrameContent formValues,
+                       User modifyingUser) throws ExecuteException {
                
                // validation
                List<ValidationMessageHolder> messages = validate(formName,
@@ -259,8 +286,6 @@
                        Timeline timeline = new Timeline();
                        timeline.setFrameContent(formValues);
                        timeline.setId(formValues.getId());
-                       // TODO taby
-                       //timeline.setElvys(elvys);
                        
                        Panel panel = cbl.getPanelById(panelPl, panelOrd, sess);
                        
@@ -271,6 +296,8 @@
                        timeline.setLayoutPos(positionID.byteValue());
                        timeline.setShowStart(valueDateFrom);
                        timeline.setShowEnd(valueDateTo);
+                       timeline.setUser(modifyingUser);
+                       timeline.setModified(new Date());
                        try {
                                sess.save(timeline);
                                tx.commit();
@@ -299,6 +326,8 @@
                                oldTimeline.setFrameContent(formValues);
                                oldTimeline.setShowStart(valueDateFrom);
                                oldTimeline.setShowEnd(valueDateTo);
+                               oldTimeline.setUser(modifyingUser);
+                               oldTimeline.setModified(new Date());
                                sess.update(oldTimeline);
                                
                                // TODO do db udelat nejaky trigger. nebo aspon 
zacistovaci metodu, ktera to po ulozeni jeste jednou projede a kdyztak smaze 
vlozeny Timeline
@@ -315,6 +344,4 @@
                return emptyList;
        }
        
-       
-       
 }

Modified: 
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/planning/impl/PlanningModalDocumentBLImpl.java
===================================================================
--- 
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/planning/impl/PlanningModalDocumentBLImpl.java
     2010-02-14 16:04:59 UTC (rev 1722)
+++ 
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/planning/impl/PlanningModalDocumentBLImpl.java
     2010-02-14 16:06:15 UTC (rev 1723)
@@ -7,8 +7,12 @@
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
+import cz.elvys.commons.utils.CommonUtils;
+import cz.elvys.webServer.HIBgen.Document;
 import cz.elvys.webServer.HIBgen.DocumentContent;
+import cz.elvys.webServer.HIBgen.File;
 import cz.elvys.webServer.HIBgen.FrameContent;
+import cz.elvys.webServer.toSpring.exception.ExecuteException;
 import cz.elvys.webServer.toSpring.planning.api.PlanningModalSpecBL;
 import cz.elvys.webServer.utils.type.ValidationMessageHolder;
 
@@ -22,25 +26,35 @@
        private static final String ERROR_CATCH_DocPlanningPagePreviewField = 
"DocPlanningPagePreviewField_input";
        private static final String 
ERROR_MESSAGEREF_DocPlanningPagePreviewField = 
"elvys.plan.modal.document.badpreviewnum";
        
+       // messages
+       private static final String ERROR_BAD_FILE_TYPE = "Bad file type"; 
        
        public List<ValidationMessageHolder> validate(
-                       FrameContent formValues, String formName) {
+                       FrameContent formValues, String formName) throws 
ExecuteException {
 
                DocumentContent content = (DocumentContent) formValues;
                List<ValidationMessageHolder> messages = new 
ArrayList<ValidationMessageHolder>();
                
                
                // validate PRESENCE
-               if (content.getDocument() == null) {
+               if (content.getFile() == null) {
                        ValidationMessageHolder message = new 
ValidationMessageHolder();
                        
message.setMessageRef(ERROR_MESSAGEREF_ChosenDocumentName);
                        message.setComponentId(formName + ":" + 
ERROR_CATCH_ChosenDocumentName);
                        messages.add(message);
                }
 
-               if (content.getDocument() != null) {
-
-
+               if (content.getFile() != null) {
+                       File file = content.getFile();
+                       if (!(file instanceof Document)) {
+                               String message = 
CommonUtils.prepareErrorMessage(
+                                       ERROR_BAD_FILE_TYPE, "name", 
file.getOrigName(), "hash", file.getHashcode(), "fileType", 
file.getFileType().getType());
+                               throw new ExecuteException(message);
+                       }
+                       Document doc = (Document)file;
+                       int pageCount = doc.getPageCount(); 
+                       
+                       
                        // validate PAGES-LIST
                        boolean pageListOK = true;
                        List<int[]> bounds = new LinkedList<int[]>();
@@ -60,7 +74,7 @@
                                        if (isType1) {
                                                // SIMPLE for example: 5 or 12 
or 18
                                                int value = 
Integer.parseInt(pagesSpec);
-                                               if (lastOne < value) {
+                                               if (value <= pageCount && 
lastOne < value) {
                                                        lastOne = value;
                                                } else {
                                                        pageListOK = false;
@@ -73,7 +87,7 @@
                                                // COMPLEX for example: 10-12 
or 15-28
                                                int value1 = 
Integer.parseInt(pagesSpec.substring(0,pagesSpec.indexOf('-')));
                                                int value2 = 
Integer.parseInt(pagesSpec.substring(pagesSpec.indexOf('-')+1));
-                                               if (value1 <= value2 && lastOne 
< value1 && value2 <= content.getDocument().getPageCount()) {
+                                               if (value1 <= value2 && lastOne 
< value1 && value2 <= pageCount) {
                                                        lastOne = value2;
                                                } else {
                                                        pageListOK = false;

Modified: 
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/planning/impl/PlanningModalVideoBLImpl.java
===================================================================
--- 
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/planning/impl/PlanningModalVideoBLImpl.java
        2010-02-14 16:04:59 UTC (rev 1722)
+++ 
trunk/server/webServer2/SpringSource/cz/elvys/webServer/toSpring/planning/impl/PlanningModalVideoBLImpl.java
        2010-02-14 16:06:15 UTC (rev 1723)
@@ -1,13 +1,8 @@
 package cz.elvys.webServer.toSpring.planning.impl;
 
 import java.util.ArrayList;
-import java.util.LinkedList;
 import java.util.List;
-import java.util.StringTokenizer;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
 
-import cz.elvys.webServer.HIBgen.DocumentContent;
 import cz.elvys.webServer.HIBgen.FrameContent;
 import cz.elvys.webServer.HIBgen.VideoContent;
 import cz.elvys.webServer.toSpring.planning.api.PlanningModalSpecBL;
@@ -28,13 +23,13 @@
                
                
                // validate PRESENCE
-               if (content.getVideo() == null) {
+               if (content.getFile() == null) {
                        ValidationMessageHolder message = new 
ValidationMessageHolder();
                        
message.setMessageRef(ERROR_MESSAGEREF_ChosenDocumentName);
                        message.setComponentId(formName + ":" + 
ERROR_CATCH_ChosenDocumentName);
                        messages.add(message);
                }
-
+               
                return messages;
        }
 }

Modified: trunk/server/webServer2/WebContent/WEB-INF/elvystags.xml
===================================================================
--- trunk/server/webServer2/WebContent/WEB-INF/elvystags.xml    2010-02-14 
16:04:59 UTC (rev 1722)
+++ trunk/server/webServer2/WebContent/WEB-INF/elvystags.xml    2010-02-14 
16:06:15 UTC (rev 1723)
@@ -31,6 +31,10 @@
                
<source>../secured/components/timeSpinnerComponent.xhtml</source>
        </tag>
        <tag>
+               <tag-name>userLabel</tag-name>
+               
<source>../secured/components/user/userLabelComponent.xhtml</source>
+       </tag>
+       <tag>
                <tag-name>fileListComponent</tag-name>
                <source>../secured/plug/file-choose.xhtml</source>
        </tag>

Added: 
trunk/server/webServer2/WebContent/js/components/layout/layoutListComponent.js
===================================================================
Added: 
trunk/server/webServer2/WebContent/js/components/user/userLabelComponent.js
===================================================================
Modified: 
trunk/server/webServer2/WebContent/secured/components/layoutListComponent.xhtml
===================================================================
--- 
trunk/server/webServer2/WebContent/secured/components/layoutListComponent.xhtml 
    2010-02-14 16:04:59 UTC (rev 1722)
+++ 
trunk/server/webServer2/WebContent/secured/components/layoutListComponent.xhtml 
    2010-02-14 16:06:15 UTC (rev 1723)
@@ -34,15 +34,12 @@
  |- target1
  |- toRerender1
  |- chListenerTooltip1
- |- columnLabel1
  |
  | -||- for #2
  
 ======== remaining are NOT WORKING 
        
        
-       
-       
  | setLayoutValueBinding
  |             value binding for store selected layout to it
  |             if empty, select button won't be generated
@@ -58,6 +55,12 @@
 - layoutPreviewComponent
 
  -->
+ 
+ 
+<a4j:loadStyle src="/styles/components/layout/layoutListComponent.css"/>
+<script type="text/javascript" language="javascript" 
src="/webServer2/js/components/layout/layoutListComponent.js"/> 
+ 
+ 
        <elvys:layoutListInitTagHandler 
                companyID="#{companyID}" 
                notSelectLayouts="#{notSelectLayouts}"
@@ -80,6 +83,24 @@
                                        <f:facet 
name="header">#{lbl['layout.list.numposition']}</f:facet>
                                        <h:outputText 
value="#{layout.sectCount}" />
                                </h:column>
+                               <h:column>
+                                       <f:facet 
name="header">#{lbl['layout.list.modified']}</f:facet>
+                                       <h:outputText 
value="#{layout.modified}" >
+                                               <f:convertDateTime 
pattern="dd.MM.yyyy HH:mm" timeZone="#{user.defaultTimezone}" type="both" 
timeStyle="short"/>
+                                       </h:outputText>
+                                       <br/>
+                                       <elvys:userLabel id="usrLbl" 
value="#{layout.userByModifiedBy}"/>
+                               </h:column>
+                               <h:column>
+                                       <f:facet 
name="header">#{lbl['layout.list.revision']}</f:facet>
+                                       <h:outputText 
value="#{layout.revision}" />
+                               </h:column>
+                               <h:column>
+                                       <f:facet 
name="header">#{lbl['layout.list.created']}</f:facet>
+                                       <h:outputText value="#{layout.created}" 
>
+                                               <f:convertDateTime 
pattern="dd.MM.yyyy HH:mm" timeZone="#{user.defaultTimezone}" type="both" 
timeStyle="short"/>
+                                       </h:outputText>
+                               </h:column>
                                <!-- SHOW IMAGE BUTTON -->
                                <h:column rendered="#{showSchema == true}">
                                        <f:facet 
name="header">#{lbl['layout.list.preview']}</f:facet>
@@ -95,70 +116,78 @@
                                        <rich:toolTip for="ShowLayoutImgButton"
                                                
value="#{lbl['layout.list.previewtooltip']}" />
                                </h:column>
-                               <!-- FIRE LISTENER 1 -->
-                               <h:column rendered="#{not empty 
chooseListener1}">
-                                       <f:facet 
name="header">#{columnLabel1}</f:facet>
-                                       <a4j:commandButton id="ChooseButton1"
-                                               image="/images/icons/select.png"
-                                               reRender="#{toRerender1}">
-                                               <f:setPropertyActionListener 
value="#{layout}"
-                                               target="#{target1}" />
-                                               <f:setPropertyActionListener 
value="#{chooseListener1}"
-                                               
target="#{layoutListComponentBean.chooseListener1}"/>
-                                               <f:actionListener 
type="cz.elvys.webServer.component.layoutrel.LayoutListComponentBean$doAction1ActionListener"
 />
-                                       </a4j:commandButton>
-                                       <rich:toolTip for="ChooseButton1"
-                                               value="#{chListenerTooltip1}"
-                                               direction="top-left" 
styleClass="short_tooltip" />
+                               
+                               <!-- EDIT AND DELETE LAYOUT -->
+                               <h:column>
+                                       <f:facet 
name="header">#{lbl['layout.list.operations']}</f:facet>
+                                       <!-- FIRE LISTENER 1 -->
+                                       <div class="l-op-main">
+                                               <h:panelGroup 
styleClass="l-op-item"
+                                                       rendered="#{not empty 
chooseListener1}">
+                                                       <a4j:commandButton 
id="ChooseButton1"
+                                                               
image="/images/icons/select.png"
+                                                               
reRender="#{toRerender1}">
+                                                               
<f:setPropertyActionListener value="#{layout}"
+                                                               
target="#{target1}" />
+                                                               
<f:setPropertyActionListener value="#{chooseListener1}"
+                                                               
target="#{layoutListComponentBean.chooseListener1}"/>
+                                                               
<f:actionListener 
type="cz.elvys.webServer.component.layoutrel.LayoutListComponentBean$doAction1ActionListener"
 />
+                                                       </a4j:commandButton>
+                                                       <rich:toolTip 
for="ChooseButton1"
+                                                               
value="#{chListenerTooltip1}"
+                                                               
direction="top-left" styleClass="short_tooltip" />
+                                               </h:panelGroup>
+                                               <!-- FIRE LISTENER 2 -->
+                                               <h:panelGroup 
styleClass="l-op-item"
+                                                       rendered="#{not empty 
chooseListener2}">
+                                                       <a4j:commandButton 
id="ChooseButton2"
+                                                               
image="/images/icons/select.png"
+                                                               
reRender="#{toRerender2}">
+                                                               
<f:setPropertyActionListener value="#{layout}"
+                                                               
target="#{target2}" />
+                                                               
<f:setPropertyActionListener value="#{chooseListener2}"
+                                                               
target="#{layoutListComponentBean.chooseListener2}"/>
+                                                               
<f:actionListener 
type="cz.elvys.webServer.component.layoutrel.LayoutListComponentBean$doAction2ActionListener"
 />
+                                                       </a4j:commandButton>
+                                                       <rich:toolTip 
for="ChooseButton2"
+                                                               
value="#{chListenerTooltip2}"
+                                                               
direction="top-left" styleClass="short_tooltip" />
+                                               </h:panelGroup>
+                                               <!-- EDIT -->
+                                               <h:panelGroup 
styleClass="l-op-item"
+                                                       rendered="#{showEdit}">
+                                                       <a4j:commandButton 
id="EditLayoutButton"
+                                                               
image="/images/icons/edit.png"
+                                                               
oncomplete="showLayoutEditor(this)"
+                                                               
reRender="#{id}">
+                                                               
<f:setPropertyActionListener value="#{layout}"
+                                                                       
target="#{layoutEditBean.layoutToEdit}" />
+                                                               
<f:actionListener 
type="cz.elvys.webServer.beans.layoutrel.LayoutEditBean$StartEditingLayoutListener"/>
+                                                       </a4j:commandButton>
+                                                       <rich:toolTip 
for="EditLayoutButton"
+                                                               
value="#{lbl['layout.list.editlayouttooltip']}"
+                                                               
direction="top-left" styleClass="short_tooltip" />
+                                               </h:panelGroup>
+                                               <!-- DELETE -->
+                                               <h:panelGroup 
styleClass="l-op-item"
+                                                       rendered="#{showDelete 
== true}">
+                                                       <a4j:commandButton 
+                                                               
id="DeleteLayoutButton"
+                                                               
image="/images/icons/delete.gif"
+                                                               
reRender="DeleteLayoutForm"
+                                                               
onclick="Richfaces.showModalPanel('DeleteLayoutModal',{left:300, top:300})">
+                                                               
<f:setPropertyActionListener value="#{layout.id}"
+                                                                       
target="#{layoutListComponentBean.layoutId}" />
+                                                               
<f:setPropertyActionListener value="#{layout.name}"
+                                                                       
target="#{layoutListComponentBean.layoutName}" />
+                                                       </a4j:commandButton>
+                                                       <rich:toolTip 
for="DeleteLayoutButton"
+                                                               
value="#{lbl['layout.list.deletelayouttooltip']}"
+                                                               
direction="top-left" styleClass="short_tooltip" />
+                                               </h:panelGroup>
+                                       </div>
                                </h:column>
-                               <!-- FIRE LISTENER 2 -->
-                               <h:column rendered="#{not empty 
chooseListener2}">
-                                       <f:facet 
name="header">#{columnLabel2}</f:facet>
-                                       <a4j:commandButton id="ChooseButton2"
-                                               image="/images/icons/select.png"
-                                               reRender="#{toRerender2}">
-                                               <f:setPropertyActionListener 
value="#{layout}"
-                                               target="#{target2}" />
-                                               <f:setPropertyActionListener 
value="#{chooseListener2}"
-                                               
target="#{layoutListComponentBean.chooseListener2}"/>
-                                               <f:actionListener 
type="cz.elvys.webServer.component.layoutrel.LayoutListComponentBean$doAction2ActionListener"
 />
-                                       </a4j:commandButton>
-                                       <rich:toolTip for="ChooseButton2"
-                                               value="#{chListenerTooltip2}"
-                                               direction="top-left" 
styleClass="short_tooltip" />
-                               </h:column>
-                               <!-- EDIT LAYOUT -->
-                               <h:column rendered="#{showEdit}">
-                                       <f:facet 
name="header">#{lbl['layout.list.editlayout']}</f:facet>
-                                       <a4j:commandButton id="EditLayoutButton"
-                                               image="/images/icons/edit.png"
-                                               
oncomplete="showLayoutEditor(this)"
-                                               reRender="#{id}">
-                                               <f:setPropertyActionListener 
value="#{layout}"
-                                                       
target="#{layoutEditBean.layoutToEdit}" />
-                                               <f:actionListener 
type="cz.elvys.webServer.beans.layoutrel.LayoutEditBean$StartEditingLayoutListener"/>
-                                       </a4j:commandButton>
-                                       <rich:toolTip for="EditLayoutButton"
-                                               
value="#{lbl['layout.list.editlayouttooltip']}"
-                                               direction="top-left" 
styleClass="short_tooltip" />
-                               </h:column>
-                               <!-- DELETE LAYOUT -->
-                               <h:column rendered="#{showDelete == true}">
-                                       <f:facet 
name="header">#{lbl['layout.list.deletelayout']}</f:facet>
-                                       <a4j:commandButton 
-                                               id="DeleteLayoutButton"
-                                               image="/images/icons/delete.gif"
-                                               reRender="DeleteLayoutForm"
-                                               
onclick="Richfaces.showModalPanel('DeleteLayoutModal',{left:300, top:300})">
-                                               <f:setPropertyActionListener 
value="#{layout.id}"
-                                                       
target="#{layoutListComponentBean.layoutId}" />
-                                               <f:setPropertyActionListener 
value="#{layout.name}"
-                                                       
target="#{layoutListComponentBean.layoutName}" />
-                                       </a4j:commandButton>
-                                       <rich:toolTip for="DeleteLayoutButton"
-                                               
value="#{lbl['layout.list.deletelayouttooltip']}"
-                                               direction="top-left" 
styleClass="short_tooltip" />
-                               </h:column>
+                               <!-- FOOTER -->
                                <f:facet name="footer">
                                        <rich:datascroller 
renderIfSinglePage="false" for="#{id}"
                                                ajaxSingle="true" 
immediate="true" />
@@ -186,7 +215,7 @@
                <!-- hidden refresh link -->
                <h:commandButton id="LayoutListComponentRefreshHiddenLink" 
                        image="/images/clearpixel.gif" 
-                       actionListener="#{layoutEditBean.reload}"
+                       actionListener="#{layoutListBean.reload}"
                        style="border: 0px;"
                        alt="refresh"
                        reRender="LayoutListForm" />

Modified: 
trunk/server/webServer2/WebContent/secured/components/layoutSelectAndCloseComp.xhtml
===================================================================
--- 
trunk/server/webServer2/WebContent/secured/components/layoutSelectAndCloseComp.xhtml
        2010-02-14 16:04:59 UTC (rev 1722)
+++ 
trunk/server/webServer2/WebContent/secured/components/layoutSelectAndCloseComp.xhtml
        2010-02-14 16:06:15 UTC (rev 1723)
@@ -91,9 +91,7 @@
                                
chooseListener1="layoutSelectAndCloseCompBean.doActionsOnClose"
                                target1="#{target}"
                                toRerender1="#{modalWinContentId}"
-                               
chListenerTooltip1="#{lbl['layout.modalselectcomp.list.select.tooltip']}"
-                               
columnLabel1="#{lbl['layout.modalselectcomp.list.select']}"
-                               />
+                               
chListenerTooltip1="#{lbl['layout.modalselectcomp.list.select.tooltip']}"/>
                        </h:panelGroup>
                </h:panelGroup>
        </rich:panel>

Added: 
trunk/server/webServer2/WebContent/secured/components/user/userLabelComponent.xhtml
===================================================================
--- 
trunk/server/webServer2/WebContent/secured/components/user/userLabelComponent.xhtml
                         (rev 0)
+++ 
trunk/server/webServer2/WebContent/secured/components/user/userLabelComponent.xhtml
 2010-02-14 16:06:15 UTC (rev 1723)
@@ -0,0 +1,39 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
+<ui:component xmlns="http://www.w3.org/1999/xhtml";
+       xmlns:h="http://java.sun.com/jsf/html";
+       xmlns:f="http://java.sun.com/jsf/core";
+       xmlns:ui="http://java.sun.com/jsf/facelets";
+       xmlns:a4j="http://richfaces.org/a4j";
+       xmlns:rich="http://richfaces.org/rich";>
+
+<!-- PROTOCOL
+INPUT:
+ |     -id (REQUIRED):
+ |             id of the component
+ |     -value (REQUIRED):
+ |             cz.elvys.webServer.HIBgen.User value binding 
+ -->   
+
+
+<a4j:loadStyle src="/styles/components/user/userLabelComponent.css"/>
+<script type="text/javascript" language="javascript" 
src="/webServer2/js/components/user/userLabelComponent.js"/>
+
+<!-- BAD CONTRACT -->
+<h:panelGroup
+       rendered="#{empty id 
+               or empty value}">
+       <h:outputText value="BAD CONTRACT" styleClass="error"/>
+</h:panelGroup>
+
+<!-- USER LABEL -->
+<h:panelGroup id="#{id}"
+       rendered="#{not empty id 
+               and not empty value}">
+       <b>
+       <h:outputText 
+               value="#{value.realname} #{value.surname}"/>
+       </b>
+       (<h:outputText value="#{value.username}"/>)
+</h:panelGroup>
+
+</ui:component>
\ No newline at end of file

Modified: 
trunk/server/webServer2/WebContent/secured/elvysrel/planDocuments.xhtml
===================================================================
--- trunk/server/webServer2/WebContent/secured/elvysrel/planDocuments.xhtml     
2010-02-14 16:04:59 UTC (rev 1722)
+++ trunk/server/webServer2/WebContent/secured/elvysrel/planDocuments.xhtml     
2010-02-14 16:06:15 UTC (rev 1723)
@@ -239,9 +239,13 @@
                                                                        
</a4j:commandLink>
                                                                        
<rich:toolTip id="TT" for="VR" rendered="#{rect.frameContent == null}"
                                                                                
followMouse="true" direction="bottom-right" showDelay="100">
-                                                                               
<h:outputText value="#{lbl['elvys.plan.component.tooltip.vacant']}"/><br/>
-                                                                               
<h:outputText value="#{lbl['elvys.plan.component.tooltip.vacant.from']} 
#{rect.realFromText}"/><br/>
-                                                                               
<h:outputText value="#{lbl['elvys.plan.component.tooltip.vacant.to']} 
#{rect.realToText}"/>
+                                                                               
<div class="tt-all">
+                                                                               
        <div class="tt-l">
+                                                                               
                <h:outputText 
value="#{lbl['elvys.plan.component.tooltip.vacant']}"/><br/>
+                                                                               
                <h:outputText 
value="#{lbl['elvys.plan.component.tooltip.vacant.from']} 
#{rect.realFromText}"/><br/>
+                                                                               
                <h:outputText 
value="#{lbl['elvys.plan.component.tooltip.vacant.to']} #{rect.realToText}"/>
+                                                                               
        </div>
+                                                                               
</div>
                                                                                
<h:panelGroup id="VPR"></h:panelGroup>
                                                                        
</rich:toolTip>
                                                                        
<a4j:commandLink
@@ -259,31 +263,44 @@
                                                                            
<f:actionListener 
type="cz.elvys.webServer.beans.planningrel.PlanningModalBean$PrepareFormActionListener"
 />
                                                                        
</a4j:commandLink>
                                                                        
<rich:toolTip id="TTOR" for="OR" rendered="#{rect.frameContent != null}"
-                                                                               
followMouse="true" direction="bottom-right" showDelay="100">
-                                                                               
<h:panelGroup rendered="#{rect.frameContent.contentType.type=='document'}">
-                                                                               
        <ui:include src="/secured/plug/planningModalDocumentTooltip.xhtml"/>
-                                                                               
        <br/>
-                                                                               
</h:panelGroup>
-                                                                               
<h:panelGroup rendered="#{rect.frameContent.contentType.type=='url'}">
-                                                                               
        <ui:include src="/secured/plug/planningModalUrlTooltip.xhtml"/>
-                                                                               
        <br/>
-                                                                               
</h:panelGroup>
-                                                                               
<h:panelGroup rendered="#{rect.frameContent.contentType.type=='text'}">
-                                                                               
        <ui:include src="/secured/plug/planningModalTextTooltip.xhtml"/>
-                                                                               
        <br/>
-                                                                               
</h:panelGroup>
-                                                                               
<h:panelGroup rendered="#{rect.frameContent.contentType.type=='dynamic'}">
-                                                                               
        <ui:include src="/secured/plug/planningModalDynamicTooltip.xhtml"/>
-                                                                               
        <br/>
-                                                                               
</h:panelGroup>
-                                                                               
<h:panelGroup rendered="#{rect.frameContent.contentType.type=='video'}">
-                                                                               
        <ui:include src="/secured/plug/planningModalVideoTooltip.xhtml"/>
-                                                                               
        <br/>
-                                                                               
</h:panelGroup>
-                                                                               
<h:outputText value="#{lbl['elvys.plan.component.tooltip.occupied.from']}: 
#{rect.realFromText}"/>
-                                                                               
<br/>
-                                                                               
<h:outputText value="#{lbl['elvys.plan.component.tooltip.occupied.to']}: 
#{rect.realToText}"/>
-                                                                               
<h:panelGroup id="OPR"></h:panelGroup>
+                                                                               
followMouse="true" direction="bottom-right" showDelay="50">
+                                                                               
<div class="tt-all">
+                                                                               
        <div class="tt-l">
+                                                                               
                <h:panelGroup 
rendered="#{rect.frameContent.contentType.type=='document'}">
+                                                                               
                        <ui:include 
src="/secured/plug/planningModalDocumentTooltip.xhtml"/>
+                                                                               
                        <br/>
+                                                                               
                </h:panelGroup>
+                                                                               
                <h:panelGroup 
rendered="#{rect.frameContent.contentType.type=='url'}">
+                                                                               
                        <ui:include 
src="/secured/plug/planningModalUrlTooltip.xhtml"/>
+                                                                               
                        <br/>
+                                                                               
                </h:panelGroup>
+                                                                               
                <h:panelGroup 
rendered="#{rect.frameContent.contentType.type=='text'}">
+                                                                               
                        <ui:include 
src="/secured/plug/planningModalTextTooltip.xhtml"/>
+                                                                               
                        <br/>
+                                                                               
                </h:panelGroup>
+                                                                               
                <h:panelGroup 
rendered="#{rect.frameContent.contentType.type=='dynamic'}">
+                                                                               
                        <ui:include 
src="/secured/plug/planningModalDynamicTooltip.xhtml"/>
+                                                                               
                        <br/>
+                                                                               
                </h:panelGroup>
+                                                                               
                <h:panelGroup 
rendered="#{rect.frameContent.contentType.type=='video'}">
+                                                                               
                        <ui:include 
src="/secured/plug/planningModalVideoTooltip.xhtml"/>
+                                                                               
                        <br/>
+                                                                               
                </h:panelGroup>
+                                                                               
                <h:outputText 
value="#{lbl['elvys.plan.component.tooltip.occupied.from']}: 
#{rect.realFromText}"/>
+                                                                               
                <br/>
+                                                                               
                <h:outputText 
value="#{lbl['elvys.plan.component.tooltip.occupied.to']}: #{rect.realToText}"/>
+                                                                               
        </div>
+                                                                               
        <div class="tt-r">
+                                                                               
                <h:outputText 
value="#{lbl['elvys.plan.component.tooltip.lastmodified']}:"/>
+                                                                               
                <br/>
+                                                                               
                <elvys:userLabel id="usrLbl" value="#{rect.lastModifiedUser}"/>
+                                                                               
                <br/>
+                                                                               
                (<h:outputText value="#{rect.lastModificationDate}">
+                                                                               
                        <f:convertDateTime dateStyle="short" 
timeZone="#{user.defaultTimezone}" pattern="dd.MM.yyyy HH:mm" type="both"/>
+                                                                               
                 </h:outputText>)
+                                                                               
        </div>
+                                                                               
</div>
+                                                                               
<h:panelGroup id="OPR"/>
                                                                        
</rich:toolTip>
                                                                </span>
                                                        </ui:repeat>

Modified: 
trunk/server/webServer2/WebContent/secured/plug/planningModalDocument.xhtml
===================================================================
--- trunk/server/webServer2/WebContent/secured/plug/planningModalDocument.xhtml 
2010-02-14 16:04:59 UTC (rev 1722)
+++ trunk/server/webServer2/WebContent/secured/plug/planningModalDocument.xhtml 
2010-02-14 16:06:15 UTC (rev 1723)
@@ -11,12 +11,12 @@
                <h:outputLabel 
value="#{lbl['elvys.plan.modal.form.chosendocument']}: "></h:outputLabel>
                <h:outputLabel id="ChosenDocumentName"
                        style="font-weight: bold;" 
-                       
value="#{planningModalDocumentBean.formData.document.origName}" 
-                       rendered="#{not empty 
planningModalDocumentBean.formData.document}"/>
+                       
value="#{planningModalDocumentBean.formData.file.origName}" 
+                       rendered="#{not empty 
planningModalDocumentBean.formData.file}"/>
                <h:outputLabel id="ChosenDocumentNotPresent" 
                        style="font-weight: bold;" 
                        value="#{lbl['elvys.plan.modal.form.nochosendocument']} 
" 
-                       rendered="#{empty 
planningModalDocumentBean.formData.document}"/>
+                       rendered="#{empty 
planningModalDocumentBean.formData.file}"/>
                <a4j:outputPanel ajaxRendered="true">
                        <h:message id="ChosenDocumentError" 
for="ChosenDocumentName" styleClass="error"/>
                </a4j:outputPanel>
@@ -25,15 +25,15 @@
                <!-- page count -->
                <h:outputLabel 
                        
value="#{lbl['elvys.plan.modal.form.chosendocumentpagesnum']}: " 
-                       rendered="#{not empty 
planningModalDocumentBean.formData.document}"/>
+                       rendered="#{not empty 
planningModalDocumentBean.formData.file}"/>
                <h:outputLabel 
                        style="font-weight: bold;" 
-                       
value="#{planningModalDocumentBean.formData.document.pageCount}" 
-                       rendered="#{not empty 
planningModalDocumentBean.formData.document}"/>
+                       
value="#{planningModalDocumentBean.formData.file.pageCount}" 
+                       rendered="#{not empty 
planningModalDocumentBean.formData.file}"/>
                <br/>
                
                <!-- pages-list selector input -->
-               <h:panelGroup rendered="#{not empty 
planningModalDocumentBean.formData.document}">
+               <h:panelGroup rendered="#{not empty 
planningModalDocumentBean.formData.file}">
                        <elvys:inputText id="DocPlanningPageListField"
                                
label="#{lbl['elvys.plan.modal.form.chosendocumentpages']}"
                                
value="#{planningModalDocumentBean.formData.pageList}"
@@ -42,7 +42,7 @@
                <br/>
                
                <!-- preview page number -->
-               <h:panelGroup rendered="#{not empty 
planningModalDocumentBean.formData.document}">
+               <h:panelGroup rendered="#{not empty 
planningModalDocumentBean.formData.file}">
                        <elvys:inputText id="DocPlanningPagePreviewField"
                                
label="#{lbl['elvys.plan.modal.form.document.mainpage']}"
                                
value="#{planningModalDocumentBean.formData.numPreviewPage}"

Modified: 
trunk/server/webServer2/WebContent/secured/plug/planningModalDocumentInnerModal.xhtml
===================================================================
--- 
trunk/server/webServer2/WebContent/secured/plug/planningModalDocumentInnerModal.xhtml
       2010-02-14 16:04:59 UTC (rev 1722)
+++ 
trunk/server/webServer2/WebContent/secured/plug/planningModalDocumentInnerModal.xhtml
       2010-02-14 16:06:15 UTC (rev 1723)
@@ -11,7 +11,7 @@
        <h:panelGroup id="ModalModalForDocument">
                <elvys:fileListComponent
                        fileList="#{fileListComponentBean.fileList}"
-                       result="#{planningModalDocumentBean.formData.document}"
+                       result="#{planningModalDocumentBean.formData.file}"
                        
afterSelectionListener="planningModalDocumentBean.afterDocumentSelected"
                        
tableHeader="#{lbl['elvys.plan.modal.choosedocument.choosedocument']}"/>
        </h:panelGroup>

Modified: 
trunk/server/webServer2/WebContent/secured/plug/planningModalDocumentTooltip.xhtml
===================================================================
--- 
trunk/server/webServer2/WebContent/secured/plug/planningModalDocumentTooltip.xhtml
  2010-02-14 16:04:59 UTC (rev 1722)
+++ 
trunk/server/webServer2/WebContent/secured/plug/planningModalDocumentTooltip.xhtml
  2010-02-14 16:06:15 UTC (rev 1723)
@@ -10,5 +10,5 @@
                <!-- document text tooltip -->
                <h:outputText 
value="#{lbl['elvys.plan.component.tooltip.documenttype']}:"/> 
                <br/>
-               
<h:outputLabel><strong>#{rect.frameContent.document.origName}</strong></h:outputLabel>
+               
<h:outputLabel><strong>#{rect.frameContent.file.origName}</strong></h:outputLabel>
 </h:panelGroup>

Modified: 
trunk/server/webServer2/WebContent/secured/plug/planningModalVideo.xhtml
===================================================================
--- trunk/server/webServer2/WebContent/secured/plug/planningModalVideo.xhtml    
2010-02-14 16:04:59 UTC (rev 1722)
+++ trunk/server/webServer2/WebContent/secured/plug/planningModalVideo.xhtml    
2010-02-14 16:06:15 UTC (rev 1723)
@@ -11,12 +11,12 @@
                <h:outputLabel 
value="#{lbl['elvys.plan.modal.form.chosenvideo']}: "></h:outputLabel>
                <h:outputLabel id="ChosenVideoName"
                        style="font-weight: bold;" 
-                       
value="#{planningModalVideoBean.formData.video.origName}" 
-                       rendered="#{not empty 
planningModalVideoBean.formData.video}"/>
+                       
value="#{planningModalVideoBean.formData.file.origName}" 
+                       rendered="#{not empty 
planningModalVideoBean.formData.file}"/>
                <h:outputLabel id="ChosenVideoNotPresent" 
                        style="font-weight: bold;" 
                        value="#{lbl['elvys.plan.modal.form.nochosenvideo']} " 
-                       rendered="#{empty 
planningModalVideoBean.formData.video}"/>
+                       rendered="#{empty 
planningModalVideoBean.formData.file}"/>
                <a4j:outputPanel ajaxRendered="true">
                        <h:message id="ChosenVideoError" for="ChosenVideoName" 
styleClass="error"/>
                </a4j:outputPanel>
@@ -24,7 +24,7 @@
                
                
                <!-- starting position at milisecond -->
-               <h:panelGroup rendered="#{not empty 
planningModalVideoBean.formData.video}">
+               <h:panelGroup rendered="#{not empty 
planningModalVideoBean.formData.file}">
                        <!-- <elvys:inputText id="VideoPlanningStartPos"
                                
label="#{lbl['elvys.plan.modal.form.video.startat']}"
                                
value="#{planningModalVideoBean.formData.startPosMs}"

Modified: 
trunk/server/webServer2/WebContent/secured/plug/planningModalVideoInnerModal.xhtml
===================================================================
--- 
trunk/server/webServer2/WebContent/secured/plug/planningModalVideoInnerModal.xhtml
  2010-02-14 16:04:59 UTC (rev 1722)
+++ 
trunk/server/webServer2/WebContent/secured/plug/planningModalVideoInnerModal.xhtml
  2010-02-14 16:06:15 UTC (rev 1723)
@@ -11,7 +11,7 @@
        <h:panelGroup id="ModalModalForVideo">
                <elvys:fileListComponent
                        fileList="#{fileListComponentBean.fileList}"
-                       result="#{planningModalVideoBean.formData.video}"
+                       result="#{planningModalVideoBean.formData.file}"
                        
afterSelectionListener="planningModalVideoBean.afterVideoSelected"
                        
tableHeader="#{lbl['elvys.plan.modal.choosedocument.choosevideo']}"/>
        </h:panelGroup>

Modified: 
trunk/server/webServer2/WebContent/secured/plug/planningModalVideoTooltip.xhtml
===================================================================
--- 
trunk/server/webServer2/WebContent/secured/plug/planningModalVideoTooltip.xhtml 
    2010-02-14 16:04:59 UTC (rev 1722)
+++ 
trunk/server/webServer2/WebContent/secured/plug/planningModalVideoTooltip.xhtml 
    2010-02-14 16:06:15 UTC (rev 1723)
@@ -10,6 +10,6 @@
                <!-- video tooltip value -->
                <h:outputText 
value="#{lbl['elvys.plan.component.tooltip.videotype']}:"/> 
                <br/>
-               
<h:outputLabel><strong>#{rect.frameContent.video.origName}</strong></h:outputLabel>
+               
<h:outputLabel><strong>#{rect.frameContent.file.origName}</strong></h:outputLabel>
 
 </ui:composition>
\ No newline at end of file

Added: 
trunk/server/webServer2/WebContent/styles/components/layout/layoutListComponent.css
===================================================================
--- 
trunk/server/webServer2/WebContent/styles/components/layout/layoutListComponent.css
                         (rev 0)
+++ 
trunk/server/webServer2/WebContent/styles/components/layout/layoutListComponent.css
 2010-02-14 16:06:15 UTC (rev 1723)
@@ -0,0 +1,8 @@
+.l-op-main {
+       text-align: right;      
+}
+
+.l-op-item {
+       margin-right: 5px;
+       
+}
\ No newline at end of file

Added: 
trunk/server/webServer2/WebContent/styles/components/user/layoutListComponent.css
===================================================================
Modified: trunk/server/webServer2/WebContent/styles/planning/planDocuments.css
===================================================================
--- trunk/server/webServer2/WebContent/styles/planning/planDocuments.css        
2010-02-14 16:04:59 UTC (rev 1722)
+++ trunk/server/webServer2/WebContent/styles/planning/planDocuments.css        
2010-02-14 16:06:15 UTC (rev 1723)
@@ -73,12 +73,31 @@
 .layout-preview-main {
 }
 
+/* for planning tooltips  */
+.tt-all {
+       display: block;
+       overflow: auto;
+       width: 100%;
+       margin-bottom: 10px;
+}
 
+.tt-l {
+       float: left;
+       width: 66%;
+       text-align: left;
+}
 
+.tt-r {
+       float: right;
+       widht: 33%;
+       text-align: right;
+}
 
 
 
 
+
+
 /* rectangles */
 .rectangle_outer {padding-bottom:1px; float:left; }
 .rectangle { height: 20px; border:1px solid #000000; display:block; 
overflow:hidden; text-align:center;}


Other related posts:

  • » [elvystrac] r1723 - DB changed - version 25 (part.4): - elvys