JBoss Rich Faces SVN: r12733 - in trunk/test-applications/realworld2: ear and 73 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: amarkhel
Date: 2009-02-24 13:12:08 -0500 (Tue, 24 Feb 2009)
New Revision: 12733
Added:
trunk/test-applications/realworld2/ear/
trunk/test-applications/realworld2/ear/pom.xml
trunk/test-applications/realworld2/ear/src/
trunk/test-applications/realworld2/ear/src/main/
trunk/test-applications/realworld2/ear/src/main/application/
trunk/test-applications/realworld2/ear/src/main/jboss-app.xml
trunk/test-applications/realworld2/ejb/
trunk/test-applications/realworld2/ejb/META-INF/
trunk/test-applications/realworld2/ejb/META-INF/MANIFEST.MF
trunk/test-applications/realworld2/ejb/pom.xml
trunk/test-applications/realworld2/ejb/src/
trunk/test-applications/realworld2/ejb/src/main/
trunk/test-applications/realworld2/ejb/src/main/java/
trunk/test-applications/realworld2/ejb/src/main/java/org/
trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/
trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/
trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/
trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/Album.java
trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/Comment.java
trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/Image.java
trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/MetaTag.java
trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/Shelf.java
trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/User.java
trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/
trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/AlbumAction.java
trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/Constants.java
trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/IAlbumAction.java
trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/IImageAction.java
trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/IShelfAction.java
trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/IUserAction.java
trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/ImageAction.java
trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/ShelfAction.java
trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/UserAction.java
trunk/test-applications/realworld2/ejb/src/main/resources/
trunk/test-applications/realworld2/ejb/src/main/resources/META-INF/
trunk/test-applications/realworld2/ejb/src/main/resources/META-INF/ejb-jar.xml
trunk/test-applications/realworld2/ejb/src/main/resources/META-INF/persistence.xml
trunk/test-applications/realworld2/ejb/src/main/resources/components.properties
trunk/test-applications/realworld2/ejb/src/main/resources/import.sql
trunk/test-applications/realworld2/ejb/src/main/resources/realworld-ds.xml
trunk/test-applications/realworld2/ejb/src/main/resources/seam.properties
trunk/test-applications/realworld2/pom.xml
trunk/test-applications/realworld2/web/
trunk/test-applications/realworld2/web/META-INF/
trunk/test-applications/realworld2/web/META-INF/MANIFEST.MF
trunk/test-applications/realworld2/web/pom.xml
trunk/test-applications/realworld2/web/src/
trunk/test-applications/realworld2/web/src/main/
trunk/test-applications/realworld2/web/src/main/java/
trunk/test-applications/realworld2/web/src/main/java/org/
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/error/
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/error/ErrorHandlerBean.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileItem.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileManager.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileManagerTest.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileUploadBean.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileWrapper.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/ImageLoader.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/listener/
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/listener/CopyFile.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/listener/CopyImagesStuff.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/AlbumManager.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/Authenticator.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/DnDManager.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/ImageManager.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/ShelfManager.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/UserManager.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/AlbumPopupHelper.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/ConfirmationPopupHelper.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/ImagePopupHelper.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/LinkBuilder.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/test.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/navigation/
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/navigation/NavigationEnum.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/navigation/NavigationHelper.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/servlet/
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/servlet/PictureServlet.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/servlet/WebUtil.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/slideshow/
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/slideshow/SlideshowBean.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/slideshow/SlideshowHelper.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/tree/
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/tree/TreeAlbumItem.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/tree/TreeRootItem.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/tree/TreeShelfItem.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/ui/
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/ui/EditorBean.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/ui/PasswordHolder.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/ui/TagList.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/util/
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/util/ConversationState.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/util/ImageUtils.java
trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/util/RenderLogic.java
trunk/test-applications/realworld2/web/src/main/resources/
trunk/test-applications/realworld2/web/src/main/resources/messages_en.properties
trunk/test-applications/realworld2/web/src/main/resources/messages_ru.properties
trunk/test-applications/realworld2/web/src/main/resources/org/
trunk/test-applications/realworld2/web/src/main/resources/org/richfaces/
trunk/test-applications/realworld2/web/src/main/resources/org/richfaces/realworld/
trunk/test-applications/realworld2/web/src/main/resources/org/richfaces/realworld/editor/
trunk/test-applications/realworld2/web/src/main/resources/org/richfaces/realworld/editor/advanced.properties
trunk/test-applications/realworld2/web/src/main/resources/seam.properties
trunk/test-applications/realworld2/web/src/main/webapp/
trunk/test-applications/realworld2/web/src/main/webapp/META-INF/
trunk/test-applications/realworld2/web/src/main/webapp/META-INF/MANIFEST.MF
trunk/test-applications/realworld2/web/src/main/webapp/META-INF/skins/
trunk/test-applications/realworld2/web/src/main/webapp/META-INF/skins/realworld.skin.properties
trunk/test-applications/realworld2/web/src/main/webapp/Thumbs.db
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/Thumbs.db
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (1).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (1)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (1)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (10).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (10)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (10)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (11).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (11)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (11)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (12).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (12)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (12)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (13).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (13)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (13)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (14).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (14)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (14)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (15).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (15)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (15)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (16).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (16)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (16)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (2).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (2)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (2)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (3).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (3)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (3)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (4).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (4)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (4)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (5).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (5)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (5)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (6).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (6)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (6)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (7).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (7)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (7)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (8).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (8)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (8)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (9).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (9)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (9)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/Re4ka.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/Re4ka_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/Re4ka_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/Thumbs.db
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/korana.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/korana2.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/korana2_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/korana2_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/korana_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/korana_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river10.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river10_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river10_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river11.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river11_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river11_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river12.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river12_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river12_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river13.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river13_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river13_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river2.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river2_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river2_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river3.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river3_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river3_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river4.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river4_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river4_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river5.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river5_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river5_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river6.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river6_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river6_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river7.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river7_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river7_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river8.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river8_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river8_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river9.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river9_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river9_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river_and_torrents.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river_and_torrents_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river_and_torrents_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/Thumbs.db
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (1).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (1)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (1)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (10).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (10)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (10)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (11).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (11)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (11)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (12).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (12)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (12)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (13).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (13)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (13)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (14).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (14)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (14)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (15).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (15)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (15)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (16).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (16)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (16)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (17).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (17)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (17)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (2).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (2)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (2)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (3).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (3)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (3)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (4).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (4)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (4)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (5).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (5)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (5)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (6).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (6)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (6)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (7).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (7)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (7)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (8).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (8)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (8)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (9).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (9)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (9)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/Thumbs.db
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (1).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (1)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (1)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (10).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (10)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (10)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (11).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (11)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (11)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (12).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (12)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (12)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (13).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (13)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (13)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (14).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (14)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (14)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (15).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (15)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (15)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (16).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (16)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (16)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (2).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (2)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (2)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (3).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (3)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (3)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (4).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (4)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (4)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (5).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (5)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (5)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (6).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (6)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (6)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (7).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (7)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (7)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (8).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (8)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (8)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (9).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (9)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (9)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/Thumbs.db
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (1).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (1)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (1)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (10).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (10)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (10)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (11).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (11)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (11)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (12).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (12)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (12)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (13).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (13)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (13)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (14).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (14)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (14)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (2).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (2)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (2)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (3).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (3)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (3)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (4).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (4)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (4)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (5).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (5)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (5)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (6).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (6)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (6)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (7).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (7)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (7)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (8).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (8)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (8)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (9).jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (9)_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (9)_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach_medium.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach_mini.jpg
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/components.xml
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/faces-config.xml
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/lib/
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/pages.xml
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/tags/
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/tags/realWorld-taglib.xml
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/tags/templates/
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/tags/templates/album.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/tags/templates/image.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/tags/templates/linkPanel.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/tags/templates/shelf.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/web.xml
trunk/test-applications/realworld2/web/src/main/webapp/error.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/img/
trunk/test-applications/realworld2/web/src/main/webapp/img/Thumbs.db
trunk/test-applications/realworld2/web/src/main/webapp/img/ajax/
trunk/test-applications/realworld2/web/src/main/webapp/img/ajax/Thumbs.db
trunk/test-applications/realworld2/web/src/main/webapp/img/ajax/ajax_process.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/ajax/error.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/ajax/passed.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/alert.jpeg
trunk/test-applications/realworld2/web/src/main/webapp/img/dtpick.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/error.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/folder.jpg
trunk/test-applications/realworld2/web/src/main/webapp/img/gb.png
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/Thumbs.db
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/arrow.png
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/copy.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/create_doc.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/create_folder.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/cut.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/delete.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/edit.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/filter.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/find.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/message.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/open.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/paste.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/redo.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/reload.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/repeat.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/save.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/save_all.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/save_as.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/undo.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/icons/verify.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/locked.jpg
trunk/test-applications/realworld2/web/src/main/webapp/img/logo.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/modal/
trunk/test-applications/realworld2/web/src/main/webapp/img/modal/Thumbs.db
trunk/test-applications/realworld2/web/src/main/webapp/img/modal/close.png
trunk/test-applications/realworld2/web/src/main/webapp/img/ru.png
trunk/test-applications/realworld2/web/src/main/webapp/img/shell/
trunk/test-applications/realworld2/web/src/main/webapp/img/shell/album_name_bg.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/shell/bullet.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/shell/footer_bg.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/shell/general_panel_bg.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/shell/general_panel_header_bg.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/shell/general_panelbar_bg.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/shell/general_panelbar_bullet.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/shell/logo_bottom.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/shell/logo_top.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/shell/page_bg.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/shell/top_tight_bullet.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/tree/
trunk/test-applications/realworld2/web/src/main/webapp/img/tree/Thumbs.db
trunk/test-applications/realworld2/web/src/main/webapp/img/tree/disc.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/tree/dnd/
trunk/test-applications/realworld2/web/src/main/webapp/img/tree/dnd/Thumbs.db
trunk/test-applications/realworld2/web/src/main/webapp/img/tree/dnd/favorites.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/tree/dnd/image.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/tree/dnd/trash.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/tree/dnd/trash_full.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/tree/singer.gif
trunk/test-applications/realworld2/web/src/main/webapp/img/tree/song.gif
trunk/test-applications/realworld2/web/src/main/webapp/includes/
trunk/test-applications/realworld2/web/src/main/webapp/includes/contextMenu/
trunk/test-applications/realworld2/web/src/main/webapp/includes/contextMenu/CMForAlbum.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/contextMenu/CMForImage.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/contextMenu/CMForUser.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/fileUpload.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/fileUpload/
trunk/test-applications/realworld2/web/src/main/webapp/includes/fileUpload/fileUploadPanel.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/fileUpload/fileUploader.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/fileUpload/multyMode.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/image/
trunk/test-applications/realworld2/web/src/main/webapp/includes/image/breadCrumb.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/image/comments.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/image/imagePreview.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/image/imageScroller.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/image/mainImage.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/image/scroller.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/image/shelf.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/image/shelfs.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/image/slideshow.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/imagePreview-backup.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/imagePreview.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/index/
trunk/test-applications/realworld2/web/src/main/webapp/includes/index/login.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/misc/
trunk/test-applications/realworld2/web/src/main/webapp/includes/misc/errorPanel.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/misc/modalPanels.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/misc/slideShowPooler.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/misc/status.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/news/
trunk/test-applications/realworld2/web/src/main/webapp/includes/news/recent.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/panelBar/
trunk/test-applications/realworld2/web/src/main/webapp/includes/panelBar/favoriteAlbums.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/panelBar/tree.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/register/
trunk/test-applications/realworld2/web/src/main/webapp/includes/register/regInfo.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/search.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/userPrefs.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/userPrefs/
trunk/test-applications/realworld2/web/src/main/webapp/includes/userPrefs/loginPrefsTab.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/userPrefs/userPrefsTab.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/includes/whatNew.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/index.html
trunk/test-applications/realworld2/web/src/main/webapp/index.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/layout/
trunk/test-applications/realworld2/web/src/main/webapp/layout/menu-backup.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/layout/menu.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/layout/panelBar-backup.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/layout/panelBar.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/main.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/register.xhtml
trunk/test-applications/realworld2/web/src/main/webapp/scripts/
trunk/test-applications/realworld2/web/src/main/webapp/scripts/realworld.js
trunk/test-applications/realworld2/web/src/main/webapp/stylesheet/
trunk/test-applications/realworld2/web/src/main/webapp/stylesheet/realworld.css
trunk/test-applications/realworld2/web/src/main/webapp/stylesheet/realworld2.css
Log:
Added: trunk/test-applications/realworld2/ear/pom.xml
===================================================================
--- trunk/test-applications/realworld2/ear/pom.xml (rev 0)
+++ trunk/test-applications/realworld2/ear/pom.xml 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.richfaces</groupId>
+ <artifactId>realworld</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+ <artifactId>${projectName}-ear</artifactId>
+ <name>EAR module</name>
+ <packaging>ear</packaging>
+ <dependencies>
+ <dependency>
+ <groupId>org.richfaces</groupId>
+ <artifactId>${projectName}-web</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <type>war</type>
+ </dependency>
+ <dependency>
+ <groupId>org.richfaces.framework</groupId>
+ <artifactId>richfaces-api</artifactId>
+ <version>${richfacesVersion}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.richfaces</groupId>
+ <artifactId>${projectName}-ejb</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <type>ejb</type>
+ </dependency>
+ <dependency>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ <version>1.2.14</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.seam</groupId>
+ <artifactId>jboss-seam</artifactId>
+ <version>${seamVersion}</version>
+ <type>ejb</type>
+ <exclusions>
+ <exclusion>
+ <groupId>javax.el</groupId>
+ <artifactId>el-api</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>commons-collections</groupId>
+ <artifactId>commons-collections</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.jboss.seam</groupId>
+ <artifactId>jboss-seam-pdf</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>com.sun.facelets</groupId>
+ <artifactId>jsf-facelets</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ </dependencies>
+ <build>
+ <finalName>${projectName}-ear-1.0-SNAPSHOT</finalName>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-ear-plugin</artifactId>
+ <version>2.3.1</version>
+ <configuration>
+ <generateApplicationXml>true</generateApplicationXml>
+ <includeJar>false</includeJar>
+ <defaultLibBundleDir>lib</defaultLibBundleDir>
+ <loader-repository>seam.jboss.org:loader=${project.build.finalName}</loader-repository>
+ <modules>
+ <webModule>
+ <groupId>org.richfaces</groupId>
+ <artifactId>${projectName}-web</artifactId>
+ <contextRoot>/${projectName}</contextRoot>
+ </webModule>
+ <ejbModule>
+ <groupId>org.richfaces</groupId>
+ <artifactId>${projectName}-ejb</artifactId>
+ </ejbModule>
+ <ejbModule>
+ <groupId>org.jboss.seam</groupId>
+ <artifactId>jboss-seam</artifactId>
+ </ejbModule>
+ </modules>
+ </configuration>
+ </plugin>
+
+ </plugins>
+ </build>
+</project>
Property changes on: trunk/test-applications/realworld2/ear/pom.xml
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ear/src/main/jboss-app.xml
===================================================================
--- trunk/test-applications/realworld2/ear/src/main/jboss-app.xml (rev 0)
+++ trunk/test-applications/realworld2/ear/src/main/jboss-app.xml 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+ <!DOCTYPE jboss-app
+ PUBLIC "-//JBoss//DTD J2EE Application 4.2//EN"
+ "http://www.jboss.org/j2ee/dtd/jboss-app_4_2.dtd">
+
+<jboss-app>
+ <loader-repository>
+ seam.jboss.org:loader=realworld-ear-1.0-SNAPSHOT.ear
+ </loader-repository>
+</jboss-app>
\ No newline at end of file
Property changes on: trunk/test-applications/realworld2/ear/src/main/jboss-app.xml
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/META-INF/MANIFEST.MF
===================================================================
--- trunk/test-applications/realworld2/ejb/META-INF/MANIFEST.MF (rev 0)
+++ trunk/test-applications/realworld2/ejb/META-INF/MANIFEST.MF 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Class-Path:
+
Property changes on: trunk/test-applications/realworld2/ejb/META-INF/MANIFEST.MF
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/pom.xml
===================================================================
--- trunk/test-applications/realworld2/ejb/pom.xml (rev 0)
+++ trunk/test-applications/realworld2/ejb/pom.xml 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.richfaces</groupId>
+ <artifactId>realworld</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+ <artifactId>${projectName}-ejb</artifactId>
+ <name>EJB module</name>
+ <version>1.0-SNAPSHOT</version>
+ <packaging>ejb</packaging>
+
+ <dependencies>
+ <dependency>
+ <groupId>javax.ejb</groupId>
+ <artifactId>ejb-api</artifactId>
+ <version>3.0</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.persistence</groupId>
+ <artifactId>persistence-api</artifactId>
+ <version>1.0</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.seam</groupId>
+ <artifactId>jboss-seam</artifactId>
+ <version>${seamVersion}</version>
+ <scope>provided</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>javax.el</groupId>
+ <artifactId>el-api</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>commons-collections</groupId>
+ <artifactId>commons-collections</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.jboss.seam</groupId>
+ <artifactId>jboss-seam-pdf</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>com.sun.facelets</groupId>
+ <artifactId>jsf-facelets</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-validator</artifactId>
+ <version>3.0.0.ga</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-annotations</artifactId>
+ <version>3.3.0.ga</version>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-ejb-plugin</artifactId>
+ <configuration>
+ <ejbVersion>3.0</ejbVersion>
+ <archive>
+ <manifest>
+ <addClasspath>true</addClasspath>
+ </manifest>
+ </archive>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.4</version>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Property changes on: trunk/test-applications/realworld2/ejb/pom.xml
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/Album.java
===================================================================
--- trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/Album.java (rev 0)
+++ trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/Album.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,279 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.domain;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.JoinTable;
+import javax.persistence.ManyToMany;
+import javax.persistence.ManyToOne;
+import javax.persistence.NamedQueries;
+import javax.persistence.NamedQuery;
+import javax.persistence.OneToMany;
+import javax.persistence.Table;
+import javax.persistence.Transient;
+
+import org.hibernate.validator.Length;
+import org.hibernate.validator.NotEmpty;
+import org.hibernate.validator.NotNull;
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Role;
+
+/**
+ * Class for representing Album Entity EJB3 Entity Bean
+ *
+ * @author Andrey Markhel
+ */
+@NamedQueries(
+ {
+ @NamedQuery(name = "album-byAlbumNameAndLogin", query = "from Album a where a.name=:albumName and a.owner.login=:login")
+ }
+ )
+@Entity
+@Name("album")
+@Table(name = "albums")
+@Role(name = "selectedAlbum", scope = ScopeType.CONVERSATION)
+public class Album implements Serializable {
+
+ private static final long serialVersionUID = -7042878411608396483L;
+
+ @Id
+ @GeneratedValue
+ @Column(name = "ALBUM_ID")
+ private Long id = null;
+
+ @Column(length = 255, nullable = false)
+ @NotNull
+ @NotEmpty
+ @Length(min = 3)
+ private String name;
+
+ @Column(length = 1024)
+ private String description;
+
+ @ManyToOne(fetch = FetchType.LAZY)
+ @JoinColumn(name = "ALBUM_USER_ID", referencedColumnName = "USER_ID")
+ private User owner;
+
+ @ManyToMany(cascade = CascadeType.ALL)
+ @JoinTable(name="ALBUMS_METATAGS",
+ joinColumns=
+ @JoinColumn(name="CI_ALBUM_ID",
+ referencedColumnName="ALBUM_ID"),
+ inverseJoinColumns=
+ @JoinColumn(name="CI_METATAG_ID",
+ referencedColumnName="METATAG_ID"))
+ protected List<MetaTag> albumTags;
+
+ @NotNull
+ private boolean shared;
+
+ @OneToMany(cascade = CascadeType.ALL, mappedBy = "album")
+ @org.hibernate.annotations.Fetch(org.hibernate.annotations.FetchMode.SUBSELECT)
+ private List<Image> images = new ArrayList<Image>();
+
+ @ManyToMany(cascade = CascadeType.ALL)
+ @JoinTable(name = "SHARED_ALBUMS", joinColumns = @JoinColumn(name = "ALBUM_ID"), inverseJoinColumns = @JoinColumn(name = "USER_ID"))
+ private List<User> sharedOwners = new ArrayList<User>();
+
+ @ManyToOne(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
+ @JoinColumn(name = "PARENT_SHELF_ID", nullable = true)
+ @org.hibernate.annotations.ForeignKey(name = "FK_SHELF_PARENT_ID")
+ private Shelf parent;
+
+ // ********************** Accessor Methods ********************** //
+
+
+
+ public Shelf getParent() {
+ return parent;
+ }
+
+ public void setParent(Shelf parent) {
+ this.parent = parent;
+ }
+
+ /**
+ * Getter for property id
+ *
+ * @return id of album
+ */
+ public Long getId() {
+ return id;
+ }
+
+ /**
+ * Getter for property name
+ *
+ * @return name of album
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * Setter for property name
+ *
+ * @param name -
+ * name of album
+ */
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ /**
+ * Getter for property description
+ *
+ * @return description of album
+ */
+ public String getDescription() {
+ return description;
+ }
+
+ /**
+ * Setter for property description
+ *
+ * @param description -
+ * description of album
+ */
+ public void setDescription(String description) {
+ this.description = description;
+ }
+
+ // ********************** Business Methods ********************** //
+
+ /**
+ * This method add image to collection of images of current album
+ *
+ * @param image -
+ * image to add
+ */
+ public void addImage(Image image) {
+ if (image == null) {
+ throw new IllegalArgumentException("Null image!");
+ }
+ if (image.getAlbum() != null && !this.equals(image.getAlbum())) {
+ image.getAlbum().getImages().remove(image);
+ }
+ image.setAlbum(this);
+ images.add(image);
+ }
+
+ /**
+ * This method remove image from collection of images of album
+ *
+ * @param image -
+ * image to remove
+ */
+ public void removeImage(Image image) {
+ if (image == null) {
+ throw new IllegalArgumentException("Null image");
+ }
+ image.setAlbum(null);
+ images.remove(image);
+ }
+
+ /**
+ * This method return count of images of current album
+ *
+ * @return count of images of this album
+ */
+ public int getCountImages() {
+ return this.getImages() != null ? this.getImages().size() : 0;
+
+ }
+
+ public boolean isShared() {
+ return shared;
+ }
+
+ public void setShared(boolean shared) {
+ this.shared = shared;
+ }
+
+ public User getOwner() {
+ return owner;
+ }
+
+ public List<Image> getImages() {
+ return images;
+ }
+
+ public void setOwner(User owner) {
+ this.owner = owner;
+ }
+
+ public List<User> getSharedOwners() {
+ return sharedOwners;
+ }
+
+ public void setSharedOwners(List<User> sharedOwners) {
+ this.sharedOwners = sharedOwners;
+ }
+
+ public int getIndex(Image image) {
+ for (int i = 0; i < this.images.size(); i++) {
+ if (this.images.get(i).equals(image)) {
+ return i;
+ }
+ }
+ return -1;
+ }
+
+ public List<MetaTag> getAlbumTags() {
+ return albumTags;
+ }
+
+ public void setAlbumTags(List<MetaTag> albumTags) {
+ this.albumTags = albumTags;
+ }
+
+ public void addMetaTag(MetaTag metatag) {
+ if (metatag == null) {
+ throw new IllegalArgumentException("Null metatag!");
+ }
+ if(!albumTags.contains(metatag)){
+ metatag.addAlbum(this);
+ albumTags.add(metatag);
+ }
+ }
+
+ public void removeMetaTag(MetaTag metatag) {
+ if (metatag == null) {
+ throw new IllegalArgumentException("Null metatag!");
+ }
+ if(albumTags.contains(metatag)){
+ metatag.removeAlbum(this);
+ albumTags.remove(metatag);
+ }
+ }
+}
Property changes on: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/Album.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/Comment.java
===================================================================
--- trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/Comment.java (rev 0)
+++ trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/Comment.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,109 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.domain;
+
+import java.io.Serializable;
+import java.util.Date;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+import javax.persistence.Temporal;
+import javax.persistence.TemporalType;
+
+import org.hibernate.validator.Length;
+import org.hibernate.validator.NotEmpty;
+import org.hibernate.validator.NotNull;
+import org.jboss.seam.annotations.Name;
+
+@Entity
+@Name("comment")
+@Table(name = "comments")
+public class Comment implements Serializable{
+
+ private static final long serialVersionUID = 3429270322123226071L;
+
+ @Id
+ @GeneratedValue
+ @Column(name = "COMMENT_ID")
+ private Long id;
+
+ @Temporal(TemporalType.TIMESTAMP)
+ private Date date;
+
+ @ManyToOne
+ @JoinColumn(name="IMAGE_COMMENT_ID",
+ referencedColumnName="IMAGE_ID")
+ private Image image;
+
+ @ManyToOne(fetch = FetchType.LAZY)
+ @JoinColumn(name = "FROM_USER_ID", nullable = false, updatable = false)
+ @org.hibernate.annotations.ForeignKey(name = "FK_FROM_USER_ID")
+ private User author;
+
+ @Column(length = 1024, nullable = false)
+ @NotNull
+ @NotEmpty
+ @Length(min=2)
+ private String message;
+
+ public Long getId() {
+ return id;
+ }
+
+ public Date getDate() {
+ return date;
+ }
+
+ public void setDate(Date date) {
+ this.date = date;
+ }
+
+ public User getAuthor() {
+ return author;
+ }
+
+ public void setAuthor(User author) {
+ this.author = author;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public Image getImage() {
+ return image;
+ }
+
+ public void setImage(Image image) {
+ this.image = image;
+ }
+
+}
Property changes on: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/Comment.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/Image.java
===================================================================
--- trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/Image.java (rev 0)
+++ trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/Image.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,344 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+/*
+ * Image.java
+ * Last modified by: $Author$
+ * $Revision$ $Date$
+ */
+package org.richfaces.realworld.domain;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.JoinTable;
+import javax.persistence.ManyToMany;
+import javax.persistence.ManyToOne;
+import javax.persistence.NamedQueries;
+import javax.persistence.NamedQuery;
+import javax.persistence.OneToMany;
+import javax.persistence.OneToOne;
+import javax.persistence.Table;
+import javax.persistence.Temporal;
+import javax.persistence.TemporalType;
+import javax.persistence.Transient;
+
+import org.hibernate.validator.Length;
+import org.hibernate.validator.NotEmpty;
+import org.hibernate.validator.NotNull;
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Role;
+
+@NamedQueries({
+ @NamedQuery(
+ name = "image-camera",
+ query = "select distinct i.cameraModel from Image i"
+ )
+ }
+)
+/**
+ * Class for representing Image Entity
+ * EJB3 Entity Bean
+ *
+ * @author Andrey Markhel
+ */
+
+@Entity
+@Name("image")
+@Table(name = "Images")
+@Role(name="selectedImage", scope = ScopeType.CONVERSATION)
+public class Image implements Serializable {
+
+ private static final long serialVersionUID = -7042878411608396483L;
+
+ @Id
+ @GeneratedValue
+ @Column(name = "IMAGE_ID")
+ private Long id = null;
+
+ @Column(length = 255, nullable = false)
+ @NotNull
+ @NotEmpty
+ @Length(min=3)
+ private String name;
+
+ @Column(length = 1024, nullable = false)
+ @NotNull
+ @NotEmpty
+ @Length(min=3)
+ private String path;
+
+ @ManyToMany(cascade = CascadeType.ALL)
+ @JoinTable(name="IMAGES_METATAGS",
+ joinColumns=
+ @JoinColumn(name="CI_IMAGE_ID",
+ referencedColumnName="IMAGE_ID"),
+ inverseJoinColumns=
+ @JoinColumn(name="CI_METATAG_ID",
+ referencedColumnName="METATAG_ID"))
+ protected List<MetaTag> imageTags;
+
+ @Column(length = 255)
+ private String cameraModel;
+
+ private int height;
+
+ private double size;
+
+ private int width;
+
+ @Temporal(TemporalType.TIMESTAMP)
+ private Date uploaded;
+
+ @Column(length = 1024)
+ @NotNull
+ @NotEmpty
+ @Length(min=3)
+ private String description;
+
+ @Transient
+ private String albumName;
+
+ @Temporal(TemporalType.TIMESTAMP)
+ private Date created;
+
+ @Transient
+ private String meta = "";
+
+ @OneToMany(mappedBy = "image", cascade = { CascadeType.ALL }, fetch = FetchType.LAZY)
+ @org.hibernate.annotations.LazyCollection(org.hibernate.annotations.LazyCollectionOption.EXTRA)
+ @org.hibernate.annotations.OrderBy(clause="date asc")
+ private List<Comment> comments = new ArrayList<Comment>();
+
+ @ManyToOne(fetch = FetchType.LAZY)
+ @JoinColumn(name="IMG_ALBUM_ID",
+ referencedColumnName="ALBUM_ID")
+ private Album album;
+
+ @ManyToMany
+ @JoinTable(
+ name = "SHARED_IMAGES",
+ joinColumns = @JoinColumn(name = "IMAGE_ID"),
+ inverseJoinColumns = @JoinColumn(name = "USER_ID")
+ )
+ private List<User> sharedOwners = new ArrayList<User>();
+
+ // ********************** Accessor Methods ********************** //
+
+ /**
+ * Getter for property id
+ *
+ * @return id of image
+ */
+ public Long getId() {
+ return id;
+ }
+
+ /**
+ * Getter for property name
+ *
+ * @return name of image
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * Setter for property name
+ *
+ * @param name - name of image
+ */
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public List<User> getSharedOwners() {
+ return sharedOwners;
+ }
+
+ public void setSharedOwners(List<User> sharedOwners) {
+ this.sharedOwners = sharedOwners;
+ }
+
+ /**
+ * Getter for property description
+ *
+ * @return description of image
+ */
+ public String getDescription() {
+ return description;
+ }
+
+ /**
+ * Setter for property description
+ *
+ * @param description - description of image
+ */
+ public void setDescription(String description) {
+ this.description = description;
+ }
+
+ public String getPath() {
+ return path;
+ }
+
+ public void setPath(String path) {
+ this.path = path;
+ }
+
+ public Date getCreated() {
+ return created;
+ }
+
+ public void setCreated(Date created) {
+ this.created = created;
+ }
+
+ public Album getAlbum() {
+ return album;
+ }
+
+ public void setAlbum(Album album) {
+ this.album = album;
+ }
+
+ public String getAlbumName() {
+ if(null == albumName && this.getAlbum() != null){
+ albumName = this.getAlbum().getName();
+ }
+ return albumName;
+ }
+
+ public void setAlbumName(String albumName) {
+ this.albumName = albumName;
+ }
+
+ //---------------------------Business methods
+
+ public void addComment(Comment comment) {
+ if (comment == null) {
+ throw new IllegalArgumentException("Null comment!");
+ }
+ if (comment.getImage() != null && !this.equals(comment.getImage())) {
+ comment.getImage().getComments().remove(comment);
+ }
+ comment.setImage(this);
+ comments.add(comment);
+ }
+
+ public void removeComment(Comment comment) {
+ if (comment == null) {
+ throw new IllegalArgumentException("Null comment");
+ }
+ comment.setImage(null);
+ comments.remove(comment);
+ }
+
+ public List<Comment> getComments() {
+ return comments;
+ }
+
+
+ public List<MetaTag> getImageTags() {
+ return imageTags;
+ }
+
+ public void setImageTags(List<MetaTag> imageTags) {
+ this.imageTags = imageTags;
+ }
+
+ public String getMeta() {
+ return meta;
+ }
+
+ public void setMeta(String meta) {
+ this.meta = meta;
+ }
+
+ public String getCameraModel() {
+ return cameraModel;
+ }
+
+ public void setCameraModel(String cameraModel) {
+ this.cameraModel = cameraModel;
+ }
+
+ public int getHeight() {
+ return height;
+ }
+
+ public void setHeight(int height) {
+ this.height = height;
+ }
+
+ public double getSize() {
+ return size;
+ }
+
+ public void setSize(double size) {
+ this.size = size;
+ }
+
+ public int getWidth() {
+ return width;
+ }
+
+ public void setWidth(int width) {
+ this.width = width;
+ }
+
+ public Date getUploaded() {
+ return uploaded;
+ }
+
+ public void setUploaded(Date uploaded) {
+ this.uploaded = uploaded;
+ }
+
+ public void addMetaTag(MetaTag metatag) {
+ if (metatag == null) {
+ throw new IllegalArgumentException("Null metatag!");
+ }
+ if(!imageTags.contains(metatag)){
+ metatag.addImage(this);
+ imageTags.add(metatag);
+ }
+ }
+
+ public void removeMetaTag(MetaTag metatag) {
+ if (metatag == null) {
+ throw new IllegalArgumentException("Null metatag!");
+ }
+ if(imageTags.contains(metatag)){
+ metatag.removeImage(this);
+ imageTags.remove(metatag);
+ }
+ }
+}
Property changes on: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/Image.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/MetaTag.java
===================================================================
--- trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/MetaTag.java (rev 0)
+++ trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/MetaTag.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,107 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.domain;
+
+import java.io.Serializable;
+import java.util.List;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToMany;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+import org.hibernate.validator.Length;
+import org.hibernate.validator.NotEmpty;
+import org.hibernate.validator.NotNull;
+import org.jboss.seam.annotations.Name;
+
+@Entity
+@Name("metaTag")
+@Table(name = "metatags")
+public class MetaTag implements Serializable{
+
+ private static final long serialVersionUID = -9065024051468971330L;
+
+ @Id
+ @GeneratedValue
+ @Column(name = "METATAG_ID")
+ private Long id;
+
+ @Column(length = 255, nullable = false)
+ @NotNull
+ @NotEmpty
+ @Length(min=3)
+ private String tag;
+
+ @ManyToMany(mappedBy="imageTags")
+ private List<Image> images;
+
+ @ManyToMany(mappedBy="albumTags")
+ private List<Album> albums;
+
+ public Long getId() {
+ return id;
+ }
+
+ public String getTag() {
+ return tag;
+ }
+
+ public void setTag(String tag) {
+ this.tag = tag;
+ }
+
+ public List<Image> getImages() {
+ return images;
+ }
+
+ public void setImages(List<Image> images) {
+ this.images = images;
+ }
+
+ public List<Album> getAlbums() {
+ return albums;
+ }
+
+ public void setAlbums(List<Album> albums) {
+ this.albums = albums;
+ }
+
+ public void addImage(Image image){
+ images.add(image);
+ }
+
+ public void removeImage(Image image){
+ images.remove(image);
+ }
+
+ public void addAlbum(Album album){
+ albums.add(album);
+ }
+
+ public void removeAlbum(Album album){
+ albums.remove(album);
+ }
+}
Property changes on: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/MetaTag.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/Shelf.java
===================================================================
--- trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/Shelf.java (rev 0)
+++ trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/Shelf.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,130 @@
+package org.richfaces.realworld.domain;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.JoinTable;
+import javax.persistence.ManyToMany;
+import javax.persistence.ManyToOne;
+import javax.persistence.OneToMany;
+import javax.persistence.Table;
+
+import org.hibernate.validator.Length;
+import org.hibernate.validator.NotEmpty;
+import org.hibernate.validator.NotNull;
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Role;
+
+@Entity
+@Name("shelf")
+@Table(name = "shelfs")
+public class Shelf implements Serializable {
+
+ private static final long serialVersionUID = -7042878411608396483L;
+
+ @Id
+ @GeneratedValue
+ @Column(name = "SHELF_ID")
+ private Long id = null;
+
+ @Column(length = 255, nullable = false)
+ @NotNull
+ @NotEmpty
+ @Length(min = 3)
+ private String name;
+
+ @Column(length = 1024)
+ private String description;
+
+ @ManyToOne(fetch = FetchType.LAZY)
+ @JoinColumn(name = "SHELF_USER_ID", referencedColumnName = "USER_ID")
+ private User owner;
+
+ @OneToMany(mappedBy = "parent", cascade = { CascadeType.ALL })
+ @org.hibernate.annotations.OrderBy(clause = "NAME asc")
+ private List<Album> childAlbums = new ArrayList<Album>();
+
+ /**
+ * Getter for property id
+ *
+ * @return id of album
+ */
+ public Long getId() {
+ return id;
+ }
+
+ /**
+ * Getter for property name
+ *
+ * @return name of album
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * Setter for property name
+ *
+ * @param name -
+ * name of album
+ */
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ /**
+ * Getter for property description
+ *
+ * @return description of album
+ */
+ public String getDescription() {
+ return description;
+ }
+
+ /**
+ * Setter for property description
+ *
+ * @param description -
+ * description of album
+ */
+ public void setDescription(String description) {
+ this.description = description;
+ }
+
+ public List<Album> getChildAlbums() {
+ return childAlbums;
+ }
+
+ public User getOwner() {
+ return owner;
+ }
+
+ public void setOwner(User owner) {
+ this.owner = owner;
+ }
+
+ public void addChildAlbum(Album album) {
+ if (album == null)
+ throw new IllegalArgumentException("Null child!");
+ if (album.getParent() != null)
+ album.getParent().getChildAlbums().remove(album);
+ album.setParent(this);
+ childAlbums.add(album);
+ }
+
+ public void removeChildAlbum(Album album) {
+ if (album == null)
+ throw new IllegalArgumentException("Null child!");
+ album.setParent(null);
+ childAlbums.remove(album);
+ }
+}
Property changes on: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/Shelf.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/User.java
===================================================================
--- trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/User.java (rev 0)
+++ trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/User.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,288 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.domain;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.JoinTable;
+import javax.persistence.ManyToMany;
+import javax.persistence.NamedQueries;
+import javax.persistence.NamedQuery;
+import javax.persistence.OneToMany;
+import javax.persistence.Table;
+import javax.persistence.Temporal;
+import javax.persistence.TemporalType;
+import javax.persistence.Transient;
+import org.hibernate.validator.Length;
+import org.hibernate.validator.NotEmpty;
+import org.hibernate.validator.NotNull;
+import org.hibernate.validator.Pattern;
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Role;
+import org.jboss.seam.annotations.Scope;
+import javax.persistence.UniqueConstraint;
+
+@NamedQueries({
+ @NamedQuery(
+ name = "user-login",
+ query = "from User u where u.login = :username and u.passwordHash = :password"
+ ),
+ @NamedQuery(
+ name = "user-exist",
+ query = "from User u where u.login = :login"
+ ),
+ @NamedQuery(
+ name = "user-rootAlbums",
+ query = "from Album a WHERE a.owner.login=:login and a.parent is null"
+ ),
+ @NamedQuery(
+ name = "user-user",
+ query = "from User u where u.login = :login"
+ )
+})
+
+@Entity
+(a)Scope(ScopeType.CONVERSATION)
+@Name("user")
+@Role(name="selectedUser", scope=ScopeType.CONVERSATION)
+@Table(name = "Users", uniqueConstraints = {
+ @UniqueConstraint(columnNames = "login"),
+ @UniqueConstraint(columnNames = "email")
+ })
+public class User implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @Id
+ @GeneratedValue
+ @Column(name = "USER_ID")
+ private Long id = null;
+
+ @NotNull
+ private String passwordHash;
+
+ @Column(length = 255, nullable = false)
+ @NotNull
+ @NotEmpty
+ @Length(min=3)
+ private String firstName;
+
+ @Column(length = 255, nullable = false)
+ @NotNull
+ @NotEmpty
+ @Length(min=3)
+ private String secondName;
+
+ @Column(length = 255, nullable = false)
+ @NotNull
+ @NotEmpty
+ @Pattern(regex=".+@.+\\.[a-z]+", message="Not valid e-mail")
+ private String email;
+
+ @Column(length = 255, nullable = false)
+ @NotNull
+ @NotEmpty
+ @Length(min=3)
+ private String login;
+
+ @Transient
+ private String password;
+
+ @Transient
+ private String confirmPassword;
+
+ @ManyToMany(mappedBy = "sharedOwners")
+ private List<Album> favoriteAlbums = new ArrayList<Album>();
+
+ @ManyToMany(mappedBy = "sharedOwners")
+ private List<Image> favoriteImages = new ArrayList<Image>();
+
+ @Temporal(TemporalType.TIMESTAMP)
+ private Date birthDate;
+
+ @OneToMany(mappedBy = "owner", cascade = { CascadeType.ALL}, fetch = FetchType.LAZY)
+ @org.hibernate.annotations.LazyCollection(org.hibernate.annotations.LazyCollectionOption.EXTRA)
+ @org.hibernate.annotations.OrderBy(clause = "NAME asc")
+ private List<Album> childAlbums = new ArrayList<Album>();
+
+ @OneToMany(mappedBy = "owner", cascade = { CascadeType.ALL}, fetch = FetchType.LAZY)
+ @org.hibernate.annotations.LazyCollection(org.hibernate.annotations.LazyCollectionOption.EXTRA)
+ @org.hibernate.annotations.OrderBy(clause = "NAME asc")
+ private List<Shelf> shelfs = new ArrayList<Shelf>();
+
+ public String getFirstName() {
+ return firstName;
+ }
+
+ public void setFirstName(String firstName) {
+ this.firstName = firstName;
+ }
+
+ public String getSecondName() {
+ return secondName;
+ }
+
+ public void setSecondName(String secondName) {
+ this.secondName = secondName;
+ }
+
+ public String getEmail() {
+ return email;
+ }
+
+ public void setEmail(String email) {
+ this.email = email;
+ }
+
+ public String getPasswordHash() { return passwordHash; }
+ public void setPasswordHash(String passwordHash) {
+ this.passwordHash = passwordHash;
+ }
+
+ public String getLogin() {
+ return login;
+ }
+
+ public void setLogin(String login) {
+ this.login = login;
+ }
+
+ public String getPassword() {
+ return password;
+ }
+
+ public void setPassword(String password) {
+ this.password = password;
+ }
+
+ public Date getBirthDate() {
+ return birthDate;
+ }
+
+ public void setBirthDate(Date birthDate) {
+ this.birthDate = birthDate;
+ }
+
+ public Long getId() {
+ return id;
+ }
+
+ public List<Album> getChildAlbums() {
+ return childAlbums;
+ }
+
+ //---------------------------Business methods
+
+ public void addAlbum(Album album) {
+ if (album == null) {
+ throw new IllegalArgumentException("Null album!");
+ }
+ album.setOwner(this);
+ childAlbums.add(album);
+ }
+
+ public void removeAlbum(Album album) {
+ if (album == null) {
+ throw new IllegalArgumentException("Null album");
+ }
+ album.setOwner(null);
+ childAlbums.remove(album);
+ }
+
+ public void addShelf(Shelf shelf) {
+ if (shelf == null) {
+ throw new IllegalArgumentException("Null shelf!");
+ }
+ shelf.setOwner(this);
+ shelfs.add(shelf);
+ }
+
+ public void removeShelf(Shelf shelf) {
+ if (shelf == null) {
+ throw new IllegalArgumentException("Null shelf");
+ }
+ shelf.setOwner(null);
+ shelfs.remove(shelf);
+ }
+
+ public String getConfirmPassword() {
+ return confirmPassword;
+ }
+
+ public void setConfirmPassword(String confirmPassword) {
+ this.confirmPassword = confirmPassword;
+ }
+
+ public List<Album> getFavoriteAlbums() {
+ return favoriteAlbums;
+ }
+
+ public void removeFromFavoriteAlbums(Album album) {
+ favoriteAlbums.remove(album);
+ }
+
+ public void addFavoriteAlbum(Album album) {
+ if (album == null) {
+ throw new IllegalArgumentException("Null album!");
+ }
+ if(favoriteAlbums.contains(album)){
+ return;
+ }
+ favoriteAlbums.add(album);
+ }
+
+ public void removeFromFavoriteImages(Image image) {
+ favoriteImages.remove(image);
+ }
+
+ public void addFavoriteImage(Image image) {
+ if (image == null) {
+ throw new IllegalArgumentException("Null image!");
+ }
+ if(favoriteAlbums.contains(image)){
+ return;
+ }
+ favoriteImages.add(image);
+ }
+
+ public List<Image> getFavoriteImages() {
+ return favoriteImages;
+ }
+
+ public List<Shelf> getShelfs() {
+ return shelfs;
+ }
+
+ public void setShelfs(List<Shelf> shelfs) {
+ this.shelfs = shelfs;
+ }
+}
\ No newline at end of file
Property changes on: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/domain/User.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/AlbumAction.java
===================================================================
--- trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/AlbumAction.java (rev 0)
+++ trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/AlbumAction.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,71 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.service;
+
+import java.util.List;
+
+import javax.ejb.Stateless;
+import javax.persistence.EntityManager;
+
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Out;
+import org.richfaces.realworld.domain.Album;
+import org.richfaces.realworld.domain.User;
+
+@Name("albumAction")
+@Stateless
+public class AlbumAction implements IAlbumAction {
+
+ @In(value="entityManager")
+ EntityManager em;
+
+ @In @Out
+ private User user;
+
+ public void addAlbum(Album album) {
+ em.persist(album);
+ user.addAlbum(album);
+ em.flush();
+ }
+
+ public void deleteAlbum(Album album){
+ if(album.getParent()!=null){
+ album.getParent().removeChildAlbum(album);
+ }else{
+ user.removeAlbum(album);
+ }
+ em.flush();
+ }
+
+ public void editAlbum(Album album){
+ em.flush();
+ }
+
+ public void flush(){
+ em.flush();
+ }
+
+ public List<Album> getSharedAlbums() {
+ return em.createQuery("from Album a where a.shared=true").getResultList();
+ }
+
+}
Property changes on: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/AlbumAction.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/Constants.java
===================================================================
--- trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/Constants.java (rev 0)
+++ trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/Constants.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,101 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.service;
+
+
+public class Constants {
+
+ public static final String ERROR_ID = "mainform:error";
+ public static final String CLEAR_ERROR_EVENT = "clearErrorEvent";
+ public static final String ADD_ERROR_EVENT = "addErrorEvent";
+
+ public static final String UPLOAD_ROOT = "uploadRoot";
+ public static final String FILE_SEPARATOR = "file.separator";
+ public static final String SLASH = "/";
+ public static final String DOT = ".";
+ public static final String JPG = "JPG";
+
+ public static final String ADD_IMAGE_EVENT = "addImage";
+
+ public static final int KB = 1024;
+ public static final String FILE_UPLOAD_CLEAR_EVENT = "fileUploadClear";
+ public static final String SHOW_FILE_UPLOAD_EVENT = "showFileUpload";
+ public static final String JPEG = "jpeg";
+
+ public static final String MAIN_OUTCOME = "main";
+
+ public static final String REGISTER_LOGIN_NAME_ID = "register:loginName";
+ public static final String REGISTER_CONFIRM_PASSWORD_ID = "register:confirmPassword";
+ public static final String INDEX_OUTCOME = "index";
+ public static final String ADMIN_ROLE = "admin";
+ public static final String GUEST_ROLE = "guest";
+ public static final String UPDATE_MAIN_AREA_EVENT = "updateMainArea";
+
+ public static final String TREE_ID = "tree";
+ public static final String CLEAR_EDITOR_EVENT = "clearEditor";
+
+ public static final String HTTPS = "https://";
+ public static final String HTTP = "http://";
+ public static final String HTTP_1_0 = "HTTP/1.0";
+ public static final String HTTP_1_1 = "HTTP/1.1";
+ public static final String PICTURE_FOLDER_PATH = "/picture/";
+ public static final String MINI_FORMAT = "_mini";
+ public static final String MEDIUM_FORMAT = "_medium";
+ public static String URL = "URL";
+ public static String HTML = "HTML";
+ public static String FORUM = "Forum";
+ public static String HTML_PATTERN = "<a href='%s'><img src='%s' border='0'></a>";
+ public static String FORUM_PATTERN = "[URL=%s][IMG]%s[/IMG][/URL]";
+ public static final String ERROR_PAGE = "/error.seam";
+ public static final String IMAGE_JPG = "image/jpg";
+ public static final String PATH_PARAMETER = "path";
+ public static final String FILE_MANAGER = "fileManager";
+ public static final String ENTITY_MANAGER = "entityManager";
+ public static final String USER_ID = "userId";
+ public static final int INITIAL_DELAY = 10000;
+ public static final int DELAY = 3000;
+ public static final String ALBUM_NODE_TYPE = "album";
+ public static final String USER_MANAGER = "userManager";
+
+ public static final String USER = "user";
+ public static final String TREE_ROOT_NODE_TYPE = "treeRoot";
+ public static final String DATASCROLLER_ID = "mainform:imageScroller";
+
+ public static final String USER_EXIST_QUERY = "user-exist";
+ public static final String USER_LOGIN_QUERY = "user-login";
+ public static final String USER_ROOT_ALBUMS_QUERY = "user-rootAlbums";
+
+ public static final String PERCENT = "%";
+ public static final String LOGIN_PARAMETER = "login";
+ public static final String PASSWORD_PARAMETER = "password";
+ public static final String USERNAME_PARAMETER = "username";
+
+ public static final String IMAGE_CAMERA_QUERY = "image-camera";
+ public static final String USER_USER_QUERY = "user-user";
+
+ public static final String ALBUM_BY_ALBUM_NAME_AND_LOGIN_QUERY = "album-byAlbumNameAndLogin";
+ public static final String ALBUM_NAME_PARAMETER = "albumName";
+
+ private Constants(){
+
+ }
+
+}
Property changes on: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/Constants.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/IAlbumAction.java
===================================================================
--- trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/IAlbumAction.java (rev 0)
+++ trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/IAlbumAction.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,42 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.service;
+
+import java.util.List;
+
+import javax.ejb.Local;
+
+import org.richfaces.realworld.domain.Album;
+
+@Local
+public interface IAlbumAction {
+
+ public abstract void addAlbum(Album album);
+
+ public void deleteAlbum(Album album);
+
+ public void editAlbum(Album album);
+
+ public abstract void flush();
+
+ public abstract List<Album> getSharedAlbums();
+
+}
\ No newline at end of file
Property changes on: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/IAlbumAction.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/IImageAction.java
===================================================================
--- trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/IImageAction.java (rev 0)
+++ trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/IImageAction.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,41 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.service;
+
+import javax.ejb.Local;
+
+import org.richfaces.realworld.domain.Comment;
+import org.richfaces.realworld.domain.Image;
+
+@Local
+public interface IImageAction {
+
+ public abstract void deleteImage(Image image);
+
+ public abstract void editImage(Image image);
+
+ public abstract void addImage(Image image);
+
+ public void deleteComment(Comment comment);
+
+ public void addComment(Comment comment);
+
+}
\ No newline at end of file
Property changes on: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/IImageAction.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/IShelfAction.java
===================================================================
--- trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/IShelfAction.java (rev 0)
+++ trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/IShelfAction.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,16 @@
+package org.richfaces.realworld.service;
+
+
+import javax.ejb.Local;
+
+import org.richfaces.realworld.domain.Shelf;
+
+@Local
+public interface IShelfAction {
+
+ public abstract void addShelf(Shelf shelf);
+
+ public void deleteShelf(Shelf shelf);
+
+ public void editShelf(Shelf shelf);
+}
Property changes on: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/IShelfAction.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/IUserAction.java
===================================================================
--- trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/IUserAction.java (rev 0)
+++ trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/IUserAction.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,44 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.service;
+
+import java.util.List;
+
+import javax.ejb.Local;
+
+import org.richfaces.realworld.domain.Album;
+import org.richfaces.realworld.domain.Image;
+import org.richfaces.realworld.domain.User;
+
+@Local
+public interface IUserAction {
+ public User login(String username, String password);
+ public void register(User user);
+ public boolean isUserExist(String login);
+ public void updateUser(User user);
+ public void resetUser(User user);
+ public void removeFromFavoriteAlbums(User user, Album album);
+ public void addFavoriteAlbum(Album album);
+ public void loginAnonymous();
+ public List<Album> getRootAlbums(User user);
+ public void addFavoriteImage(Image image);
+ public void removeFromFavoriteImages(User user, Image image);
+}
\ No newline at end of file
Property changes on: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/IUserAction.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/ImageAction.java
===================================================================
--- trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/ImageAction.java (rev 0)
+++ trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/ImageAction.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,100 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.service;
+
+import javax.ejb.Stateless;
+import javax.persistence.EntityManager;
+
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.richfaces.realworld.domain.Comment;
+import org.richfaces.realworld.domain.Image;
+import org.richfaces.realworld.domain.MetaTag;
+
+@Name("imageAction")
+@Stateless
+public class ImageAction implements IImageAction {
+
+ @In(value="entityManager")
+ EntityManager em;
+
+ public void deleteImage(Image image){
+ image.getAlbum().removeImage(image);
+ em.flush();
+ }
+
+ public void editImage(Image image) {
+ /*if(parentChanged){
+ Album albumPrevious = image.getAlbum();
+ String login = albumPrevious.getOwner().getLogin();
+ String albumName = image.getAlbumName();
+ albumPrevious.removeImage(image);
+ Album album = (Album)em.createNamedQuery(Constants.ALBUM_BY_ALBUM_NAME_AND_LOGIN_QUERY).setParameter(Constants.ALBUM_NAME_PARAMETER, albumName).setParameter(Constants.LOGIN_PARAMETER, login).getSingleResult();
+ album.addImage(image);
+ }
+ image.getImageTags().clear();
+ setTags(image, image.getMeta());*/
+ image.setImageTags(null);
+ String[] tokens = image.getMeta().split(",");
+ for(String token:tokens){
+ MetaTag t =(MetaTag) em.createQuery("from MetaTag t where t.tag =:token").setParameter("token", token).getSingleResult();
+ if(t != null){
+ t.addImage(image);
+ image.addMetaTag(t);
+ }else{
+ MetaTag meta = new MetaTag();
+ meta.setTag(token);
+ t.addImage(image);
+ image.addMetaTag(t);
+ }
+ }
+ em.flush();
+ }
+
+ public void addImage(Image image) {
+ String[] tokens = image.getMeta().split(",");
+ for(String token:tokens){
+ MetaTag t =(MetaTag) em.createQuery("from MetaTag t where t.tag =:token").setParameter("token", token).getSingleResult();
+ if(t != null){
+ t.addImage(image);
+ image.addMetaTag(t);
+ }else{
+ MetaTag meta = new MetaTag();
+ meta.setTag(token);
+ t.addImage(image);
+ image.addMetaTag(t);
+ }
+ }
+ em.persist(image);
+ image.getAlbum().addImage(image);
+ em.flush();
+ }
+
+ public void deleteComment(Comment comment){
+ comment.getImage().removeComment(comment);
+ em.flush();
+ }
+
+ public void addComment(Comment comment){
+ comment.getImage().addComment(comment);
+ em.flush();
+ }
+}
Property changes on: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/ImageAction.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/ShelfAction.java
===================================================================
--- trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/ShelfAction.java (rev 0)
+++ trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/ShelfAction.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,61 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.service;
+
+import java.util.List;
+
+import javax.ejb.Stateless;
+import javax.persistence.EntityManager;
+
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Out;
+import org.richfaces.realworld.domain.Album;
+import org.richfaces.realworld.domain.Image;
+import org.richfaces.realworld.domain.Shelf;
+import org.richfaces.realworld.domain.User;
+
+@Name("shelfAction")
+@Stateless
+public class ShelfAction implements IShelfAction {
+
+ @In(value="entityManager")
+ EntityManager em;
+
+ @In @Out
+ private User user;
+
+ public void addShelf(Shelf shelf) {
+ em.persist(shelf);
+ user.addShelf(shelf);
+ em.flush();
+ }
+
+ public void deleteShelf(Shelf shelf){
+ user.removeShelf(shelf);
+ em.flush();
+ }
+
+ public void editShelf(Shelf shelf){
+ em.flush();
+ }
+
+}
Property changes on: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/ShelfAction.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/UserAction.java
===================================================================
--- trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/UserAction.java (rev 0)
+++ trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/UserAction.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,110 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.service;
+
+import java.util.Collections;
+import java.util.List;
+
+import javax.ejb.Stateless;
+import javax.persistence.EntityManager;
+
+import org.jboss.seam.annotations.AutoCreate;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Out;
+import org.richfaces.realworld.domain.Album;
+import org.richfaces.realworld.domain.Image;
+import org.richfaces.realworld.domain.User;
+
+@Name("userAction")
+@Stateless
+@AutoCreate
+public class UserAction implements IUserAction {
+
+ @In(value="entityManager")
+ EntityManager em;
+
+ @In(create = true, required = true) @Out
+ private User user;
+
+ public User login(String username, String password) {
+ return user = (User)em.createNamedQuery(Constants.USER_LOGIN_QUERY)
+ .setParameter(Constants.USERNAME_PARAMETER, username)
+ .setParameter(Constants.PASSWORD_PARAMETER, password)
+ .getSingleResult();
+ }
+
+ public void register(User user) {
+ em.persist(user);
+ em.flush();
+ }
+
+ public void updateUser(User user) {
+ em.flush();
+ this.user = user;
+ }
+
+ @SuppressWarnings("unchecked")
+ public List<Album> getRootAlbums(User user) {
+ List<Album> albums = em.createNamedQuery(Constants.USER_ROOT_ALBUMS_QUERY)
+ .setParameter(Constants.LOGIN_PARAMETER, user.getLogin())
+ .getResultList();
+ return albums;
+ }
+
+ public void resetUser(User user) {
+ em.refresh(user);
+ em.flush();
+ this.user = user;
+ }
+
+ public boolean isUserExist(String login) {
+ return em.createNamedQuery(Constants.USER_EXIST_QUERY)
+ .setParameter(Constants.LOGIN_PARAMETER, login)
+ .getResultList().size() != 0;
+ }
+
+ public void removeFromFavoriteAlbums(User user, Album album) {
+ user.removeFromFavoriteAlbums(album);
+ em.flush();
+ }
+
+ public void addFavoriteAlbum(Album album) {
+ user.addFavoriteAlbum(album);
+ album.getSharedOwners().add(user);
+ em.flush();
+ }
+
+ public void loginAnonymous() {
+ user = new User();
+ }
+
+ public void addFavoriteImage(Image image) {
+ user.addFavoriteImage(image);
+ image.getSharedOwners().add(user);
+ em.flush();
+ }
+
+ public void removeFromFavoriteImages(User user, Image image) {
+ user.removeFromFavoriteImages(image);
+ em.flush();
+ }
+}
\ No newline at end of file
Property changes on: trunk/test-applications/realworld2/ejb/src/main/java/org/richfaces/realworld/service/UserAction.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/src/main/resources/META-INF/ejb-jar.xml
===================================================================
--- trunk/test-applications/realworld2/ejb/src/main/resources/META-INF/ejb-jar.xml (rev 0)
+++ trunk/test-applications/realworld2/ejb/src/main/resources/META-INF/ejb-jar.xml 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ejb-jar xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd"
+ version="3.0">
+
+ <interceptors>
+ <interceptor>
+ <interceptor-class>org.jboss.seam.ejb.SeamInterceptor</interceptor-class>
+ </interceptor>
+ </interceptors>
+
+ <assembly-descriptor>
+ <interceptor-binding>
+ <ejb-name>*</ejb-name>
+ <interceptor-class>org.jboss.seam.ejb.SeamInterceptor</interceptor-class>
+ </interceptor-binding>
+ </assembly-descriptor>
+
+</ejb-jar>
\ No newline at end of file
Property changes on: trunk/test-applications/realworld2/ejb/src/main/resources/META-INF/ejb-jar.xml
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/src/main/resources/META-INF/persistence.xml
===================================================================
--- trunk/test-applications/realworld2/ejb/src/main/resources/META-INF/persistence.xml (rev 0)
+++ trunk/test-applications/realworld2/ejb/src/main/resources/META-INF/persistence.xml 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Persistence deployment descriptor for dev profile -->
+<persistence xmlns="http://java.sun.com/xml/ns/persistence"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
+ version="1.0">
+
+ <persistence-unit name="entityManager" transaction-type="JTA">
+ <provider>org.hibernate.ejb.HibernatePersistence</provider>
+ <jta-data-source>java:/realWorldDatasource</jta-data-source>
+ <properties>
+ <property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect"/>
+ <property name="hibernate.hbm2ddl.auto" value="create-drop"/>
+ <property name="hibernate.show_sql" value="true"/>
+ <property name="hibernate.format_sql" value="true"/>
+ <property name="jboss.entity.manager.factory.jndi.name"
+ value="java:/realWorldEntityManager"/>
+ <property name="hibernate.transaction.manager_lookup_class" value="org.hibernate.transaction.JBossTransactionManagerLookup"/>
+ </properties>
+ <!--<properties>
+ <property name="hibernate.dialect" value="org.hibernate.dialect.PostgreSQLDialect"/>
+ <property name="hibernate.hbm2ddl.auto" value="create-drop"/>
+ <property name="hibernate.show_sql" value="true"/>
+ <property name="hibernate.format_sql" value="true"/>
+ </properties>-->
+ </persistence-unit>
+
+</persistence>
Property changes on: trunk/test-applications/realworld2/ejb/src/main/resources/META-INF/persistence.xml
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/src/main/resources/components.properties
===================================================================
--- trunk/test-applications/realworld2/ejb/src/main/resources/components.properties (rev 0)
+++ trunk/test-applications/realworld2/ejb/src/main/resources/components.properties 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,4 @@
+#
+#Mon Sep 15 14:29:32 EEST 2008
+jndiPattern=realworld-ear-1.0-SNAPSHOT/#{ejbName}/local
+embeddedEjb=false
Property changes on: trunk/test-applications/realworld2/ejb/src/main/resources/components.properties
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/src/main/resources/import.sql
===================================================================
--- trunk/test-applications/realworld2/ejb/src/main/resources/import.sql (rev 0)
+++ trunk/test-applications/realworld2/ejb/src/main/resources/import.sql 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,141 @@
+INSERT INTO Users(user_id, firstname, secondname, email, login, passwordHash, birthdate) VALUES (1, 'Andrey', 'Markhel', 'amarkhel(a)exadel.com', 'amarkhel', '8cb2237d0679ca88db6464eac60da96345513964', '1985-01-08');
+INSERT INTO Users(user_id, firstname, secondname, email, login, passwordHash, birthdate) VALUES (2, 'Nick', 'Curtis', 'nkurtis(a)iba.com', 'Viking', '8cb2237d0679ca88db6464eac60da96345513964', '1978-01-08');
+INSERT INTO Users(user_id, firstname, secondname, email, login, passwordHash, birthdate) VALUES (3, 'John', 'Smith', 'jsmith(a)jboss.com', 'Noname', '8cb2237d0679ca88db6464eac60da96345513964', '1970-01-08');
+
+INSERT INTO shelfs(shelf_id, name, description, shelf_user_id) VALUES (1, 'Nature', 'Nature pictures', 1);
+INSERT INTO albums(album_id, name, description, shared, album_user_id, parent_shelf_id) VALUES (15, 'Water', 'Rivers pictures', true, 2, null);
+
+
+INSERT INTO albums(album_id, name, description, shared, album_user_id, parent_shelf_id) VALUES (20, 'Sport', 'Nature pictures', true, 1, 1);
+
+
+INSERT INTO albums(album_id, name, description, shared, album_user_id, parent_shelf_id) VALUES (26, 'Travel', 'Fun pictures', true, 1, null);
+INSERT INTO albums(album_id, name, description, shared, album_user_id, parent_shelf_id) VALUES (25, 'Beach', 'Fun pictures', true, 1, 1);
+INSERT INTO albums(album_id, name, description, shared, album_user_id, parent_shelf_id) VALUES (23, 'Flowers', 'Fun pictures', true, 3, null);
+
+
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (98, 'korana', 'Viking/15/korana.jpg', 'korana', '2008-12-18', 15, 'Canon S3', 1024, 1917.000000, 768, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (99, 'korana2', 'Viking/15/korana2.jpg', 'korana2', '2008-12-18', 15, 'Canon S3', 1024, 949.000000, 768, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (100, 'Re4ka', 'Viking/15/Re4ka.jpg', 'Re4ka', '2008-12-18', 15, 'Canon S3', 1024, 412.000000, 768, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (101, 'river10', 'Viking/15/river10.jpg', 'river10', '2008-12-18', 15, 'Canon S3', 1024, 276.000000, 768, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (102, 'river11', 'Viking/15/river11.jpg', 'river11', '2008-12-18', 15, 'Canon S3', 1024, 187.000000, 768, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (103, 'river12', 'Viking/15/river12.jpg', 'river12', '2008-12-18', 15, 'Canon S3', 1024, 265.000000, 768, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (104, 'river13', 'Viking/15/river13.jpg', 'river13', '2008-12-18', 15, 'Canon S3', 1024, 106.000000, 768, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (105, 'river2', 'Viking/15/river2.jpg', 'river2', '2008-12-18', 15, 'Canon S3', 1024, 130.000000, 768, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (106, 'river3', 'Viking/15/river3.jpg', 'river3', '2008-12-18', 15, 'Canon S3', 1024, 126.000000, 768, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (107, 'river4', 'Viking/15/river4.jpg', 'river4', '2008-12-18', 15, 'Canon S3', 1024, 267.000000, 768, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (108, 'river5', 'Viking/15/river5.jpg', 'river5', '2008-12-18', 15, 'Canon S3', 1024, 176.000000, 768, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (109, 'river6', 'Viking/15/river6.jpg', 'river6', '2008-12-18', 15, 'Canon S3', 1024, 126.000000, 768, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (110, 'river7', 'Viking/15/river7.jpg', 'river7', '2008-12-18', 15, 'Canon S3', 1024, 201.000000, 768, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (111, 'river8', 'Viking/15/river8.jpg', 'river8', '2008-12-18', 15, 'Canon S3', 1024, 278.000000, 768, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (112, 'river9', 'Viking/15/river9.jpg', 'river9', '2008-12-18', 15, 'Canon S3', 1024, 210.000000, 768, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (113, 'river_and_torrents', 'Viking/15/river_and_torrents.jpg', 'river_and_torrents', '2008-12-18', 15, 'Canon S3', 1024, 161.000000, 768, '2008-12-01');
+
+
+
+
+
+
+
+
+
+
+
+
+
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (500, 'Sport1', 'amarkhel/20/sport.jpg', 'Where is the Batman?', '2008-12-18', 20, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (501, 'Sport1', 'amarkhel/20/sport (1).jpg', 'Where is the Batman?', '2008-12-18', 20, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (502, 'Sport1', 'amarkhel/20/sport (2).jpg', 'Where is the Batman?', '2008-12-18', 20, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (503, 'Sport1', 'amarkhel/20/sport (3).jpg', 'Where is the Batman?', '2008-12-18', 20, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (504, 'Sport1', 'amarkhel/20/sport (4).jpg', 'Where is the Batman?', '2008-12-18', 20, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (505, 'Sport1', 'amarkhel/20/sport (5).jpg', 'Where is the Batman?', '2008-12-18', 20, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (506, 'Sport1', 'amarkhel/20/sport (6).jpg', 'Where is the Batman?', '2008-12-18', 20, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (507, 'Sport1', 'amarkhel/20/sport (7).jpg', 'Where is the Batman?', '2008-12-18', 20, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (508, 'Sport1', 'amarkhel/20/sport (8).jpg', 'Where is the Batman?', '2008-12-18', 20, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (509, 'Sport1', 'amarkhel/20/sport (9).jpg', 'Where is the Batman?', '2008-12-18', 20, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (510, 'Sport1', 'amarkhel/20/sport (10).jpg', 'Where is the Batman?', '2008-12-18', 20, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (511, 'Sport1', 'amarkhel/20/sport (11).jpg', 'Where is the Batman?', '2008-12-18', 20, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (512, 'Sport1', 'amarkhel/20/sport (12).jpg', 'Where is the Batman?', '2008-12-18', 20, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (513, 'Sport1', 'amarkhel/20/sport (13).jpg', 'Where is the Batman?', '2008-12-18', 20, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (514, 'Sport1', 'amarkhel/20/sport (14).jpg', 'Where is the Batman?', '2008-12-18', 20, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (515, 'Sport1', 'amarkhel/20/sport (15).jpg', 'Where is the Batman?', '2008-12-18', 20, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (516, 'Sport1', 'amarkhel/20/sport (16).jpg', 'Where is the Batman?', '2008-12-18', 20, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (517, 'Sport1', 'amarkhel/20/sport (17).jpg', 'Where is the Batman?', '2008-12-18', 20, 'Canon S3', 500, 20, 375, '2008-12-01');
+
+
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (557, 'Fun', 'amarkhel/23/flowers.jpg', 'Where is the Batman?', '2008-12-18', 23, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (558, 'Fun', 'amarkhel/23/flowers (1).jpg', 'Where is the Batman?', '2008-12-18', 23, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (559, 'Fun', 'amarkhel/23/flowers (2).jpg', 'Where is the Batman?', '2008-12-18', 23, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (560, 'Fun', 'amarkhel/23/flowers (3).jpg', 'Where is the Batman?', '2008-12-18', 23, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (561, 'Fun', 'amarkhel/23/flowers (4).jpg', 'Where is the Batman?', '2008-12-18', 23, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (562, 'Fun', 'amarkhel/23/flowers (5).jpg', 'Where is the Batman?', '2008-12-18', 23, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (563, 'Fun', 'amarkhel/23/flowers (6).jpg', 'Where is the Batman?', '2008-12-18', 23, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (564, 'Fun', 'amarkhel/23/flowers (7).jpg', 'Where is the Batman?', '2008-12-18', 23, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (565, 'Fun', 'amarkhel/23/flowers (8).jpg', 'Where is the Batman?', '2008-12-18', 23, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (566, 'Fun', 'amarkhel/23/flowers (9).jpg', 'Where is the Batman?', '2008-12-18', 23, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (567, 'Fun', 'amarkhel/23/flowers (10).jpg', 'Where is the Batman?', '2008-12-18', 23, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (568, 'Fun', 'amarkhel/23/flowers (11).jpg', 'Where is the Batman?', '2008-12-18', 23, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (569, 'Fun', 'amarkhel/23/flowers (12).jpg', 'Where is the Batman?', '2008-12-18', 23, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (570, 'Fun', 'amarkhel/23/flowers (13).jpg', 'Where is the Batman?', '2008-12-18', 23, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (571, 'Fun', 'amarkhel/23/flowers (14).jpg', 'Where is the Batman?', '2008-12-18', 23, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (572, 'Fun', 'amarkhel/23/flowers (15).jpg', 'Where is the Batman?', '2008-12-18', 23, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (573, 'Fun', 'amarkhel/23/flowers (16).jpg', 'Where is the Batman?', '2008-12-18', 23, 'Canon S3', 500, 20, 375, '2008-12-01');
+
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (591, 'Fun', 'amarkhel/25/beach (1).jpg', 'Where is the Batman?', '2008-12-18', 25, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (592, 'Fun', 'amarkhel/25/beach (2).jpg', 'Where is the Batman?', '2008-12-18', 25, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (593, 'Fun', 'amarkhel/25/beach (3).jpg', 'Where is the Batman?', '2008-12-18', 25, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (594, 'Fun', 'amarkhel/25/beach (4).jpg', 'Where is the Batman?', '2008-12-18', 25, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (595, 'Fun', 'amarkhel/25/beach (5).jpg', 'Where is the Batman?', '2008-12-18', 25, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (596, 'Fun', 'amarkhel/25/beach (6).jpg', 'Where is the Batman?', '2008-12-18', 25, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (597, 'Fun', 'amarkhel/25/beach (7).jpg', 'Where is the Batman?', '2008-12-18', 25, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (598, 'Fun', 'amarkhel/25/beach (8).jpg', 'Where is the Batman?', '2008-12-18', 25, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (599, 'Fun', 'amarkhel/25/beach (9).jpg', 'Where is the Batman?', '2008-12-18', 25, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (600, 'Fun', 'amarkhel/25/beach (10).jpg', 'Where is the Batman?', '2008-12-18', 25, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (601, 'Fun', 'amarkhel/25/beach (11).jpg', 'Where is the Batman?', '2008-12-18', 25, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (602, 'Fun', 'amarkhel/25/beach (12).jpg', 'Where is the Batman?', '2008-12-18', 25, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (603, 'Fun', 'amarkhel/25/beach (13).jpg', 'Where is the Batman?', '2008-12-18', 25, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (604, 'Fun', 'amarkhel/25/beach (14).jpg', 'Where is the Batman?', '2008-12-18', 25, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (605, 'Fun', 'amarkhel/25/beach.jpg', 'Where is the Batman?', '2008-12-18', 25, 'Canon S3', 500, 20, 375, '2008-12-01');
+
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (606, 'Fun', 'Noname/26/travel (1).jpg', 'Where is the Batman?', '2008-12-18', 26, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (607, 'Fun', 'Noname/26/travel (2).jpg', 'Where is the Batman?', '2008-12-18', 26, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (608, 'Fun', 'Noname/26/travel (3).jpg', 'Where is the Batman?', '2008-12-18', 26, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (609, 'Fun', 'Noname/26/travel (4).jpg', 'Where is the Batman?', '2008-12-18', 26, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (610, 'Fun', 'Noname/26/travel (5).jpg', 'Where is the Batman?', '2008-12-18', 26, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (611, 'Fun', 'Noname/26/travel (6).jpg', 'Where is the Batman?', '2008-12-18', 26, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (612, 'Fun', 'Noname/26/travel (7).jpg', 'Where is the Batman?', '2008-12-18', 26, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (613, 'Fun', 'Noname/26/travel (8).jpg', 'Where is the Batman?', '2008-12-18', 26, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (614, 'Fun', 'Noname/26/travel (9).jpg', 'Where is the Batman?', '2008-12-18', 26, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (615, 'Fun', 'Noname/26/travel (10).jpg', 'Where is the Batman?', '2008-12-18', 26, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (616, 'Fun', 'Noname/26/travel (11).jpg', 'Where is the Batman?', '2008-12-18', 26, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (617, 'Fun', 'Noname/26/travel (12).jpg', 'Where is the Batman?', '2008-12-18', 26, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (618, 'Fun', 'Noname/26/travel (13).jpg', 'Where is the Batman?', '2008-12-18', 26, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (619, 'Fun', 'Noname/26/travel (14).jpg', 'Where is the Batman?', '2008-12-18', 26, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (620, 'Fun', 'Noname/26/travel (15).jpg', 'Where is the Batman?', '2008-12-18', 26, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (621, 'Fun', 'Noname/26/travel (16).jpg', 'Where is the Batman?', '2008-12-18', 26, 'Canon S3', 500, 20, 375, '2008-12-01');
+INSERT INTO images(image_id, name, path, description, created, img_album_id, cameraModel, height, size, width, uploaded) VALUES (622, 'Fun', 'Noname/26/travel.jpg', 'Where is the Batman?', '2008-12-18', 26, 'Canon S3', 500, 20, 375, '2008-12-01');
+
+INSERT INTO metatags(metatag_id, tag) VALUES (1, 'Beach');
+INSERT INTO metatags(metatag_id, tag) VALUES (2, 'Cool');
+INSERT INTO metatags(metatag_id, tag) VALUES (3, 'Nature');
+INSERT INTO metatags(metatag_id, tag) VALUES (4, 'JBoss');
+INSERT INTO metatags(metatag_id, tag) VALUES (5, 'RichFaces');
+INSERT INTO metatags(metatag_id, tag) VALUES (6, 'Arktur');
+INSERT INTO metatags(metatag_id, tag) VALUES (7, 'Sun');
+INSERT INTO IMAGES_METATAGS(CI_IMAGE_ID, CI_METATAG_ID) VALUES(98, 1);
+INSERT INTO IMAGES_METATAGS(CI_IMAGE_ID, CI_METATAG_ID) VALUES(98, 2);
+INSERT INTO IMAGES_METATAGS(CI_IMAGE_ID, CI_METATAG_ID) VALUES(98, 3);
+INSERT INTO IMAGES_METATAGS(CI_IMAGE_ID, CI_METATAG_ID) VALUES(98, 4);
+INSERT INTO IMAGES_METATAGS(CI_IMAGE_ID, CI_METATAG_ID) VALUES(98, 5);
+INSERT INTO IMAGES_METATAGS(CI_IMAGE_ID, CI_METATAG_ID) VALUES(98, 6);
+INSERT INTO IMAGES_METATAGS(CI_IMAGE_ID, CI_METATAG_ID) VALUES(98, 7);
+INSERT INTO IMAGES_METATAGS(CI_IMAGE_ID, CI_METATAG_ID) VALUES(99, 1);
+
+INSERT INTO ALBUMS_METATAGS(CI_ALBUM_ID, CI_METATAG_ID) VALUES(23, 1);
+
+INSERT INTO comments(comment_id, date, message, image_comment_id, from_user_id) VALUES (1, '1985-01-08', 'Hello I am user', 98, 2);
+INSERT INTO comments(comment_id, date, message, image_comment_id, from_user_id) VALUES (2, '1985-01-08', 'Hello I am user2', 98, 3);
+INSERT INTO shared_albums(album_id, user_id) VALUES(15, 1);
+INSERT INTO shared_albums(album_id, user_id) VALUES(26, 1);
+INSERT INTO shared_images(image_id, user_id) VALUES(102, 1);
+INSERT INTO shared_images(image_id, user_id) VALUES(104, 1);
\ No newline at end of file
Property changes on: trunk/test-applications/realworld2/ejb/src/main/resources/import.sql
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/src/main/resources/realworld-ds.xml
===================================================================
--- trunk/test-applications/realworld2/ejb/src/main/resources/realworld-ds.xml (rev 0)
+++ trunk/test-applications/realworld2/ejb/src/main/resources/realworld-ds.xml 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!DOCTYPE datasources
+ PUBLIC "-//JBoss//DTD JBOSS JCA Config 1.5//EN"
+ "http://www.jboss.org/j2ee/dtd/jboss-ds_1_5.dtd">
+
+<datasources>
+ <local-tx-datasource>
+ <jndi-name>realWorldDatasource</jndi-name>
+ <!-- <connection-url>jdbc:postgresql://localhost:5432/realworld</connection-url>
+ <driver-class>org.postgresql.Driver</driver-class>
+ <user-name>realworld</user-name>
+ <password>realworld</password>-->
+ <connection-url>jdbc:hsqldb:.</connection-url>
+ <driver-class>org.hsqldb.jdbcDriver</driver-class>
+ <user-name>sa</user-name>
+ <password></password>
+ </local-tx-datasource>
+
+</datasources>
+
Property changes on: trunk/test-applications/realworld2/ejb/src/main/resources/realworld-ds.xml
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/ejb/src/main/resources/seam.properties
===================================================================
Property changes on: trunk/test-applications/realworld2/ejb/src/main/resources/seam.properties
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/pom.xml
===================================================================
--- trunk/test-applications/realworld2/pom.xml (rev 0)
+++ trunk/test-applications/realworld2/pom.xml 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,93 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.richfaces</groupId>
+ <artifactId>realworld</artifactId>
+ <packaging>pom</packaging>
+ <version>1.0-SNAPSHOT</version>
+ <name>sample application</name>
+ <parent>
+ <groupId>org.jboss.seam</groupId>
+ <artifactId>root</artifactId>
+ <version>2.1.0.SP1</version>
+ </parent>
+
+ <properties>
+ <projectName>realworld</projectName>
+ <richfacesVersion>3.3.0.GA</richfacesVersion>
+ <seamVersion>2.1.0.SP1</seamVersion>
+ <faceletsVersion>1.1.14</faceletsVersion>
+ <jbosshome>${project.basedir}/target/installs/jboss-4.2.3.GA/jboss-4.2.3.GA</jbosshome>
+ <jbosscontext>default</jbosscontext>
+ <jboss.installer.url>file:E:\apps\jboss\jboss-4.2.3.GA.zip</jboss.installer.url>
+ </properties>
+ <repositories>
+ <repository>
+ <id>repository.jboss.com</id>
+ <name>Jboss Repository for Maven</name>
+ <url>http://repository.jboss.com/maven2/</url>
+ </repository>
+ <repository>
+ <id>repository.exadel.com</id>
+ <name>Exadel Maven 2 Repository</name>
+ <url>http://repository.exadel.com/</url>
+ </repository>
+ </repositories>
+ <modules>
+ <module>ear</module>
+ <module>ejb</module>
+ <module>web</module>
+ <!--module>tests</module-->
+ </modules>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-ejb-plugin</artifactId>
+ <configuration>
+ <ejbVersion>3.0</ejbVersion>
+ </configuration>
+ </plugin>
+ </plugins>
+
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-eclipse-plugin</artifactId>
+ <version>2.5</version>
+ <configuration>
+ <downloadSources>true</downloadSources>
+ <downloadJavadocs>false</downloadJavadocs>
+ <projectNameTemplate>[artifactId]-[version]</projectNameTemplate>
+ <wtpmanifest>true</wtpmanifest>
+ <wtpapplicationxml>true</wtpapplicationxml>
+ <wtpversion>2.0</wtpversion>
+ <classpathContainers>
+ <classpathContainer>org.eclipse.jdt.launching.JDK_CONTAINER</classpathContainer>
+ </classpathContainers>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.5</source>
+ <target>1.5</target>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+
+
+ <profiles>
+ <profile>
+ <id>hudson</id>
+ <properties>
+ <jboss.installer.url>http://internap.dl.sourceforge.net/sourceforge/jboss/jboss-4.2.3.GA.zip</jboss.installer.url>
+ </properties>
+ </profile>
+ </profiles>
+
+</project>
\ No newline at end of file
Property changes on: trunk/test-applications/realworld2/pom.xml
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/META-INF/MANIFEST.MF
===================================================================
--- trunk/test-applications/realworld2/web/META-INF/MANIFEST.MF (rev 0)
+++ trunk/test-applications/realworld2/web/META-INF/MANIFEST.MF 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,8 @@
+Manifest-Version: 1.0
+Class-Path: avalon-framework-4.1.3.jar commons-beanutils-1.7.0.jar com
+ mons-digester-1.8.jar commons-logging-1.1.jar jboss-seam-debug-2.1.0.
+ SP1.jar jboss-seam-jul-2.1.0.SP1.jar jboss-seam-remoting-2.1.0.SP1.ja
+ r jboss-seam-ui-2.1.0.SP1.jar jsf-facelets-1.1.14.jar junit-3.8.jar l
+ og4j-1.2.14.jar logkit-1.0.1.jar metadata-extractor-2.4.0-beta1.jar r
+ ichfaces-impl-3.3.0.GA.jar richfaces-ui-3.3.0.GA.jar
+
Property changes on: trunk/test-applications/realworld2/web/META-INF/MANIFEST.MF
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/pom.xml
===================================================================
--- trunk/test-applications/realworld2/web/pom.xml (rev 0)
+++ trunk/test-applications/realworld2/web/pom.xml 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,201 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.richfaces</groupId>
+ <artifactId>realworld</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+ <artifactId>${projectName}-web</artifactId>
+ <name>WAR module</name>
+ <version>1.0-SNAPSHOT</version>
+ <packaging>war</packaging>
+ <dependencies>
+ <dependency>
+ <groupId>com.drewnoakes</groupId>
+ <artifactId>metadata-extractor</artifactId>
+ <version>2.4.0-beta1</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>3.8</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.faces</groupId>
+ <artifactId>jsf-api</artifactId>
+ <version>1.2_08</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.faces</groupId>
+ <artifactId>jsf-impl</artifactId>
+ <version>1.2_08</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ <version>2.5</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-validator</artifactId>
+ <version>3.0.0.ga</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-annotations</artifactId>
+ <version>3.3.0.ga</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.persistence</groupId>
+ <artifactId>persistence-api</artifactId>
+ <version>1.0</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.ejb</groupId>
+ <artifactId>ejb-api</artifactId>
+ <version>3.0</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.seam</groupId>
+ <artifactId>jboss-seam-remoting</artifactId>
+ <version>${seamVersion}</version>
+ <exclusions>
+ <exclusion>
+ <artifactId>javassist</artifactId>
+ <groupId>jboss</groupId>
+ </exclusion>
+ <exclusion>
+ <groupId>javax.el</groupId>
+ <artifactId>el-api</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.jboss.seam</groupId>
+ <artifactId>jboss-seam</artifactId>
+ </exclusion>
+ <exclusion>
+ <artifactId>dom4j</artifactId>
+ <groupId>dom4j</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.seam</groupId>
+ <artifactId>jboss-seam</artifactId>
+ <version>${seamVersion}</version>
+ <scope>provided</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>javax.el</groupId>
+ <artifactId>el-api</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>commons-collections</groupId>
+ <artifactId>commons-collections</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.jboss.seam</groupId>
+ <artifactId>jboss-seam-pdf</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>com.sun.facelets</groupId>
+ <artifactId>jsf-facelets</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.seam</groupId>
+ <artifactId>jboss-seam-ui</artifactId>
+ <version>${seamVersion}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.seam</groupId>
+ <artifactId>jboss-seam</artifactId>
+ </exclusion>
+ <exclusion>
+ <artifactId>commons-beanutils</artifactId>
+ <groupId>commons-beanutils</groupId>
+ </exclusion>
+ <exclusion>
+ <artifactId>commons-digester</artifactId>
+ <groupId>commons-digester</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.seam</groupId>
+ <artifactId>jboss-seam-debug</artifactId>
+ <version>${seamVersion}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>javax.el</groupId>
+ <artifactId>el-api</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>commons-collections</groupId>
+ <artifactId>commons-collections</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.jboss.seam</groupId>
+ <artifactId>jboss-seam-pdf</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>com.sun.facelets</groupId>
+ <artifactId>jsf-facelets</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.jboss.seam</groupId>
+ <artifactId>jboss-seam</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>com.sun.facelets</groupId>
+ <artifactId>jsf-facelets</artifactId>
+ <version>${faceletsVersion}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.richfaces.framework</groupId>
+ <artifactId>richfaces-impl</artifactId>
+ <version>${richfacesVersion}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.richfaces.framework</groupId>
+ <artifactId>richfaces-api</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.richfaces.ui</groupId>
+ <artifactId>richfaces-ui</artifactId>
+ <version>${richfacesVersion}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.richfaces.framework</groupId>
+ <artifactId>richfaces-api</artifactId>
+ <version>${richfacesVersion}</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.richfaces</groupId>
+ <artifactId>${projectName}-ejb</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <type>ejb</type>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-war-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Property changes on: trunk/test-applications/realworld2/web/pom.xml
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/error/ErrorHandlerBean.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/error/ErrorHandlerBean.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/error/ErrorHandlerBean.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,66 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.error;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.faces.context.FacesContext;
+
+import org.ajax4jsf.context.AjaxContext;
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.AutoCreate;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Observer;
+import org.jboss.seam.annotations.Scope;
+import org.richfaces.realworld.service.Constants;
+
+@Name("errorHandlerBean")
+(a)Scope(ScopeType.EVENT)
+@AutoCreate
+public class ErrorHandlerBean {
+ private List<Exception> errors = new ArrayList<Exception>();
+
+ public List<Exception> getErrors() {
+ return errors;
+ }
+
+ public void setErrors(List<Exception> errors) {
+ this.errors = errors;
+ }
+
+ public boolean isErrorExist(){
+ return errors.size() > 0 ;
+ }
+
+ @Observer(Constants.CLEAR_ERROR_EVENT)
+ public void clearEvents(){
+ errors.clear();
+ }
+
+ @Observer(Constants.ADD_ERROR_EVENT)
+ public void addToErrors(Exception e){
+ FacesContext context = FacesContext.getCurrentInstance();
+ AjaxContext ac = AjaxContext.getCurrentInstance(context);
+ ac.addRenderedArea(Constants.ERROR_ID);
+ errors.add(e);
+ }
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/error/ErrorHandlerBean.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileItem.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileItem.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileItem.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,76 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.fileupload;
+
+import java.io.File;
+
+import org.richfaces.realworld.domain.Image;
+
+public class FileItem {
+
+ private Image image = new Image();
+
+ private boolean selected;
+
+ private long length;
+
+ private byte[] data;
+
+ private File file;
+
+ public byte[] getData() {
+ return data;
+ }
+ public void setData(byte[] data) {
+ this.data = data;
+ }
+
+ public long getLength() {
+ return length;
+ }
+ public void setLength(long length) {
+ this.length = length;
+ }
+
+ public boolean isSelected() {
+ return selected;
+ }
+
+ public void setSelected(boolean selected) {
+ this.selected = selected;
+ }
+
+ public Image getImage() {
+ return image;
+ }
+
+ public void setImage(Image image) {
+ this.image = image;
+ }
+ public File getFile() {
+ return file;
+ }
+ public void setFile(File file) {
+ this.file = file;
+ }
+
+
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileItem.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileManager.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileManager.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileManager.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,255 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.fileupload;
+
+import java.awt.image.BufferedImage;
+import java.io.ByteArrayInputStream;
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.List;
+
+import javax.faces.context.FacesContext;
+import javax.imageio.ImageIO;
+
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Scope;
+import org.richfaces.realworld.service.Constants;
+import org.richfaces.realworld.util.ImageUtils;
+
+@Name("fileManager")
+(a)Scope(ScopeType.CONVERSATION)
+public class FileManager {
+
+
+ private static final String _MEDIUM = "_medium";
+ private static final String _MINI = "_mini";
+ private String uploadRoot;
+
+ public String getUploadRoot() {
+ return uploadRoot;
+ }
+
+ public void setUploadRoot(String uploadRoot) {
+ this.uploadRoot = uploadRoot;
+ }
+
+ public FileManager(){
+ FacesContext fc = FacesContext.getCurrentInstance();
+ if(fc!=null){
+ this.setUploadRoot(fc.getExternalContext().getInitParameter(Constants.UPLOAD_ROOT));
+ }
+ }
+
+ public String getFileSeparator() {
+ return System.getProperty(Constants.FILE_SEPARATOR);
+ }
+
+ public boolean isDirectoryPresent(String directory) {
+ String fullPath = getAbsolutePath(directory);
+ File file = new File(fullPath);
+ return file.exists() && file.isDirectory();
+ }
+
+ public void deleteDirectory(String... directories) {
+ String directory = new String();
+ for (String chunk: directories){
+ directory += chunk + getFileSeparator();
+ }
+ String fullPath = getAbsolutePath(directory);
+ File file = new File(fullPath);
+ if(file.exists()){
+ for(String f :file.list()){
+ File temp = new File(fullPath+getFileSeparator()+f);
+ temp.delete();
+ }
+ file.delete();
+ }
+ }
+
+ public String concat(String... directories){
+ String directory = new String();
+ for (String chunk: directories){
+ directory += chunk + getFileSeparator();
+ }
+ return directory;
+ }
+
+ public String concatwithSlash(String... directories){
+ String directory = new String();
+ for (String chunk: directories){
+ directory += chunk + Constants.SLASH;
+ }
+ return directory;
+ }
+
+ public boolean renameDirectory(String directoryOld, String directoryNew){
+ String fullPath = getAbsolutePath(directoryOld);
+ File fileOld = new File(fullPath);
+ File fileNew = new File(getUploadRoot() + directoryNew);
+ createDirectoryIfNotExist(directoryNew);
+ if(fileNew.exists())
+ if( fileNew.isDirectory() ){
+ return false;
+ }else{
+ fileNew.delete();
+ }
+ fileOld.renameTo(fileNew);
+ return true;
+ }
+
+ public void addDirectory(String... directories) {
+ String directory = new String();
+ for (String chunk: directories){
+ directory += chunk;
+ }
+ String fullPath = getAbsolutePath(directory);
+ File file = new File(fullPath);
+ file.mkdirs();
+ }
+
+ public boolean addImage(String fileName, byte[] data) {
+ createDirectoryIfNotExist(fileName);
+ /*
+ try {
+
+ writeFileTodisk(data, fileName, 0, 0, "" );
+ writeFileTodisk(data, fileName, 100, 100, _MINI );
+ writeFileTodisk(data, fileName, 500, 500, _MEDIUM );
+
+ } catch (IOException e) {
+ return false;
+ }
+ */
+ return true;
+ }
+
+ private void writeFileTodisk(byte[] data, String fileName, int width, int height, String format) throws IOException{
+ InputStream inputStream = new ByteArrayInputStream(data);
+ BufferedImage bsrc = ImageIO.read(inputStream);
+ if(width == 0){
+ String dest = getUploadRoot() + fileName;
+ ImageIO.write(bsrc, Constants.JPG, new File(dest));
+ return;
+ }
+ BufferedImage bdest = new ImageUtils(bsrc).resizeImage(width, height);
+ /*
+ BufferedImage bdest = new BufferedImage(width, height,
+ BufferedImage.TYPE_INT_RGB);
+ Graphics2D g = bdest.createGraphics();
+ AffineTransform at = AffineTransform.getScaleInstance((double) width
+ / bsrc.getWidth(), (double) height / bsrc.getHeight());
+ Map<RenderingHints.Key, Object> hints = new HashMap<RenderingHints.Key, Object>();
+ hints.put(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);
+ g.addRenderingHints(hints);
+ g.drawRenderedImage(bsrc, at);
+ */
+ String dest = getUploadRoot() + transformPath(fileName, format);
+
+ ImageIO.write(bdest, Constants.JPG, new File(dest));
+ inputStream.close();
+ }
+
+ public String transformPath(String target, String substitute){
+ String begin = target.substring(0, target.lastIndexOf(Constants.DOT));
+ String end = target.substring(target.lastIndexOf(Constants.DOT));
+ return begin + substitute + end;
+ }
+
+ public void deleteImage(String fileName) {
+ String fullPath = getAbsolutePath(fileName);
+ deleteImage(new File(fullPath));
+ deleteImage(new File(transformPath(fullPath, _MINI)));
+ deleteImage(new File(transformPath(fullPath, _MEDIUM)));
+ }
+
+ private void deleteImage(File file){
+ if(file.exists()){
+ file.delete();
+ }
+ }
+
+ public String getPathOfImage(String path){
+ int i = path.lastIndexOf(Constants.SLASH);
+ return path.substring(i);
+ }
+
+ public void renameImage(String fileNameOld, String fileNameNew) {
+ createDirectoryIfNotExist(fileNameNew);
+ String fullPath = getAbsolutePath(fileNameOld);
+ renameImage(new File(getAbsolutePath(fileNameNew)), new File(fullPath));
+ renameImage(new File(getAbsolutePath(transformPath(fileNameNew, _MINI))), new File(transformPath(fullPath, _MINI)));
+ renameImage(new File(getAbsolutePath(transformPath(fileNameNew, _MEDIUM))), new File(transformPath(fullPath, _MEDIUM)));
+ }
+
+ private void renameImage(File fileNew, File fileOld){
+ if(fileNew.exists()){
+ fileNew.delete();
+ }
+ fileOld.renameTo(fileNew);
+ }
+
+ private void createDirectoryIfNotExist(String fileNameNew) {
+ int lastIndexOf = fileNameNew.lastIndexOf(getFileSeparator());
+ if(lastIndexOf > 0){
+ String directory = fileNameNew.substring(0, lastIndexOf);
+ File file = new File(getUploadRoot()+directory);
+ if(!file.exists()){
+ file.mkdirs();
+ }
+ }
+ }
+
+ public boolean isImagePresent(String fileName) {
+ String fullPath = getAbsolutePath(fileName);
+ File file = new File(fullPath);
+ return file.exists() && !file.isDirectory();
+ }
+
+ public File getImage(String fileName){
+ if(isImagePresent(fileName)){
+ return new File(getAbsolutePath(fileName));
+ }
+ return null;
+ }
+
+ private String getAbsolutePath(String fileName) {
+ return getUploadRoot() + fileName;
+ }
+
+ public String transformToServerPath(String filename){
+ String[] res = filename.split(Constants.SLASH);
+ StringBuilder sb = new StringBuilder();
+ sb.append(res[0]);
+ for(int i = 1; i < res.length; i++){
+ sb.append(this.getFileSeparator() + res[i]);
+ }
+ String string = sb.toString();
+ return string;
+ }
+
+ public void deleteDirectories(List<String> directoriesToDelete) {
+ for(String directory:directoriesToDelete){
+ deleteDirectory(directory);
+ }
+ }
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileManager.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileManagerTest.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileManagerTest.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileManagerTest.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,135 @@
+package org.richfaces.realworld.fileupload;
+
+import java.io.IOException;
+
+import junit.framework.TestCase;
+
+public class FileManagerTest extends TestCase {
+
+ protected void setUp() throws Exception {
+ fileManager=new FileManager();
+ fileManager.setUploadRoot("C:/Upload/");
+ }
+
+ protected void tearDown() throws Exception {
+ }
+
+private byte[] image = new byte[40];
+ private FileManager fileManager;
+ public void testIsDirectoryPresent() {
+ fileManager.addDirectory("amarkhel");
+ assertEquals(fileManager.isDirectoryPresent("amarkhel"), true);
+ assertEquals(fileManager.isDirectoryPresent("amarkhel2"), false);
+ fileManager.deleteDirectory("amarkhel");
+ }
+
+ public void testDeleteDirectory() {
+ fileManager.addDirectory("amarkhel");
+ assertEquals(fileManager.isDirectoryPresent("amarkhel"), true);
+ fileManager.deleteDirectory("amarkhel");
+ assertEquals(fileManager.isDirectoryPresent("amarkhel"), false);
+ }
+
+ public void testRenameDirectory() throws Exception {
+ fileManager.addDirectory("amarkhel");
+ assertEquals(fileManager.isDirectoryPresent("amarkhel"), true);
+ fileManager.renameDirectory("amarkhel", "amarkhel2");
+ assertEquals(fileManager.isDirectoryPresent("amarkhel"), false);
+ assertEquals(fileManager.isDirectoryPresent("amarkhel2"), true);
+ fileManager.deleteDirectory("amarkhel2");
+ }
+
+ public void testRenameDirectory2(){
+ fileManager.addDirectory("amarkhel");
+ fileManager.addDirectory("amarkhel2");
+ assertEquals(fileManager.isDirectoryPresent("amarkhel"), true);
+ try {
+ fileManager.renameDirectory("amarkhel", "amarkhel2");
+ } catch (Exception e) {
+ assertTrue(true);
+ }
+
+ assertEquals(fileManager.isDirectoryPresent("amarkhel"), true);
+ assertEquals(fileManager.isDirectoryPresent("amarkhel2"), true);
+ fileManager.deleteDirectory("amarkhel");
+ fileManager.deleteDirectory("amarkhel2");
+ }
+
+ public void testRenameDirectory3() throws Exception {
+ fileManager.addDirectory("a"+System.getProperty("file.separator")+"amarkhel");
+ assertEquals(fileManager.isDirectoryPresent("a"+System.getProperty("file.separator")+"amarkhel"), true);
+ fileManager.renameDirectory("a"+System.getProperty("file.separator")+"amarkhel", "b"+System.getProperty("file.separator")+"amarkhel");
+ assertEquals(fileManager.isDirectoryPresent("a"+System.getProperty("file.separator")+"amarkhel"), false);
+ assertEquals(fileManager.isDirectoryPresent("b"+System.getProperty("file.separator")+"amarkhel"), true);
+ fileManager.deleteDirectory("b"+System.getProperty("file.separator")+"amarkhel");
+ }
+
+ public void testRenameDirectory4() throws Exception {
+ fileManager.addDirectory("a"+System.getProperty("file.separator")+"a"+System.getProperty("file.separator")+"amarkhel");
+ assertEquals(fileManager.isDirectoryPresent("a"+System.getProperty("file.separator")+"a"+System.getProperty("file.separator")+"amarkhel"), true);
+ fileManager.renameDirectory("a"+System.getProperty("file.separator")+"a"+System.getProperty("file.separator")+"amarkhel", "b"+System.getProperty("file.separator")+"b"+System.getProperty("file.separator")+"amarkhel");
+ assertEquals(fileManager.isDirectoryPresent("a"+System.getProperty("file.separator")+"a"+System.getProperty("file.separator")+"amarkhel"), false);
+ assertEquals(fileManager.isDirectoryPresent("b"+System.getProperty("file.separator")+"b"+System.getProperty("file.separator")+"amarkhel"), true);
+ fileManager.deleteDirectory("b"+System.getProperty("file.separator")+"b"+System.getProperty("file.separator")+"amarkhel");
+ }
+
+ public void testAddDirectory() {
+ assertEquals(fileManager.isDirectoryPresent("amarkhel"), false);
+ fileManager.addDirectory("amarkhel");
+ assertEquals(fileManager.isDirectoryPresent("amarkhel"), true);
+ fileManager.deleteDirectory("amarkhel");
+ }
+
+ public void testAddDirectory2() {
+ assertEquals(fileManager.isDirectoryPresent("a"+System.getProperty("file.separator")+"amarkhel"), false);
+ fileManager.addDirectory("a"+System.getProperty("file.separator")+"amarkhel");
+ assertEquals(fileManager.isDirectoryPresent("a"+System.getProperty("file.separator")+"amarkhel"), true);
+ fileManager.deleteDirectory("a"+System.getProperty("file.separator")+"amarkhel");
+ }
+
+ public void testAddImage() throws IOException {
+ assertEquals(fileManager.isImagePresent("amarkhel.gif"), false);
+ fileManager.addImage("amarkhel.gif", image);
+ assertEquals(fileManager.isImagePresent("amarkhel.gif"), true);
+ fileManager.deleteImage("amarkhel.gif");
+ }
+
+ public void testDeleteImage() throws IOException {
+ fileManager.addImage("amarkhel.gif", image);
+ assertEquals(fileManager.isImagePresent("amarkhel.gif"), true);
+ fileManager.deleteImage("amarkhel.gif");
+ assertEquals(fileManager.isImagePresent("amarkhel.gif"), false);
+ }
+
+ public void testRenameImage() throws IOException {
+ fileManager.addImage("amarkhel.gif", image);
+ assertEquals(fileManager.isImagePresent("amarkhel.gif"), true);
+ fileManager.renameImage("amarkhel.gif", "amarkhel2.gif");
+ assertEquals(fileManager.isImagePresent("amarkhel.gif"), false);
+ assertEquals(fileManager.isImagePresent("amarkhel2.gif"), true);
+ fileManager.deleteImage("amarkhel2.gif");
+ }
+
+ public void testRenameImage2() throws IOException {
+ fileManager.addImage("a"+System.getProperty("file.separator")+"amarkhel.gif", image);
+ assertEquals(fileManager.isImagePresent("a"+System.getProperty("file.separator")+"amarkhel.gif"), true);
+ fileManager.renameImage("a"+System.getProperty("file.separator")+"amarkhel.gif", "b"+System.getProperty("file.separator")+"amarkhel2.gif");
+ assertEquals(fileManager.isImagePresent("a"+System.getProperty("file.separator")+"amarkhel.gif"), false);
+ assertEquals(fileManager.isImagePresent("b"+System.getProperty("file.separator")+"amarkhel2.gif"), true);
+ fileManager.deleteImage("b"+System.getProperty("file.separator")+"amarkhel2.gif");
+ fileManager.deleteDirectory("b");
+ fileManager.deleteDirectory("a");
+ }
+
+ public void testIsImagePresent() throws IOException {
+ fileManager.addImage("amarkhel.gif", image);
+ assertEquals(fileManager.isImagePresent("amarkhel.gif"), true);
+ assertEquals(fileManager.isImagePresent("amarkhel3.gif"), false);
+ fileManager.deleteImage("amarkhel.gif");
+ fileManager.addImage("am"+System.getProperty("file.separator")+"amarkhel.gif", image);
+ assertEquals(fileManager.isImagePresent("am"+System.getProperty("file.separator")+"amarkhel.gif"), true);
+ fileManager.deleteImage("am"+System.getProperty("file.separator")+"amarkhel.gif");
+ fileManager.deleteDirectory("am");
+ }
+
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileManagerTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileUploadBean.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileUploadBean.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileUploadBean.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,250 @@
+/**
+ * License Agreement.
+ *
+ * Rich Faces - Natural Ajax for Java Server Faces (JSF)
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+package org.richfaces.realworld.fileupload;
+
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Observer;
+import org.jboss.seam.annotations.Out;
+import org.jboss.seam.annotations.Scope;
+import org.jboss.seam.core.Events;
+import org.richfaces.event.UploadEvent;
+import org.richfaces.model.UploadItem;
+import org.richfaces.realworld.domain.Image;
+import org.richfaces.realworld.domain.MetaTag;
+import org.richfaces.realworld.domain.User;
+import org.richfaces.realworld.navigation.NavigationEnum;
+import org.richfaces.realworld.service.Constants;
+import org.richfaces.realworld.util.ConversationState;
+import org.richfaces.realworld.util.ImageUtils;
+
+import com.drew.imaging.jpeg.JpegMetadataReader;
+import com.drew.imaging.jpeg.JpegProcessingException;
+import com.drew.metadata.Directory;
+import com.drew.metadata.Metadata;
+import com.drew.metadata.MetadataException;
+import com.drew.metadata.exif.ExifDirectory;
+import com.drew.metadata.jpeg.JpegDirectory;
+
+/**
+ * @author $Autor$
+ *
+ */
+@Name("fileUploadBean")
+(a)Scope(ScopeType.CONVERSATION)
+public class FileUploadBean implements Serializable {
+
+ @In
+ private User user;
+ @In("#{messages['file_processing_error']}")
+ private String FILE_PROCESSING_ERROR;
+ @In("#{messages['file_saving_error']}")
+ private String FILE_SAVE_ERROR;
+ @In(create = true) @Out
+ FileWrapper fileWrapper;
+
+ @Out(required=false) FileItem file1;
+ @Out(required=false) FileItem file2;
+ @Out(required=false) FileItem file3;
+ @In @Out
+ private ConversationState conversationState;
+
+ @In(create = true)
+ private FileManager fileManager;
+
+ @In("#{messages['samplename']}")
+ private String SAMPLE_NAME;
+
+ @In("#{messages['sampledesc']}")
+ private String SAMPLE_DESCRIPTION;
+
+ private static final long serialVersionUID = 4969087557225414955L;
+
+ private boolean fileUploadRendered;
+
+ public synchronized void listener(UploadEvent event) throws Exception {
+ UploadItem item = event.getUploadItem();
+
+ FileItem file = new FileItem();
+
+ file.setLength(item.getFileSize());
+ //file.setData(item.getData());
+ file.setFile(item.getFile());
+ file.setSelected(false);
+ Image image = constructImage(item, file);
+
+ resizeImages(item, fileManager.getUploadRoot() + image.getPath());
+ try {
+ extractMetadata(file, image);
+ } catch (JpegProcessingException e1) {
+ Events.instance().raiseEvent(Constants.ADD_ERROR_EVENT, new Exception(FILE_PROCESSING_ERROR));
+ return;
+ } catch (MetadataException me) {
+ Events.instance().raiseEvent(Constants.ADD_ERROR_EVENT, new Exception(FILE_PROCESSING_ERROR));
+ return;
+ }
+ file.setImage(image);
+
+ fileWrapper.getFiles().add(file);
+ file1 = fileWrapper.getFiles().get(fileWrapper.getFiles().size()-1);
+ if(fileWrapper.getFiles().size()-2 >=0){
+ file2 = fileWrapper.getFiles().get(fileWrapper.getFiles().size()-2);
+ }
+ if(fileWrapper.getFiles().size()-3 >=0){
+ file3 = fileWrapper.getFiles().get(fileWrapper.getFiles().size()-3);
+ }
+ }
+
+ private void resizeImages(UploadItem src, String pathToUpload) throws IOException {
+ ImageUtils.resizeImage(src, pathToUpload, ImageUtils.MINI, ImageUtils.MEDIUM);
+ }
+
+ @Observer(Constants.FILE_UPLOAD_CLEAR_EVENT)
+ public void clearUploadData() {
+ fileWrapper.getFiles().clear();
+ }
+
+ public void clearSelectedData() {
+ for (int i = 0; i < fileWrapper.getFiles().size(); i++) {
+ if (fileWrapper.getFiles().get(i).isSelected()) {
+ fileWrapper.getFiles().remove(i);
+ }
+ }
+ }
+
+ public void storeSelectedData() {
+ List<FileItem> temp = new ArrayList<FileItem>();
+ for (FileItem file : fileWrapper.getFiles()) {
+ if (file.isSelected()) {
+ // Save file to disk
+ String fileName = fileManager.transformToServerPath(file.getImage().getPath());
+ if(!fileManager.addImage(fileName, file.getData())){
+ Events.instance().raiseEvent(Constants.ADD_ERROR_EVENT, new Exception(FILE_SAVE_ERROR));
+ }
+ // Update domain model
+ Events.instance().raiseEvent(Constants.ADD_IMAGE_EVENT, file.getImage());
+ } else {
+ temp.add(file);
+ }
+ }
+ fileWrapper.getFiles().clear();
+ fileWrapper.getFiles().addAll(temp);
+ }
+
+ public void storeAll() {
+ for (FileItem file : fileWrapper.getFiles()) {
+ // Save file to disk
+ String fileName = fileManager.transformToServerPath(file.getImage()
+ .getPath());
+ if(!fileManager.addImage(fileName, file.getData())){
+ Events.instance().raiseEvent(Constants.ADD_ERROR_EVENT, new Exception(FILE_SAVE_ERROR));
+ }
+ // Update domain model
+ Events.instance().raiseEvent(Constants.ADD_IMAGE_EVENT, file.getImage());
+ }
+ fileWrapper.getFiles().clear();
+ Events.instance().raiseEvent(Constants.UPDATE_MAIN_AREA_EVENT,NavigationEnum.IMAGE_PREVIEW);
+ }
+
+ public boolean isFileUploadRendered() {
+ return fileUploadRendered;
+ }
+
+ public void setFileUploadRendered(boolean fileUploadRendered) {
+ this.fileUploadRendered = fileUploadRendered;
+ }
+
+ @Observer(Constants.SHOW_FILE_UPLOAD_EVENT)
+ public void showFileUpload(boolean result) {
+ this.setFileUploadRendered(result);
+ clearUploadData();
+ }
+
+
+ private Image constructImage(UploadItem item, FileItem file) {
+ Image image = new Image();
+ image.setUploaded(new Date());
+ image.setDescription(SAMPLE_DESCRIPTION);
+ image.setName(SAMPLE_NAME);
+ image.setSize(file.getLength());
+ String albumPath = conversationState.getSelectedAlbum().getId().toString();
+ image.setPath(user.getLogin() + Constants.SLASH + albumPath + item.getFileName());
+ image.setAlbumName(conversationState.getSelectedAlbum().getName());
+ image.setAlbum(conversationState.getSelectedAlbum());
+ return image;
+ }
+
+ private void extractMetadata(FileItem file, Image image)
+ throws JpegProcessingException, MetadataException, FileNotFoundException {
+ InputStream in = new FileInputStream(file.getFile());
+ Metadata metadata = JpegMetadataReader.readMetadata(in);
+ Directory exifDirectory = metadata.getDirectory(ExifDirectory.class);
+ Directory jpgDirectory = metadata.getDirectory(JpegDirectory.class);
+ setupCameraModel(image, exifDirectory);
+ setupDimensions(image, exifDirectory, jpgDirectory);
+ setupCreatedDate(image, exifDirectory);
+ }
+
+ private void setupCreatedDate(Image image, Directory exifDirectory)
+ throws MetadataException {
+ if (exifDirectory.containsTag(ExifDirectory.TAG_DATETIME_ORIGINAL)) {
+ Date time = exifDirectory.getDate(ExifDirectory.TAG_DATETIME_ORIGINAL);
+ image.setCreated(time);
+ }
+ }
+
+ private void setupDimensions(Image image, Directory exifDirectory,
+ Directory jpgDirectory) throws MetadataException {
+ if (exifDirectory.containsTag(ExifDirectory.TAG_EXIF_IMAGE_WIDTH) && exifDirectory.containsTag(ExifDirectory.TAG_EXIF_IMAGE_HEIGHT)) {
+ int width = exifDirectory.getInt(ExifDirectory.TAG_EXIF_IMAGE_WIDTH);
+ image.setWidth(width);
+ int height = exifDirectory.getInt(ExifDirectory.TAG_EXIF_IMAGE_HEIGHT);
+ image.setHeight(height);
+ } else {
+ if (jpgDirectory.containsTag(JpegDirectory.TAG_JPEG_IMAGE_HEIGHT)) {
+ int width = jpgDirectory.getInt(JpegDirectory.TAG_JPEG_IMAGE_WIDTH);
+ image.setWidth(width);
+ int height = jpgDirectory.getInt(JpegDirectory.TAG_JPEG_IMAGE_HEIGHT);
+ image.setHeight(height);
+ }
+ }
+ }
+
+ private void setupCameraModel(Image image, Directory exifDirectory) {
+ if (exifDirectory.containsTag(ExifDirectory.TAG_MODEL)) {
+ String cameraModel = exifDirectory.getString(ExifDirectory.TAG_MODEL);
+ image.setCameraModel(cameraModel);
+ }else{
+ image.setCameraModel("");
+ }
+ }
+}
\ No newline at end of file
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileUploadBean.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileWrapper.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileWrapper.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileWrapper.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,45 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.fileupload;
+
+import java.util.ArrayList;
+
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Scope;
+
+@Name("fileWrapper")
+(a)Scope(ScopeType.SESSION)
+public class FileWrapper {
+
+ private ArrayList<FileItem> files = new ArrayList<FileItem>();
+ public int getSize() {
+ return getFiles().size();
+ }
+
+ public ArrayList<FileItem> getFiles() {
+ return files;
+ }
+
+ public void setFiles(ArrayList<FileItem> files) {
+ this.files = files;
+ }
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/FileWrapper.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/ImageLoader.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/ImageLoader.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/ImageLoader.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,124 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.fileupload;
+
+import java.awt.image.BufferedImage;
+import java.io.BufferedInputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.io.Serializable;
+
+import javax.imageio.ImageIO;
+
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Scope;
+import org.jboss.seam.core.Events;
+import org.richfaces.realworld.service.Constants;
+
+@Name("imageLoader")
+(a)Scope(ScopeType.CONVERSATION)
+public class ImageLoader implements Serializable{
+
+ private static final long serialVersionUID = -1572789608594870285L;
+
+ @In(create=true)
+ FileManager fileManager;
+ @In("#{messages['file_processing_error']}")
+ private String FILE_PROCESSING_ERROR;
+ @In(create=true)
+ FileWrapper fileWrapper;
+ public synchronized void paintImageFromByteArray(OutputStream stream, Object data) throws IOException {
+ int index;
+ if(data instanceof Integer){
+ index = (Integer)data;
+ }else{
+ index = ((Long)data).intValue();
+ }
+ FileInputStream fileInputStream = new FileInputStream(fileWrapper.getFiles().get(index).getFile());
+ int read = -1;
+ byte [] bytes = new byte [4096];
+ while ((read = fileInputStream.read(bytes)) != -1) {
+ if (read == 0) {
+ break;
+ }
+ stream.write(bytes);
+ }
+ //stream.write(fileWrapper.getFiles().get(index).getData());
+ }
+
+ public synchronized void paintSearchImage(OutputStream stream, Object object)
+ throws IOException {
+ File image = fileManager.getImage(object.toString());
+ InputStream paintData = null;
+ byte[] data = new byte[(int) image.length() - 1];
+ FileInputStream fileInputStream = null;
+ BufferedInputStream bufferedInputStream = null;
+ if (image != null) {
+ try {
+ fileInputStream = new FileInputStream(image);
+ bufferedInputStream = new BufferedInputStream(fileInputStream);
+ paintData = bufferedInputStream;
+ paintData.read(data);
+ } catch (FileNotFoundException e) {
+ Events.instance().raiseEvent(Constants.ADD_ERROR_EVENT, new Exception(FILE_PROCESSING_ERROR));
+ return;
+ } finally {
+ fileInputStream.close();
+ bufferedInputStream.close();
+ paintData.close();
+ }
+ }
+ stream.write(data);
+ }
+
+ public synchronized void paintImage(OutputStream out, Object data) throws IOException{
+ if (null == data) {
+ return;
+ }
+ File imageResource = fileManager.getImage(data.toString());
+ if (imageResource != null) {
+ FileInputStream fileInputStream = new FileInputStream(imageResource);
+ BufferedInputStream bufferedInputStream = new BufferedInputStream(fileInputStream);
+ InputStream paintData = bufferedInputStream;
+ if (null == paintData) {
+ Events.instance().raiseEvent(Constants.ADD_ERROR_EVENT, new Exception(FILE_PROCESSING_ERROR));
+ return;
+ }
+ try {
+ BufferedImage images = ImageIO.read(paintData);
+ ImageIO.write(images, Constants.JPEG, out);
+ } catch (Exception e) {
+ Events.instance().raiseEvent(Constants.ADD_ERROR_EVENT, new Exception(FILE_PROCESSING_ERROR));
+ return;
+ } finally {
+ fileInputStream.close();
+ bufferedInputStream.close();
+ paintData.close();
+ }
+ }
+ }
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/fileupload/ImageLoader.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/listener/CopyFile.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/listener/CopyFile.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/listener/CopyFile.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,206 @@
+package org.richfaces.realworld.listener;
+
+import java.io.*;
+import java.util.zip.*;
+
+
+
+/**
+ * Command line program to copy a file to another directory.
+ *
+ * @author Marco Schmidt
+ */
+public class CopyFile {
+ // constant values for the override option
+ public static final int OVERWRITE_ALWAYS = 1;
+ public static final int OVERWRITE_NEVER = 2;
+ public static final int OVERWRITE_ASK = 3;
+
+ // program options initialized to default values
+ private static int bufferSize = 4 * 1024;
+ private static boolean clock = true;
+ private static boolean copyOriginalTimestamp = true;
+ private static boolean verify = true;
+ private static int override = OVERWRITE_ASK;
+
+ public static Long copyFile(File srcFile, File destFile) throws IOException {
+ InputStream in = new FileInputStream(srcFile);
+ OutputStream out = new FileOutputStream(destFile);
+ long millis = System.currentTimeMillis();
+ CRC32 checksum = null;
+ if (verify) {
+ checksum = new CRC32();
+ checksum.reset();
+ }
+ byte[] buffer = new byte[bufferSize];
+ int bytesRead;
+ while ((bytesRead = in.read(buffer)) >= 0) {
+ if (verify) {
+ checksum.update(buffer, 0, bytesRead);
+ }
+ out.write(buffer, 0, bytesRead);
+ }
+ out.close();
+ in.close();
+ if (clock) {
+ millis = System.currentTimeMillis() - millis;
+ System.out.println("Second(s): " + (millis / 1000L));
+ }
+ if (verify) {
+ return new Long(checksum.getValue());
+ } else {
+ return null;
+ }
+ }
+
+ public static Long createChecksum(File file) throws IOException {
+ long millis = System.currentTimeMillis();
+ InputStream in = new FileInputStream(file);
+ CRC32 checksum = new CRC32();
+ checksum.reset();
+ byte[] buffer = new byte[bufferSize];
+ int bytesRead;
+ while ((bytesRead = in.read(buffer)) >= 0) {
+ checksum.update(buffer, 0, bytesRead);
+ }
+ in.close();
+ if (clock) {
+ millis = System.currentTimeMillis() - millis;
+ System.out.println("Second(s): " + (millis / 1000L));
+ }
+ return new Long(checksum.getValue());
+ }
+
+ /**
+ * Determine if data is to be copied to given file. Take into consideration
+ * override option and ask user in case file exists and override option is
+ * ask.
+ *
+ * @param file
+ * File object for potential destination file
+ * @return true if data is to be copied to file, false if not
+ */
+ public static boolean doCopy(File file) {
+ boolean exists = file.exists();
+ if (override == OVERWRITE_ALWAYS || !exists) {
+ return true;
+ } else if (override == OVERWRITE_NEVER) {
+ return false;
+ } else if (override == OVERWRITE_ASK) {
+ return readYesNoFromStandardInput("File exists. "
+ + "Overwrite (y/n)?");
+ } else {
+ throw new InternalError("Program error. Invalid "
+ + "value for override: " + override);
+ }
+ }
+
+ public static void main(String[] args) throws IOException {
+ // make sure there are exactly two arguments
+ if (args.length != 2) {
+ System.err.println("Usage: CopyFile SRC-FILE-NAME DEST-DIR-NAME");
+ System.exit(1);
+ }
+ // make sure the source file is indeed a readable file
+ File srcFile = new File(args[0]);
+ if (!srcFile.isFile() || !srcFile.canRead()) {
+ System.err.println("Not a readable file: " + srcFile.getName());
+ System.exit(1);
+ }
+ // make sure the second argument is a directory
+ File destDir = new File(args[1]);
+ if (!destDir.isDirectory()) {
+ System.err.println("Not a directory: " + destDir.getName());
+ System.exit(1);
+ }
+ // create File object for destination file
+ File destFile = new File(destDir, srcFile.getName());
+
+ // check if copying is desired given overwrite option
+ if (!doCopy(destFile)) {
+ return;
+ }
+
+ // copy file, optionally creating a checksum
+ Long checksumSrc = copyFile(srcFile, destFile);
+
+ // copy timestamp of last modification
+ if (copyOriginalTimestamp) {
+ if (!destFile.setLastModified(srcFile.lastModified())) {
+ System.err.println("Error: Could not set "
+ + "timestamp of copied file.");
+ }
+ }
+
+ // optionally verify file
+ if (verify) {
+ System.out.print("Verifying destination file...");
+ Long checksumDest = createChecksum(destFile);
+ if (checksumSrc.equals(checksumDest)) {
+ System.out.println(" OK, files are equal.");
+ } else {
+ System.out.println(" Error: Checksums differ.");
+ }
+ }
+ }
+
+ /**
+ * Print a message to standard output and read lines from standard input
+ * until yes or no (y or n) is entered.
+ *
+ * @param message
+ * informative text to be answered by user
+ * @return user answer, true for yes, false for no.
+ */
+ public static boolean readYesNoFromStandardInput(String message) {
+ System.out.println(message);
+ String line;
+ BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
+ Boolean answer = null;
+ try {
+ while ((line = in.readLine()) != null) {
+ line = line.toLowerCase();
+ if ("y".equals(line) || "yes".equals(line)) {
+ answer = Boolean.TRUE;
+ break;
+ } else if ("n".equals(line) || "no".equals(line)) {
+ answer = Boolean.FALSE;
+ break;
+ } else {
+ System.out.println("Could not understand answer (\"" + line
+ + "\"). Please use y for yes or n for no.");
+ }
+ }
+ if (answer == null) {
+ throw new IOException("Unexpected end of input from stdin.");
+ }
+ in.close();
+ return answer.booleanValue();
+ } catch (IOException ioe) {
+ throw new InternalError(
+ "Cannot read from stdin or write to stdout.");
+ }
+ }
+
+ public static void copyDirectory(File srcDir, File dstDir)
+ throws IOException {
+
+ if (".svn".equals(srcDir.getName())) {
+ return;
+ }
+
+ if (srcDir.isDirectory()) {
+ if (!dstDir.exists()) {
+ dstDir.mkdir();
+ }
+
+ String[] children = srcDir.list();
+ for (int i = 0; i < children.length; i++) {
+ copyDirectory(new File(srcDir, children[i]), new File(dstDir,
+ children[i]));
+ }
+ } else {
+ CopyFile.copyFile(srcDir, dstDir);
+ }
+ }
+}
\ No newline at end of file
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/listener/CopyFile.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/listener/CopyImagesStuff.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/listener/CopyImagesStuff.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/listener/CopyImagesStuff.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,68 @@
+/**
+ *
+ */
+package org.richfaces.realworld.listener;
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.net.URL;
+
+import javax.servlet.ServletContextEvent;
+import javax.servlet.ServletContextListener;
+
+import org.jboss.seam.annotations.Logger;
+import org.jboss.seam.log.Log;
+import org.jboss.seam.web.LoggingFilter;
+
+/**
+ * @author Andrey Markavtsov
+ *
+ */
+public class CopyImagesStuff implements ServletContextListener {
+
+ static final String IMAGE_SRC = "/WEB-INF/Upload";
+
+ static final String UPLOAD_ROOT_PARAMETER = "uploadRoot";
+
+
+ /* (non-Javadoc)
+ * @see javax.servlet.ServletContextListener#contextDestroyed(javax.servlet.ServletContextEvent)
+ */
+ public void contextDestroyed(ServletContextEvent sce) {
+
+ }
+
+ /* (non-Javadoc)
+ * @see javax.servlet.ServletContextListener#contextInitialized(javax.servlet.ServletContextEvent)
+ */
+ public void contextInitialized(ServletContextEvent sce) {
+ try {
+ String uploadFolderPath = sce.getServletContext().getRealPath(IMAGE_SRC);
+ if (uploadFolderPath != null) {
+ String uploadDest = sce.getServletContext().getInitParameter(UPLOAD_ROOT_PARAMETER);
+ if (uploadDest == null) {
+ throw new NullPointerException("UploadRoot was not defined");
+ }
+
+ File uploadFolder = new File(uploadFolderPath);
+ File uploadDestFolder = new File(uploadDest);
+
+ if (!uploadFolder.exists()) {
+ throw new FileNotFoundException("Upload folder does not exists in " + IMAGE_SRC);
+ }
+
+ if (!uploadDestFolder.exists()) {
+ uploadDestFolder.mkdirs();
+ }
+
+ CopyFile.copyDirectory(uploadFolder, uploadDestFolder);
+ }
+
+
+ }catch (Exception e) {
+ System.out.println(e);
+ }
+
+ }
+
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/listener/CopyImagesStuff.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/AlbumManager.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/AlbumManager.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/AlbumManager.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,160 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.manager;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.faces.event.ActionEvent;
+
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Out;
+import org.jboss.seam.annotations.Scope;
+import org.jboss.seam.core.Events;
+import org.richfaces.model.TreeNode;
+import org.richfaces.realworld.domain.Album;
+import org.richfaces.realworld.domain.User;
+import org.richfaces.realworld.fileupload.FileManager;
+import org.richfaces.realworld.service.Constants;
+import org.richfaces.realworld.service.IAlbumAction;
+import org.richfaces.realworld.tree.TreeAlbumItem;
+import org.richfaces.realworld.tree.TreeRootItem;
+import org.richfaces.realworld.util.ConversationState;
+
+@Name("albumManager")
+(a)Scope(ScopeType.CONVERSATION)
+public class AlbumManager implements Serializable{
+
+ private static final long serialVersionUID = 2631634926126857691L;
+
+ private String oncomplete = ";";
+ @In(create=true, required=true)
+ private IAlbumAction albumAction;
+
+ private void setOncomplete() {
+ oncomplete = "$('albumModalPanel').component.hide()";
+ }
+
+ public String getOncomplete() {
+ return oncomplete;
+ }
+
+ public void setOncomplete(String oncomplete) {
+ this.oncomplete = oncomplete;
+ }
+
+ @In(required=false, create=false) @Out(required=false) TreeRootItem treeRoot;
+
+ @In(create=true, required=true) @Out
+ private Album album;
+
+ private List<Album> sharedAlbums;
+ @In
+ private User user;
+
+ @In(create=true)
+ FileManager fileManager;
+
+ @In @Out
+ private ConversationState conversationState;
+
+ public void addAlbum(){
+ albumAction.addAlbum(album);
+ addAlbumToTree();
+ addDirectory();
+ //Update conversation state
+ conversationState.setSelectedImage(null);
+ conversationState.setSelectedAlbum(album);
+ setOncomplete();
+ }
+
+ public void initEdit(){
+ album = new Album();
+ }
+
+ private void addAlbumToTree() {
+ if(album.getParent() != null){
+ TreeNode shelf = treeRoot.findShelf(album.getParent());
+ shelf.addChild(album.getId(), new TreeAlbumItem(album.getId(),shelf, album));
+ }else{
+ treeRoot.addChild(album.getId(), new TreeAlbumItem(album.getId(),treeRoot, album));
+ }
+ }
+
+ public void editAlbum(Album album){
+ albumAction.editAlbum(album);
+ conversationState.setSelectedAlbum(album);
+ }
+
+ public void deleteAlbum(Album album){
+ //Update domain model
+ String string = album.getId().toString();
+ albumAction.deleteAlbum(album);
+ removeFromTree(album);
+ deleteDirectory(string);
+ conversationState.setSelectedImage(null);
+ conversationState.setSelectedAlbum(null);
+ }
+
+
+ private void removeFromTree(Album album2) {
+ if(album.getParent() != null){
+ TreeNode shelf = treeRoot.findShelf(album.getParent());
+ shelf.removeChild(album.getId());
+ }else{
+ treeRoot.removeChild(album.getId());
+ }
+ }
+
+ private void deleteDirectory(String albumName) {
+ fileManager.deleteDirectory(user.getLogin(), albumName);
+ }
+
+ private void addDirectory() {
+ fileManager.addDirectory(user.getLogin(), album.getId().toString());
+ }
+
+
+ public List<Album> getSharedAlbums(){
+ if(null == sharedAlbums){
+ sharedAlbums=albumAction.getSharedAlbums();
+ conversationState.setSelectedAlbum(sharedAlbums.get(0));
+ }
+ return sharedAlbums;
+ }
+
+ public void selectAlbum(Album a){
+ conversationState.setSelectedAlbum(a);
+ conversationState.setSelectedImage(null);
+ }
+
+ public void resetToAlbum(Album a){
+ conversationState.setSelectedAlbum(a);
+ conversationState.setSelectedImage(null);
+ }
+
+ public void selectImage(int index){
+ conversationState.setSelectedImage(conversationState.getSelectedAlbum().getImages().get(index -1));
+ }
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/AlbumManager.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/Authenticator.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/Authenticator.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/Authenticator.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,209 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.manager;
+
+import java.io.Serializable;
+
+import javax.faces.application.FacesMessage;
+import javax.faces.component.UIComponent;
+import javax.faces.context.FacesContext;
+import javax.security.auth.login.LoginException;
+
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.End;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Logger;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Out;
+import org.jboss.seam.annotations.Scope;
+import org.jboss.seam.core.Conversation;
+import org.jboss.seam.core.Events;
+import org.jboss.seam.faces.FacesMessages;
+import org.jboss.seam.log.Log;
+import org.jboss.seam.security.Credentials;
+import org.jboss.seam.security.Identity;
+import org.jboss.seam.web.Session;
+import org.richfaces.realworld.domain.User;
+import org.richfaces.realworld.fileupload.FileManager;
+import org.richfaces.realworld.navigation.NavigationEnum;
+import org.richfaces.realworld.service.IUserAction;
+import org.richfaces.realworld.ui.PasswordHolder;
+import org.richfaces.realworld.util.ConversationState;
+import org.richfaces.realworld.service.Constants;
+
+@Name("authenticator")
+(a)Scope(ScopeType.CONVERSATION)
+public class Authenticator implements Serializable
+{
+
+ @In("#{messages['invalid_login']}")
+ private String INVALID_LOGIN_OR_PASSWORD;
+ @In("#{messages['login_success']}")
+ private String LOGIN_SUCCESS;
+ @In(create=true) PasswordHolder passwordHolder;
+ @In("#{messages['user.exist']}") private String USER_WITH_THIS_LOGIN_ALREADY_EXIST;
+
+ @In("#{messages['user.confirm.error']}") private String CONFIRM_PASSWORD_NOT_EQUALS_PASSWORD;
+
+ private static final long serialVersionUID = -4585673256547342140L;
+
+ @Logger Log log;
+
+ @In Identity identity;
+
+ @In Credentials credentials;
+
+ @In FacesMessages facesMessages;
+
+ @In("#{conversation}") @Out
+ Conversation conversation;
+
+ @In(create = true)
+ IUserAction userAction;
+
+ @In(create = true)
+ FileManager fileManager;
+
+ @In(create=true) @Out
+ private ConversationState conversationState;
+
+ public String login(){
+ if(identity.hasRole("admin")){
+ return "";
+ }
+ String password = credentials.getPassword();
+ String username = credentials.getUsername();
+ identity.unAuthenticate();
+ credentials.setPassword(password);
+ credentials.setUsername(username);
+ try {
+ identity.authenticate();
+ } catch (LoginException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ return "main";
+ }
+
+ public boolean authenticate()
+ {
+
+ if (wantLoginAnonymous()) {
+ identity.addRole(Constants.GUEST_ROLE);
+ userAction.loginAnonymous();
+ return true;
+ }
+ try {
+ User user = userAction.login(credentials.getUsername(), passwordHolder.hash(credentials.getPassword()));
+ if (user != null) {
+ identity.addRole(Constants.ADMIN_ROLE);
+ conversationState.setSelectedUser(user);
+ conversationState.setSelectedAlbum(null);
+ conversationState.setSelectedImage(null);
+ conversationState.setSelectedShelf(null);
+ Events.instance().raiseEvent(Constants.UPDATE_MAIN_AREA_EVENT,NavigationEnum.IMAGE_PREVIEW);
+ return true;
+ }
+ } catch (Exception nre) {
+ facesMessages.add(INVALID_LOGIN_OR_PASSWORD);
+ return false;
+ }
+ return false;
+ }
+
+ @End
+ public String register(User user){
+ if(checkPassword(user) || checkUserExist(user)){
+ return "";
+ }
+ user.setPasswordHash(passwordHolder.hash(user.getPassword()));
+ userAction.register(user);
+ facesMessages.add(LOGIN_SUCCESS);
+ return "main";
+ }
+
+ public String logout(){
+ identity.logout();
+ identity.unAuthenticate();
+ credentials.clear();
+ Session.instance().invalidate();
+ return "logout";
+ }
+
+ public String goToRegister(){
+ identity.logout();
+ identity.unAuthenticate();
+ credentials.clear();
+ credentials.invalidate();
+ return "register";
+ }
+
+ public String loginAnonymous(){
+ credentials.setUsername(null);
+ credentials.setPassword(null);
+ try {
+ identity.authenticate();
+ } catch (LoginException e) {
+ facesMessages.add(INVALID_LOGIN_OR_PASSWORD);
+ return "";
+ }
+ return Constants.MAIN_OUTCOME;
+ }
+
+ public String start(){
+ if(!identity.isLoggedIn()){
+ credentials.clear();
+ try {
+ identity.authenticate();
+ } catch (LoginException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+ return "";
+ }
+
+ private boolean wantLoginAnonymous() {
+ return null == credentials.getUsername() || credentials.getUsername().equals("");
+ }
+
+ private boolean checkUserExist(User user) {
+ if(userAction.isUserExist(user.getLogin())){
+ UIComponent root = FacesContext.getCurrentInstance().getViewRoot();
+ UIComponent component = root.findComponent(Constants.REGISTER_LOGIN_NAME_ID);
+ FacesContext.getCurrentInstance().addMessage(component.getClientId(FacesContext.getCurrentInstance()), new FacesMessage(
+ FacesMessage.SEVERITY_ERROR, USER_WITH_THIS_LOGIN_ALREADY_EXIST , USER_WITH_THIS_LOGIN_ALREADY_EXIST));
+ return true;
+ }
+ return false;
+ }
+
+ private boolean checkPassword(User user) {
+ if(!user.getPassword().equals(user.getConfirmPassword())){
+ UIComponent root = FacesContext.getCurrentInstance().getViewRoot();
+ UIComponent component = root.findComponent(Constants.REGISTER_CONFIRM_PASSWORD_ID);
+ FacesContext.getCurrentInstance().addMessage(component.getClientId(FacesContext.getCurrentInstance()), new FacesMessage(
+ FacesMessage.SEVERITY_ERROR, CONFIRM_PASSWORD_NOT_EQUALS_PASSWORD , CONFIRM_PASSWORD_NOT_EQUALS_PASSWORD));
+ return true;
+ }
+ return false;
+ }
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/Authenticator.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/DnDManager.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/DnDManager.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/DnDManager.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,113 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.manager;
+
+import javax.faces.component.UIComponent;
+import javax.faces.context.FacesContext;
+
+import org.ajax4jsf.context.AjaxContext;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Out;
+import org.richfaces.component.Dropzone;
+import org.richfaces.event.DropEvent;
+import org.richfaces.event.DropListener;
+import org.richfaces.model.TreeNode;
+import org.richfaces.realworld.domain.Album;
+import org.richfaces.realworld.domain.Image;
+import org.richfaces.realworld.domain.Shelf;
+import org.richfaces.realworld.domain.User;
+import org.richfaces.realworld.fileupload.FileManager;
+import org.richfaces.realworld.service.Constants;
+import org.richfaces.realworld.service.IAlbumAction;
+import org.richfaces.realworld.tree.TreeAlbumItem;
+import org.richfaces.realworld.tree.TreeRootItem;
+
+@Name("dndManager")
+public class DnDManager implements DropListener {
+
+ @In(required=false, create=false) @Out(required=false) TreeRootItem treeRoot;
+ @In("#{messages['album_present']}")
+ private String ALBUM_WITH_THIS_NAME_ALREADY_PRESENT;
+ @In User user;
+ @In(create=true)
+ FileManager fileManager;
+ @In(create=true)
+ IAlbumAction albumAction;
+
+ public void processDrop(DropEvent dropEvent) {
+ Dropzone dropzone = (Dropzone) dropEvent.getComponent();
+ Object dragValue = dropEvent.getDragValue();
+ Object dropValue = dropzone.getDropValue();
+ if(dragValue instanceof Image){
+ handleImage((Image)dragValue, (Album)dropValue);
+ }else if(dragValue instanceof Album){
+ handleShelf((Album)dragValue, (Shelf)dropValue);
+ }
+ }
+
+ private void addTreeToRerender() {
+ try {
+ FacesContext fc = FacesContext.getCurrentInstance();
+ AjaxContext ac = AjaxContext.getCurrentInstance();
+ UIComponent destTree = fc.getViewRoot().findComponent(Constants.TREE_ID);
+ ac.addComponentToAjaxRender(destTree);
+ } catch (Exception e) {
+ System.err.print(e.getMessage());
+ }
+ }
+
+ private void handleShelf(Album dragValue, Shelf dropValue) {
+ TreeNode<Object> itemParent = null;
+ TreeNode<Object> itemParentNew = null;
+ if(dragValue.getParent() != null ){
+ itemParent = treeRoot.findShelf(dragValue.getParent());
+ itemParentNew = treeRoot.findShelf(dropValue);
+ if(dragValue.getParent().equals(dropValue)){
+ //Parent album contain this album
+ return;
+ }else{
+ itemParent.removeChild(dragValue.getId());
+ itemParentNew.addChild(dragValue.getId(), new TreeAlbumItem(dragValue.getId(), itemParentNew, dragValue));
+ }
+ }
+ addTreeToRerender();
+ }
+
+ private void handleImage(Image dragValue, Album dropValue) {
+ if(dragValue.getAlbum().equals(dropValue)){
+ return;
+ }
+ String newPath = getNewPathOfImage(dragValue, dropValue);
+ dragValue.setPath(newPath);
+ dropValue.addImage(dragValue);
+ albumAction.flush();
+ }
+
+ private String getNewPathOfImage(Image dragValue, Album dropValue) {
+ String fileNameOld = dragValue.getPath();
+ int lastIndexOf = dragValue.getPath().lastIndexOf("/");
+ String prevPathEnd = dragValue.getPath().substring(lastIndexOf);
+ String fileNameNew = user.getLogin()+"/"+dropValue.getId()+"/"+prevPathEnd;
+ fileManager.renameImage(fileNameOld, fileNameNew);
+ return fileNameNew;
+ }
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/DnDManager.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/ImageManager.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/ImageManager.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/ImageManager.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,122 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.manager;
+
+import java.util.Date;
+
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Observer;
+import org.jboss.seam.annotations.Out;
+import org.jboss.seam.annotations.Scope;
+import org.jboss.seam.core.Events;
+import org.richfaces.realworld.domain.Comment;
+import org.richfaces.realworld.domain.Image;
+import org.richfaces.realworld.domain.User;
+import org.richfaces.realworld.fileupload.FileManager;
+import org.richfaces.realworld.navigation.NavigationEnum;
+import org.richfaces.realworld.service.Constants;
+import org.richfaces.realworld.service.IImageAction;
+import org.richfaces.realworld.tree.TreeAlbumItem;
+import org.richfaces.realworld.util.ConversationState;
+
+@Name("imageManager")
+(a)Scope(ScopeType.CONVERSATION)
+public class ImageManager {
+
+ @In(create=true, required=true)
+ private IImageAction imageAction;
+
+ @In(create=true)
+ FileManager fileManager;
+
+ @In(create=true) @Out
+ private ConversationState conversationState;
+
+ @In
+ private User user;
+
+ private String oncomplete;
+
+ public ImageManager() {
+ oncomplete = null;
+ }
+
+ public void deleteImage(Image image){
+ String imagePath = image.getPath();
+ imageAction.deleteImage(image);
+ fileManager.deleteImage(fileManager.transformToServerPath(imagePath));
+ }
+
+ public void editImage(Image image){
+ imageAction.editImage(image);
+ setOncomplete();
+ }
+
+ @Observer(Constants.ADD_IMAGE_EVENT)
+ public void addImage(Image image) {
+ imageAction.addImage(image);
+ conversationState.setSelectedAlbum(image.getAlbum());
+ Events.instance().raiseEvent(Constants.UPDATE_MAIN_AREA_EVENT, NavigationEnum.IMAGE_PREVIEW);
+ setOncomplete();
+ }
+
+
+ public void addAutoComment(Image image) {
+ if(null == user.getLogin()){
+ Events.instance().raiseEvent(Constants.ADD_ERROR_EVENT, new Exception("For vote on this picture you must login"));
+ return;
+ }
+ Comment comment = new Comment();
+ comment.setAuthor(user);
+ comment.setDate(new Date());
+ comment.setImage(image);
+ comment.setMessage("+1");
+ imageAction.addComment(comment);
+ }
+
+ public void addComment(Image image, String message){
+ if(null == user.getLogin()){
+ Events.instance().raiseEvent(Constants.ADD_ERROR_EVENT, new Exception("For vote on this picture you must login"));
+ return;
+ }
+ Comment comment= new Comment();
+ comment.setAuthor(user);
+ comment.setImage(image);
+ comment.setDate(new Date());
+ comment.setMessage(message);
+ imageAction.addComment(comment);
+ Events.instance().raiseEvent(Constants.CLEAR_EDITOR_EVENT, "");
+ }
+
+ private void setOncomplete() {
+ oncomplete = "$('imageModalPanel').component.hide()";
+ }
+ public String getOncomplete() {
+ return oncomplete;
+ }
+
+ public void setOncomplete(String oncomplete) {
+ this.oncomplete = oncomplete;
+ }
+
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/ImageManager.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/ShelfManager.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/ShelfManager.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/ShelfManager.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,117 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.manager;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Out;
+import org.jboss.seam.annotations.Scope;
+import org.richfaces.realworld.domain.Album;
+import org.richfaces.realworld.domain.Shelf;
+import org.richfaces.realworld.domain.User;
+import org.richfaces.realworld.fileupload.FileManager;
+import org.richfaces.realworld.service.IShelfAction;
+import org.richfaces.realworld.tree.TreeRootItem;
+import org.richfaces.realworld.tree.TreeShelfItem;
+import org.richfaces.realworld.util.ConversationState;
+
+@Name("shelfManager")
+(a)Scope(ScopeType.CONVERSATION)
+public class ShelfManager implements Serializable{
+
+ private static final long serialVersionUID = 2631634926126857691L;
+
+ @In private FileManager fileManager;
+ @In(create=true, required=true)
+ private IShelfAction shelfAction;
+ private String oncomplete = ";";
+ private void setOncomplete() {
+ oncomplete = "$('shelfModalPanel').component.hide()";
+ }
+
+ public String getOncomplete() {
+ return oncomplete;
+ }
+
+ public void initEdit(){
+ shelf = new Shelf();
+ }
+
+ public void setOncomplete(String oncomplete) {
+ this.oncomplete = oncomplete;
+ }
+ @In(required=false, create=false) @Out(required=false) TreeRootItem treeRoot;
+
+ @In(create=true, required=true) @Out
+ private Shelf shelf;
+
+ @In
+ private User user;
+
+ @In @Out
+ private ConversationState conversationState;
+
+ public void addShelf(){
+ shelfAction.addShelf(shelf);
+ addShelfToTree();
+ //Update conversation state
+ conversationState.setSelectedImage(null);
+ conversationState.setSelectedAlbum(null);
+ conversationState.setSelectedShelf(shelf);
+ setOncomplete();
+ }
+
+ private void addShelfToTree() {
+ treeRoot.addChild(shelf.getId(), new TreeShelfItem(shelf.getId(), treeRoot, shelf));
+ }
+
+ public void editShelf(Shelf shelf){
+ shelfAction.editShelf(shelf);
+ conversationState.setSelectedShelf(shelf);
+ }
+
+ public void deleteShelf(Shelf shelf){
+ //Update domain model
+ List<String> directoriesToDelete = new ArrayList<String>();
+ for(Album a:shelf.getChildAlbums()){
+ directoriesToDelete.add(user.getLogin() + "/" +a.getId());
+ }
+ shelfAction.deleteShelf(shelf);
+ removeFromTree(shelf);
+ deleteDirectories(directoriesToDelete);
+ conversationState.setSelectedImage(null);
+ conversationState.setSelectedAlbum(null);
+ conversationState.setSelectedShelf(null);
+ }
+
+ private void deleteDirectories(List<String> directoriesToDelete) {
+ fileManager.deleteDirectories(directoriesToDelete);
+ }
+
+ private void removeFromTree(Shelf shelf2) {
+ treeRoot.removeChild(shelf2.getId());
+ }
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/ShelfManager.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/UserManager.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/UserManager.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/UserManager.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,66 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.manager;
+
+import java.io.Serializable;
+import java.util.List;
+
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Scope;
+import org.richfaces.realworld.domain.Album;
+import org.richfaces.realworld.domain.Image;
+import org.richfaces.realworld.domain.User;
+import org.richfaces.realworld.service.IUserAction;
+
+@Name("userManager")
+(a)Scope(ScopeType.CONVERSATION)
+public class UserManager implements Serializable{
+
+ private static final long serialVersionUID = 6027103521084558931L;
+
+ @In
+ private User user;
+
+ @In(create=true, required=true)
+ private IUserAction userAction;
+
+ public void addToFavoriteAlbums(Album album){
+ userAction.addFavoriteAlbum(album);
+ }
+
+ public void removeFromFavoriteAlbums(Album album){
+ userAction.removeFromFavoriteAlbums(user, album);
+ }
+
+ public void addToFavoriteImages(Image image){
+ userAction.addFavoriteImage(image);
+ }
+
+ public void removeFromFavoriteImages(Image image){
+ userAction.removeFromFavoriteImages(user, image);
+ }
+
+ public List<Album> getRootAlbums(User user2) {
+ return userAction.getRootAlbums(user2);
+ }
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/manager/UserManager.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/AlbumPopupHelper.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/AlbumPopupHelper.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/AlbumPopupHelper.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,118 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.modalpanel;
+
+import java.io.Serializable;
+
+import javax.faces.context.FacesContext;
+import javax.faces.event.ActionEvent;
+
+import org.ajax4jsf.context.AjaxContext;
+import org.ajax4jsf.javascript.JSLiteral;
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Out;
+import org.jboss.seam.annotations.Scope;
+import org.richfaces.realworld.domain.Album;
+import org.richfaces.realworld.manager.AlbumManager;
+
+@Name("albumPopupHelper")
+(a)Scope(ScopeType.CONVERSATION)
+public class AlbumPopupHelper implements Serializable{
+
+ private static final long serialVersionUID = 2561824019376412988L;
+
+ private String caption;
+
+ private String actionName;
+
+ private String oncomplete = ";";
+
+ @In(create=true, required=true) @Out
+ private Album album;
+
+ @In(create=true, required=true)
+ private AlbumManager albumManager;
+
+ public void initAlbumData( String actionName, String caption, Album album){
+ this.caption = caption;
+ this.actionName = actionName;
+ this.oncomplete = ";";
+ if(null != album){
+ this.album = album;
+ }else{
+ this.album = new Album();
+ }
+ }
+
+ public void initAlbumData( String actionName, String caption, Album album, Album parent){
+ this.caption = caption;
+ this.actionName = actionName;
+ this.oncomplete = ";";
+ if(null != album){
+ this.album = album;
+ }else{
+ this.album = new Album();
+ }
+ }
+
+ public void editAlbum(ActionEvent event){
+ albumManager.editAlbum(this.album);
+ setOncomplete();
+ }
+
+ private void setOncomplete() {
+ oncomplete = "$('albumModalPanel').component.hide()";
+ }
+
+ public String getCaption() {
+ return caption;
+ }
+
+ public void setCaption(String caption) {
+ this.caption = caption;
+ }
+
+ public String getActionName() {
+ return actionName;
+ }
+
+ public void setActionName(String actionName) {
+ this.actionName = actionName;
+ }
+
+ public void addAlbum(ActionEvent event){
+ albumManager.addAlbum();
+ setOncomplete();
+ }
+
+ public String getOncomplete() {
+ return oncomplete;
+ }
+
+ public void setOncomplete(String oncomplete) {
+ this.oncomplete = oncomplete;
+ }
+
+
+
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/AlbumPopupHelper.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/ConfirmationPopupHelper.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/ConfirmationPopupHelper.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/ConfirmationPopupHelper.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,106 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.modalpanel;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+
+import javax.faces.event.ActionEvent;
+
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Out;
+import org.jboss.seam.annotations.Scope;
+import org.richfaces.realworld.domain.Album;
+import org.richfaces.realworld.domain.Image;
+import org.richfaces.realworld.domain.MetaTag;
+import org.richfaces.realworld.manager.AlbumManager;
+import org.richfaces.realworld.manager.ImageManager;
+
+@Name("confirmationPopupHelper")
+(a)Scope(ScopeType.CONVERSATION)
+public class ConfirmationPopupHelper implements Serializable{
+
+ private static final long serialVersionUID = 2561824019376412988L;
+
+ private String caption;
+
+ private String actionName;
+
+ @In(create=true, required=true) @Out(required=false)
+ private Image image;
+
+ @In(create=true, required=true) @Out(required=false)
+ private Album album;
+
+ @In(create=true, required=true)
+ private AlbumManager albumManager;
+
+ @In(create=true, required=true)
+ private ImageManager imageManager;
+
+ public void initImagePopup( String actionName, String caption, Image image){
+ this.caption = caption;
+ this.actionName = actionName;
+ if(null != image){
+ this.image = image;
+ //image.setMeta(new ArrayList<MetaTag>(image.getTags()));
+ }else{
+ this.image = new Image();
+ }
+ }
+
+ public void initAlbumData( String actionName, String caption, Album album){
+ this.caption = caption;
+ this.actionName = actionName;
+ if(null != album){
+ this.album = album;
+ }else{
+ this.album = new Album();
+ }
+ }
+
+ public void deleteAlbum(ActionEvent event){
+ albumManager.deleteAlbum(this.album);
+ }
+
+ public String getCaption() {
+ return caption;
+ }
+
+ public void setCaption(String caption) {
+ this.caption = caption;
+ }
+
+ public String getActionName() {
+ return actionName;
+ }
+
+ public void setActionName(String actionName) {
+ this.actionName = actionName;
+ }
+
+ public void deleteImage(ActionEvent event){
+ imageManager.deleteImage(this.image);
+ }
+
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/ConfirmationPopupHelper.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/ImagePopupHelper.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/ImagePopupHelper.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/ImagePopupHelper.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,61 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.modalpanel;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+
+import javax.faces.event.ActionEvent;
+
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Out;
+import org.jboss.seam.annotations.Scope;
+import org.richfaces.realworld.domain.Image;
+import org.richfaces.realworld.domain.MetaTag;
+import org.richfaces.realworld.manager.ImageManager;
+
+@Name("imagePopupHelper")
+(a)Scope(ScopeType.CONVERSATION)
+public class ImagePopupHelper implements Serializable{
+
+ private static final long serialVersionUID = 2561824019376412988L;
+
+ @In(create=true, required=true) @Out
+ private Image image;
+
+ @In(create=true, required=true)
+ private ImageManager imageManager;
+
+ public void initImagePopup(Image image){
+ if(null != image){
+ this.image = image;
+ //image.setMeta(new ArrayList<MetaTag>(image.getTags()));
+ }else{
+ this.image = new Image();
+ }
+ }
+
+ public void editImage(ActionEvent event){
+ imageManager.editImage(this.image);
+ }
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/ImagePopupHelper.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/LinkBuilder.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/LinkBuilder.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/LinkBuilder.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,129 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.modalpanel;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.faces.context.FacesContext;
+import javax.faces.model.SelectItem;
+import javax.servlet.ServletContext;
+import javax.servlet.ServletRequest;
+
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Scope;
+import org.richfaces.realworld.service.Constants;
+
+@Name("linkBuilder")
+(a)Scope(ScopeType.CONVERSATION)
+public class LinkBuilder implements Serializable{
+
+ private static final long serialVersionUID = 2561824019376412988L;
+ @In("#{messages['small']}") private String SMALL;
+ @In("#{messages['medium']}") private String MEDIUM;
+ @In("#{messages['full']}") private String FULL;
+ private Long scaleChoice = 1L;
+ private String currentFormat = Constants.URL;
+ private String path;
+
+ public String getGeneratedLink() {
+ String serverPath = getServerPath();
+ String link = null;
+ String tempPath = null;
+ if(getScaleChoice() == 3L){
+ tempPath = Constants.MINI_FORMAT;
+ }else if(getScaleChoice() == 2L){
+ tempPath = Constants.MEDIUM_FORMAT;
+ }else if(getScaleChoice() == 1L){
+ tempPath="";
+ }
+ if(null == path){
+ return "";
+ }
+ if(getCurrentFormat().equals(Constants.URL)){
+ link = serverPath + Constants.PICTURE_FOLDER_PATH + transformPath(path, tempPath);
+ }else
+ if(getCurrentFormat().equals(Constants.HTML)){
+ link = String.format(Constants.HTML_PATTERN, serverPath, serverPath + Constants.PICTURE_FOLDER_PATH + transformPath(path, tempPath));
+ }else
+ if(getCurrentFormat().equals(Constants.FORUM)){
+ link = String.format(Constants.FORUM_PATTERN, serverPath, serverPath + Constants.PICTURE_FOLDER_PATH + transformPath(path, tempPath));
+ }
+ return link;
+ }
+
+ private String getServerPath() {
+ ServletRequest servletRequest = ((ServletRequest)(FacesContext.getCurrentInstance().getExternalContext().getRequest()));
+ ServletContext s = (ServletContext)(FacesContext.getCurrentInstance().getExternalContext().getContext());
+ String protocol = servletRequest.getProtocol().equals(Constants.HTTP_1_1) || servletRequest.getProtocol().equals(Constants.HTTP_1_0) ? Constants.HTTP : Constants.HTTPS ;
+ String servletPath = protocol + servletRequest.getLocalAddr() + ":" + servletRequest.getLocalPort() + s.getContextPath();
+ return servletPath;
+ }
+
+ private String transformPath(String target, String substitute){
+ String begin = target.substring(0, target.lastIndexOf(Constants.DOT));
+ String end = target.substring(target.lastIndexOf(Constants.DOT));
+ return begin + substitute + end;
+ }
+
+ public List<SelectItem> getItems() {
+ List<SelectItem> list = new ArrayList<SelectItem>(4);
+ list.add(new SelectItem(Long.valueOf(1L), FULL));
+ list.add(new SelectItem(Long.valueOf(2L), MEDIUM));
+ list.add(new SelectItem(Long.valueOf(3L), SMALL));
+ return list;
+ }
+
+ public Long getScaleChoice() {
+ return scaleChoice;
+ }
+
+ public void setScaleChoice(Long scaleChoice) {
+ this.scaleChoice = scaleChoice;
+ }
+
+ public void selectFormat(String format){
+ setCurrentFormat(format);
+ }
+
+ public String getCurrentFormat() {
+ return currentFormat;
+ }
+
+ public void setCurrentFormat(String currentFormat) {
+ this.currentFormat = currentFormat;
+ }
+
+ public String getPath() {
+ return path;
+ }
+
+ public void setPath(String path) {
+ this.path = path;
+ }
+
+ public void setScale(Long choice){
+ setScaleChoice(choice);
+ }
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/LinkBuilder.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/test.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/test.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/test.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,109 @@
+package org.richfaces.realworld.modalpanel;
+
+import java.awt.Graphics2D;
+import java.awt.RenderingHints;
+import java.awt.geom.AffineTransform;
+import java.awt.image.BufferedImage;
+import java.io.File;
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.imageio.ImageIO;
+import javax.imageio.stream.FileImageInputStream;
+
+import org.richfaces.model.UploadItem;
+import org.richfaces.realworld.domain.Album;
+import org.richfaces.realworld.domain.Image;
+import org.richfaces.realworld.service.Constants;
+import org.richfaces.realworld.util.ImageUtils;
+import org.richfaces.realworld.util.ImageUtils.ImageDimension;
+
+public class test {
+
+ /**
+ * @param args
+ * @throws IOException
+ */
+ public static void main(String[] args) throws IOException {
+ String directory ="C:\\Documents and Settings\\Administrator\\Desktop\\amarkhel\\Sport";
+ writeFiles(directory, "_mini", 150);
+ writeFiles(directory, "_medium", 600);
+ }
+
+ /*public static void renameAllImagesFromAlbumAndChilds(Album album, String replace,
+ String forReplace) {
+ for(Image image: album.getImages()){
+ System.out.println(image.getPath());
+ image.setPath(image.getPath().replaceAll(replace, forReplace));
+ System.out.println(image.getPath());
+ }
+ for(Album a:album.getChildAlbums()){
+ String replace2 = replace + "/" + a.getName();
+ String forReplace2 = forReplace + "/" + a.getName();
+ renameAllImagesFromAlbumAndChilds(a, replace2, forReplace2);
+ }
+ }*/
+
+ private static void writeFiles(String directory, String pattern, int size) {
+ File f = new File(directory);
+ for(String s: f.list()){
+ File temp = new File(directory +"\\"+ s);
+ if(s.endsWith(".jpg") && !s.endsWith("_mini.jpg")&& !s.endsWith("_medium.jpg")){
+ BufferedImage bsrc =null;
+ try {
+ bsrc = ImageIO.read(temp);
+ } catch (IOException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ int i = bsrc.getWidth() > bsrc.getHeight()? bsrc.getWidth(): bsrc.getHeight();
+ int width2 = bsrc.getWidth();
+ double d = (double) size
+ / i;
+ Double yy = ((Double)d*bsrc.getWidth());
+ int width = yy.intValue();
+ yy = ((Double)d*bsrc.getHeight());
+ int height= yy.intValue();
+ BufferedImage bdest = new BufferedImage(width, height,
+ BufferedImage.TYPE_INT_RGB);
+ Graphics2D g = bdest.createGraphics();
+ AffineTransform at = AffineTransform.getScaleInstance(d, d);
+ Map<RenderingHints.Key, Object> hints = new HashMap<RenderingHints.Key, Object>();
+ hints.put(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);
+ g.addRenderingHints(hints);
+ g.drawRenderedImage(bsrc, at);
+ String dest = transformPath(directory +"\\"+ s, pattern);
+ try {
+ ImageIO.write(bdest, "JPG", new File(dest));
+ } catch (IOException ex) {
+ // TODO Auto-generated catch block
+ ex.printStackTrace();
+ }
+ }
+ }
+ }
+
+ private static String transformPath(String target, String substitute){
+ String begin = target.substring(0, target.lastIndexOf("."));
+ String end = target.substring(target.lastIndexOf("."));
+ return begin + substitute + end;
+ }
+
+ /*private static void transform() throws IOException{
+ File temp = new File("E:\\richfaces\\test-applications\\realworld\\Upload\\galleries\\Nature\\1.jpg");
+ BufferedImage bsrc =null;
+ bsrc = ImageIO.read(temp);
+ AffineTransform transform = new AffineTransform();
+ //transform.scale(scalex, scaley);
+ //transform.shear(30, 30);
+ transform.translate(100, 100);
+ //transform.rotate(radians, bufferedImage.getWidth()/2,
+ //bufferedImage.getHeight()/2);
+
+ AffineTransformOp op = new AffineTransformOp(transform,
+ AffineTransformOp.TYPE_NEAREST_NEIGHBOR);
+ bsrc = op.filter(bsrc, null);
+ ImageIO.write(bsrc, "JPG", temp);
+ }*/
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/modalpanel/test.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/navigation/NavigationEnum.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/navigation/NavigationEnum.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/navigation/NavigationEnum.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,27 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.navigation;
+
+public enum NavigationEnum {
+ IMAGE_PREVIEW,
+ FILE_UPLOAD,
+ USER_PREFS, SEARCH, READ_MESSAGES, WHAT_NEW,
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/navigation/NavigationEnum.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/navigation/NavigationHelper.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/navigation/NavigationHelper.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/navigation/NavigationHelper.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,60 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.navigation;
+
+import java.io.Serializable;
+
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Scope;
+
+@Name(value="navigationHelper")
+(a)Scope(ScopeType.CONVERSATION)
+public class NavigationHelper implements Serializable{
+
+ private static final long serialVersionUID = -89683694316344212L;
+
+ private NavigationEnum navigationEnum;
+
+ public NavigationEnum getNavigationEnumUserPrefs(){
+ return NavigationEnum.USER_PREFS;
+ }
+
+ public NavigationEnum getNavigationEnumWhatNew(){
+ return NavigationEnum.WHAT_NEW;
+ }
+
+ public NavigationEnum getNavigationEnumSearch(){
+ return NavigationEnum.SEARCH;
+ }
+
+ public NavigationEnum getNavigationEnumReadMessages(){
+ return NavigationEnum.READ_MESSAGES;
+ }
+
+ public NavigationEnum getNavigationEnumImagePreview(){
+ return NavigationEnum.IMAGE_PREVIEW;
+ }
+
+ public NavigationEnum getNavigationEnumFileUpload(){
+ return NavigationEnum.FILE_UPLOAD;
+ }
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/navigation/NavigationHelper.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/servlet/PictureServlet.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/servlet/PictureServlet.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/servlet/PictureServlet.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,143 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.servlet;
+
+import java.io.BufferedInputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URLDecoder;
+
+import javax.persistence.EntityManager;
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.jboss.seam.Component;
+import org.richfaces.realworld.domain.Image;
+import org.richfaces.realworld.domain.User;
+import org.richfaces.realworld.fileupload.FileManager;
+import org.richfaces.realworld.service.Constants;
+
+public class PictureServlet extends javax.servlet.http.HttpServlet {
+
+
+ public static final long serialVersionUID = 596009789004L;
+
+ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+ String pathInfo = request.getPathInfo();
+ if(pathInfo.startsWith("/")){
+ pathInfo = pathInfo.substring(1);
+ }
+ String fileName = URLDecoder.decode(WebUtil.getFileName(pathInfo), "UTF8");
+ if(!isAccessGranted(request, response, pathInfo)){
+ sendToErrorPage(request, response);
+ return;
+ }
+ byte[] data = getImageData(request, response, fileName);
+ if(data == null){
+ sendToErrorPage(request, response);
+ return;
+ }
+ response.setContentType(Constants.IMAGE_JPG);
+ response.setContentLength((int) data.length - 1);
+ response.getOutputStream().write(data);
+ response.getOutputStream().flush();
+ response.getOutputStream().close();
+ }
+
+ private byte[] getImageData(HttpServletRequest request,
+ HttpServletResponse response, String fileName) throws IOException {
+ if (fileName == null) {
+ return null;
+ }
+ FileManager fileManager = new FileManager();
+ String uploadRoot = request.getSession().getServletContext().getInitParameter(Constants.UPLOAD_ROOT);
+ fileManager.setUploadRoot(uploadRoot);
+ File file = fileManager.getImage(fileName);
+ InputStream paintData = null;
+ byte[] data = new byte[(int) file.length() - 1];
+ FileInputStream fileInputStream = null;
+ BufferedInputStream bufferedInputStream = null;
+ if (file != null) {
+ try {
+ fileInputStream = new FileInputStream(file);
+ bufferedInputStream = new BufferedInputStream(fileInputStream);
+ paintData = bufferedInputStream;
+ paintData.read(data);
+ } catch (FileNotFoundException e) {
+ return null;
+ } catch (IOException e) {
+ return null;
+ } finally {
+ try {
+ fileInputStream.close();
+ } catch (IOException e) {
+ return null;
+ }
+ try {
+ bufferedInputStream.close();
+ } catch (IOException e) {
+ return null;
+ }
+ try {
+ paintData.close();
+ } catch (IOException e) {
+ return null;
+ }
+ }
+ }
+ return data;
+ }
+
+ private boolean isAccessGranted(HttpServletRequest request,
+ HttpServletResponse response, String pathInfo) throws IOException {
+ String userId = request.getParameter(Constants.USER_ID);
+ String hash = request.getParameter("passwordHash");
+ EntityManager em = (EntityManager)Component.getInstance(Constants.ENTITY_MANAGER, true);
+ User user = null;
+ if(userId != null && userId.length() > 0 && hash != null){
+ user = em.find(User.class, Long.valueOf(userId));
+ }
+ Image i = (Image)em.createQuery("from Image i where i.path=:path").setParameter(Constants.PATH_PARAMETER, pathInfo).getSingleResult();
+ if(!i.getAlbum().isShared()){
+ if(user != null){
+ if(i.getAlbum().getOwner().equals(user) && user.getPasswordHash().equals(hash)){
+ //OK
+ }else{
+ return false;
+ }
+ }else{
+ return false;
+ }
+ }
+ return true;
+ }
+
+ private void sendToErrorPage(HttpServletRequest request,
+ HttpServletResponse response) throws IOException {
+ String contextPath = request.getContextPath();
+ response.sendRedirect(contextPath + Constants.ERROR_PAGE);
+ return;
+ }
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/servlet/PictureServlet.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/servlet/WebUtil.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/servlet/WebUtil.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/servlet/WebUtil.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,53 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.servlet;
+
+public class WebUtil {
+
+ public static String getFileName(String path) {
+ // Path format is "/file_name.jpg"
+ if (path != null && path.length() > 1) {
+ String fileName = path.substring(1);
+ int dotIndex = fileName.indexOf('.');
+ String extention = fileName.substring(dotIndex + 1);
+ if (extention.equals(Extention.jpg.getExtention())
+ || extention.equals(Extention.jpeg.getExtention()))
+ {
+ return fileName;
+ }
+ }
+ return null;
+ }
+
+ enum Extention {
+ jpg("jpg"), jpeg("jpeg");
+
+ Extention(String extention) {
+ this.extention = extention;
+ }
+
+ private String extention;
+
+ String getExtention() {
+ return this.extention;
+ }
+ }
+}
\ No newline at end of file
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/servlet/WebUtil.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/slideshow/SlideshowBean.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/slideshow/SlideshowBean.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/slideshow/SlideshowBean.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,72 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.slideshow;
+
+import java.io.Serializable;
+
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Out;
+import org.jboss.seam.annotations.Scope;
+import org.richfaces.realworld.service.Constants;
+
+@Name("slideshow")
+(a)Scope(ScopeType.CONVERSATION)
+public class SlideshowBean implements Serializable{
+
+ private static final long serialVersionUID = 7801877176558409702L;
+
+ @In(required=false) @Out(required=false)
+ SlideshowHelper slideshowHelper;
+
+ private boolean active;
+
+ private int interval = Constants.INITIAL_DELAY;
+
+ public int getInterval() {
+ return interval;
+ }
+
+ public void setInterval(int interval) {
+ this.interval = interval;
+ }
+
+ public boolean isActive() {
+ return active;
+ }
+
+ public void setActive(boolean active) {
+ this.active = active;
+ }
+
+ public void startSlideshow(){
+ active = true;
+ }
+
+ public void stopSlideshow(){
+ active = false;
+ }
+
+ public void updateInterval(){
+ this.setInterval((int)(Constants.DELAY * Long.valueOf(slideshowHelper.getInputSlider().getValue().toString())));
+ }
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/slideshow/SlideshowBean.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/slideshow/SlideshowHelper.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/slideshow/SlideshowHelper.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/slideshow/SlideshowHelper.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,43 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.slideshow;
+
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Scope;
+import org.richfaces.component.UIInputNumberSlider;
+
+@Name("slideshowHelper")
+(a)Scope(ScopeType.EVENT)
+public class SlideshowHelper {
+
+ private UIInputNumberSlider inputSlider;
+
+ public UIInputNumberSlider getInputSlider() {
+ return inputSlider;
+ }
+
+ public void setInputSlider(UIInputNumberSlider inputSlider) {
+ this.inputSlider = inputSlider;
+ }
+
+
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/slideshow/SlideshowHelper.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/tree/TreeAlbumItem.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/tree/TreeAlbumItem.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/tree/TreeAlbumItem.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,111 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.tree;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+
+import javax.faces.model.SelectItem;
+
+import org.richfaces.model.TreeNode;
+import org.richfaces.realworld.domain.Album;
+import org.richfaces.realworld.domain.Image;
+import org.richfaces.realworld.service.Constants;
+
+public class TreeAlbumItem implements TreeNode<Object> {
+
+ private static final String ALBUM_NODE_TYPE = "album";
+
+ private static final long serialVersionUID = 6514596192023597908L;
+
+ private long id;
+ private Album album;
+ TreeNode parent;
+
+ public TreeAlbumItem(long id, TreeNode<Object> parent, Album album) {
+ this.id = id;
+ this.parent = parent;
+ this.album = album;
+ }
+
+ public void addChild(Object identifier, TreeNode<Object> child) {
+
+ }
+
+ public TreeNode<Object> getChild(Object id) {
+ return null;
+ }
+
+ public Iterator<Map.Entry<Object, TreeNode<Object>>> getChildren() {
+ return null;
+ }
+
+ public Object getData() {
+ return this;
+ }
+
+ public TreeNode<Object> getParent() {
+ return parent;
+ }
+
+ public boolean isLeaf() {
+ return true;
+ }
+
+ public void removeChild(Object id) {
+
+ }
+
+ public void setData(Object data) {
+ }
+
+ public void setParent(TreeNode<Object> parent) {
+ this.parent = parent;
+ }
+
+ public long getId() {
+ return id;
+ }
+
+ public Album getAlbum() {
+ if(album == null){
+ System.out.println();
+ }
+ return album;
+ }
+
+ public void setAlbum(Album album) {
+ this.album = album;
+ }
+
+ public String getType() {
+ return Constants.ALBUM_NODE_TYPE;
+ }
+
+ public String toString(){
+ return this.getAlbum().getName();
+ }
+
+}
+
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/tree/TreeAlbumItem.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/tree/TreeRootItem.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/tree/TreeRootItem.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/tree/TreeRootItem.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,130 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.tree;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+
+import javax.faces.model.SelectItem;
+
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Out;
+import org.jboss.seam.annotations.Scope;
+import org.richfaces.model.TreeNode;
+import org.richfaces.realworld.domain.Album;
+import org.richfaces.realworld.domain.Shelf;
+import org.richfaces.realworld.domain.User;
+import org.richfaces.realworld.service.IUserAction;
+
+@Name("treeRoot")
+(a)Scope(ScopeType.CONVERSATION)
+public class TreeRootItem implements TreeNode {
+
+ private static final String TREE_ROOT_NODE_TYPE = "treeRoot";
+
+ @In IUserAction userAction;
+ @In @Out
+ private User user;
+
+ private static final long serialVersionUID = -3530085227471752526L;
+
+ private Map<Long, TreeNode> childs = null;
+
+ public Map<Long, TreeNode> getChilds() {
+ if (this.childs==null) {
+ initData();
+ }
+ return this.childs;
+ }
+
+ public void addChild(Object identifier, TreeNode child) {
+ getChilds().put((Long)identifier, (TreeNode)child);
+ child.setParent(this);
+ }
+
+ public TreeNode getChild(Object id) {
+ return (TreeNode) childs.get(id);
+ }
+
+ public Iterator getChildren() {
+ return getChilds().entrySet().iterator();
+ }
+
+ public Object getData() {
+ return this;
+ }
+
+ public TreeNode getParent() {
+ return null;
+ }
+
+ public boolean isLeaf() {
+ return getChilds().isEmpty();
+ }
+
+ public void removeChild(Object id) {
+ childs.remove(id);
+ }
+
+ public void setData(Object data) {
+ }
+
+ public void setParent(TreeNode parent) {
+ }
+
+ public String getType() {
+ return TREE_ROOT_NODE_TYPE;
+ }
+
+ private void initData() {
+ transformAlbumsToMap();
+ }
+
+ private void transformAlbumsToMap() {
+ childs = new HashMap<Long, TreeNode>();
+ for(Shelf shelf:user.getShelfs()){
+ TreeShelfItem shelfNode = new TreeShelfItem(shelf.getId(), this, shelf);
+ addChild(shelf.getId(), shelfNode);
+ }
+ for(Album album:userAction.getRootAlbums(user)){
+ TreeAlbumItem albumNode = new TreeAlbumItem(album.getId(), this, album);
+ addChild(album.getId(), albumNode);
+ }
+ }
+
+ public TreeAlbumItem getAlbumByName(String albumName) {
+ for(Map.Entry<Long, TreeNode> entry : getChilds().entrySet()){
+ if(entry.getValue() instanceof TreeAlbumItem && ((TreeAlbumItem)entry.getValue()).getAlbum().getName().equals(albumName)){
+ return (TreeAlbumItem)entry.getValue();
+ }
+ }
+ return null;
+ }
+
+ public TreeNode findShelf(Shelf parent) {
+ return childs.get(parent.getId());
+ }
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/tree/TreeRootItem.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/tree/TreeShelfItem.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/tree/TreeShelfItem.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/tree/TreeShelfItem.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,96 @@
+package org.richfaces.realworld.tree;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
+
+import org.richfaces.model.TreeNode;
+import org.richfaces.realworld.domain.Album;
+import org.richfaces.realworld.domain.Shelf;
+import org.richfaces.realworld.service.Constants;
+
+public class TreeShelfItem implements TreeNode<Object> {
+
+private static final long serialVersionUID = 6514596192023597908L;
+
+ private long id;
+ private Shelf shelf;
+ TreeNode parent;
+ private Map<Long, TreeNode> childs = null;
+
+ public TreeShelfItem(long id, TreeNode<Object> parent, Shelf shelf) {
+ this.id = id;
+ this.parent = parent;
+ this.shelf = shelf;
+ init();
+ }
+
+ private void init() {
+ childs = new HashMap<Long, TreeNode>();
+ for(Album album:shelf.getChildAlbums()){
+ TreeAlbumItem albumNode = new TreeAlbumItem(album.getId(), this, album);
+ addChild(album.getId(), albumNode);
+ }
+ }
+
+ public void addChild(Object identifier, TreeNode<Object> child) {
+ getChilds().put((Long)identifier, (TreeNode)child);
+ child.setParent(this);
+ }
+
+ public TreeNode getChild(Object id) {
+ return (TreeNode) childs.get(id);
+ }
+
+ public Iterator getChildren() {
+ return getChilds().entrySet().iterator();
+ }
+
+ public Object getData() {
+ return this;
+ }
+
+ public TreeNode getParent() {
+ return parent;
+ }
+
+ public boolean isLeaf() {
+ return getChilds().isEmpty();
+ }
+
+ public void removeChild(Object id) {
+ childs.remove(id);
+ }
+
+ public void setData(Object data) {
+ shelf = (Shelf)data;
+ }
+
+ public void setParent(TreeNode parent) {
+ this.parent = parent;
+ }
+
+ public String getType() {
+ return "shelf";
+ }
+
+ public Map<Long, TreeNode> getChilds() {
+ return childs;
+ }
+
+ public void setChilds(Map<Long, TreeNode> childs) {
+ this.childs = childs;
+ }
+
+ public Shelf getShelf() {
+ return shelf;
+ }
+
+ public void setShelf(Shelf shelf) {
+ this.shelf = shelf;
+ }
+
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/tree/TreeShelfItem.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/ui/EditorBean.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/ui/EditorBean.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/ui/EditorBean.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,56 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.ui;
+
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Observer;
+
+@Name("editorBean")
+public class EditorBean {
+
+ private String currentConfiguration = "/org/richfaces/realworld/editor/advanced";
+
+ private boolean liveUpdatesEnabled=false;
+
+ private String message;
+
+ public String getMessage() {
+ return message;
+ }
+
+ @Observer("clearEditor")
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public String getCurrentConfiguration() {
+ return currentConfiguration;
+ }
+
+ public boolean isLiveUpdatesEnabled() {
+ return liveUpdatesEnabled;
+ }
+
+ public void setLiveUpdatesEnabled(boolean liveUpdatesEnabled) {
+ this.liveUpdatesEnabled = liveUpdatesEnabled;
+ }
+
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/ui/EditorBean.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/ui/PasswordHolder.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/ui/PasswordHolder.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/ui/PasswordHolder.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,30 @@
+package org.richfaces.realworld.ui;
+
+import java.security.MessageDigest;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.util.Hex;
+
+@Name("passwordHolder")
+public class PasswordHolder {
+ private String digestAlgorithm;
+ private String charset;
+
+ public void setDigestAlgorithm(String algorithm) {
+ this.digestAlgorithm = algorithm;
+ }
+
+ public void setCharset(String charset) {
+ this.charset = charset;
+ }
+
+ public String hash(String plainTextPassword) {
+ try {
+ MessageDigest digest = MessageDigest.getInstance(digestAlgorithm);
+ digest.update(plainTextPassword.getBytes(charset));
+ byte[] rawHash = digest.digest();
+ return new String(Hex.encodeHex(rawHash));
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+ }
+}
\ No newline at end of file
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/ui/PasswordHolder.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/ui/TagList.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/ui/TagList.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/ui/TagList.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,76 @@
+package org.richfaces.realworld.ui;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import javax.persistence.EntityManager;
+
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.Create;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Observer;
+import org.jboss.seam.annotations.Scope;
+import org.jboss.seam.annotations.Unwrap;
+
+@Name("tagList")
+(a)Scope(ScopeType.APPLICATION)
+public class TagList {
+
+ @In
+ protected EntityManager entityManager;
+ protected Map<String, Integer> tagMap;
+
+ @Create
+ public void onCreate() {
+ fetchTags();
+ }
+
+ @Unwrap
+ public Map<String, Integer> getTagMap() {
+ return tagMap;
+ }
+
+ @Observer(value = "imageAdded", create = false)
+ synchronized public void fetchTags() {
+ List<Object[]> results = entityManager
+ .createQuery(
+ "select t.tag as name, t.images.size+t.albums.size from MetaTag t order by t.images.size+t.albums.size desc")
+ .setMaxResults(100).getResultList();
+ tagMap = transformToMap(results);
+ }
+
+ private Map<String, Integer> transformToMap(List<Object[]> results) {
+ Map<String, Integer> temp = new HashMap<String, Integer>();
+ for(int i=0; i< results.size(); i++){
+ temp.put(results.get(i)[0].toString(), Integer.parseInt(results.get(i)[1].toString()));
+ }
+ return temp;
+ }
+
+ @Observer(value = "imageEdited", create = false)
+ public void ImageEdited(){
+ fetchTags();
+ }
+
+ @Observer(value = "imageDeleted", create = false)
+ public void ImageDeleted(){
+ fetchTags();
+ }
+
+ @Observer(value = "albumEdited", create = false)
+ public void AlbumEdited(){
+ fetchTags();
+ }
+
+ @Observer(value = "albumDeleted", create = false)
+ public void AlbumDeleted(){
+ fetchTags();
+ }
+
+ @Observer(value = "albumAdded", create = false)
+ public void AlbumAdded(){
+ fetchTags();
+ }
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/ui/TagList.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/util/ConversationState.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/util/ConversationState.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/util/ConversationState.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,304 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.util;
+
+import java.io.Serializable;
+import java.util.Map;
+
+import javax.faces.component.UIComponent;
+import javax.faces.context.FacesContext;
+
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Observer;
+import org.jboss.seam.annotations.Scope;
+import org.jboss.seam.annotations.Synchronized;
+import org.jboss.seam.core.Conversation;
+import org.jboss.seam.core.Events;
+import org.richfaces.component.UIDatascroller;
+import org.richfaces.component.UITree;
+import org.richfaces.component.html.HtmlTree;
+import org.richfaces.event.NodeSelectedEvent;
+import org.richfaces.model.TreeNode;
+import org.richfaces.model.TreeRowKey;
+import org.richfaces.realworld.domain.Album;
+import org.richfaces.realworld.domain.Image;
+import org.richfaces.realworld.domain.Shelf;
+import org.richfaces.realworld.domain.User;
+import org.richfaces.realworld.navigation.NavigationEnum;
+import org.richfaces.realworld.service.Constants;
+import org.richfaces.realworld.tree.TreeAlbumItem;
+import org.richfaces.realworld.tree.TreeShelfItem;
+
+@Name("conversationState")
+(a)Scope(ScopeType.CONVERSATION)
+@Synchronized(timeout=200000)
+public class ConversationState implements Serializable{
+
+ private static final long serialVersionUID = 5656562187249324512L;
+
+ @In Conversation conversation;
+
+ @In("#{messages['acess_not_granted']}")
+ private String HAVENT_ACCESS;
+
+ private Integer selectedImageIndex = 1;
+
+ private Image selectedImage;
+
+ private Album selectedAlbum;
+
+ private User selectedUser;
+
+ private Shelf selectedShelf;
+
+ private User secondSelectedUser;
+
+ private NavigationEnum mainArea;
+
+ @In private User user;
+ //@In(required=false, create=false) private TreeMyAlbumsItem treeMyAlbumsItem;
+
+ public Integer getSelectedImageIndex() {
+ return selectedImageIndex;
+ }
+
+ public NavigationEnum getMainArea() {
+ return mainArea;
+ }
+
+ @Observer(Constants.UPDATE_MAIN_AREA_EVENT)
+ public void setMainArea(NavigationEnum mainArea) {
+ this.mainArea = mainArea;
+ if(mainArea.equals(NavigationEnum.FILE_UPLOAD)){
+ Events.instance().raiseEvent(Constants.SHOW_FILE_UPLOAD_EVENT, true);
+ }
+ }
+
+ public void incrementSlideShowIndex(){
+ Integer index = getSelectedAlbum().getIndex(getSelectedImage());
+ System.out.println("Slideshow execute");
+ if(index == -1){
+ Events.instance().raiseEvent("stopSlideshow");
+ System.out.println("Slideshow stop");
+ return;
+ }
+ UIComponent component = FacesContext.getCurrentInstance().getViewRoot();
+ UIDatascroller scroller = (UIDatascroller)component.findComponent(Constants.DATASCROLLER_ID);
+ Map<String, Object> attributes = scroller.getDataTable().getAttributes();
+ attributes.put(UIDatascroller.SCROLLER_STATE_ATTRIBUTE, index+1);
+ if(index == getSelectedAlbum().getImages().size() - 1){
+ index=-1;
+ }
+ setSelectedImageIndex(index+1);
+ setSelectedImage(getSelectedAlbum().getImages().get(index + 1));
+ }
+
+ public void setSelectedImageIndex(Integer selectedImageIndex) {
+ this.selectedImageIndex = selectedImageIndex;
+ }
+
+ public Image getSelectedImage() {
+ return selectedImage;
+ }
+
+ public void setSelectedImage(Image selectedImage) {
+ this.selectedImage = selectedImage;
+ }
+
+ public Album getSelectedAlbum() {
+ return selectedAlbum;
+ }
+
+ public void setSelectedAlbum(Album selectedAlbum) {
+ this.selectedAlbum = selectedAlbum;
+ }
+
+ public void setSelectedAlbumName(String selectedAlbumName) {
+ selectedAlbumName = selectedAlbumName.substring(0, selectedAlbumName.length() -1);
+ int lastIndexOf = selectedAlbumName.lastIndexOf(Constants.SLASH);
+ String prevPathEnd = selectedAlbumName.substring(lastIndexOf+1);
+ //this.selectedAlbum = ((TreeAlbumItem)treeMyAlbumsItem.getNode(prevPathEnd)).getAlbum();
+ }
+
+ public void showUserProfile(User user){
+ setSelectedUser(user);
+ setSecondSelectedUser(null);
+ Events.instance().raiseEvent(Constants.UPDATE_MAIN_AREA_EVENT, NavigationEnum.USER_PREFS);
+ }
+
+ public void showSecondUserProfile(User user){
+ setSecondSelectedUser(user);
+ Events.instance().raiseEvent(Constants.UPDATE_MAIN_AREA_EVENT, NavigationEnum.USER_PREFS);
+ }
+
+ public void showImage(Image image){
+ if(!image.getAlbum().isShared() && !image.getAlbum().getOwner().equals(user)){
+ Events.instance().raiseEvent(Constants.ADD_ERROR_EVENT, new Exception(HAVENT_ACCESS));
+ return;
+ }
+ Events.instance().raiseEvent(Constants.UPDATE_MAIN_AREA_EVENT, NavigationEnum.IMAGE_PREVIEW);
+ setSelectedAlbum(image.getAlbum());
+ setSelectedImage(image);
+ Integer index = getSelectedAlbum().getIndex(getSelectedImage());
+ UIComponent component = FacesContext.getCurrentInstance().getViewRoot();
+ UIDatascroller scroller = (UIDatascroller)component.findComponent(Constants.DATASCROLLER_ID);
+ Map<String, Object> attributes = scroller.getDataTable().getAttributes();
+ attributes.put(UIDatascroller.SCROLLER_STATE_ATTRIBUTE, index+1);
+ setSelectedImageIndex(index+1);
+ setSelectedUser(image.getAlbum().getOwner());
+ }
+
+ public void showUser(User u){
+ Events.instance().raiseEvent(Constants.UPDATE_MAIN_AREA_EVENT, NavigationEnum.IMAGE_PREVIEW);
+ setSelectedAlbum(null);
+ setSelectedImage(null);
+ setSelectedUser(u);
+ }
+
+ public void showAlbum(Album album){
+ if(!album.isShared() && !album.getOwner().equals(user)){
+ Events.instance().raiseEvent(Constants.ADD_ERROR_EVENT, new Exception(HAVENT_ACCESS));
+ return;
+ }
+ Events.instance().raiseEvent(Constants.UPDATE_MAIN_AREA_EVENT, NavigationEnum.IMAGE_PREVIEW);
+ setSelectedAlbum(album);
+ setSelectedImage(null);
+ setSelectedShelf(album.getParent());
+ setSelectedUser(album.getOwner());
+ }
+
+ public void selectMyAlbums(){
+ setSelectedAlbum(null);
+ setSelectedImage(null);
+ setSelectedShelf(null);
+ setSelectedUser(user);
+ }
+
+ public void selectUser(User u){
+ setSelectedAlbum(null);
+ setSelectedImage(null);
+ setSelectedUser(u);
+ }
+
+ public void selectAlbum(Album a){
+ setSelectedAlbum(a);
+ setSelectedShelf(a.getParent());
+ setSelectedImage(null);
+ setSelectedUser(a.getOwner());
+ }
+
+ public void selectShelf(Shelf s){
+ setSelectedShelf(s);
+ setSelectedAlbum(null);
+ setSelectedImage(null);
+ setSelectedUser(s.getOwner());
+ }
+
+ public void showFileUpload(Album item){
+ Events.instance().raiseEvent(Constants.FILE_UPLOAD_CLEAR_EVENT);
+ setSelectedAlbum(item);
+ this.setMainArea(NavigationEnum.FILE_UPLOAD);
+ }
+
+ @SuppressWarnings("unchecked")
+ public Boolean adviseNodeSelected(UITree tree) {
+ TreeRowKey<Object> treeRowKey = (TreeRowKey<Object>) tree.getRowKey();
+ TreeNode<Object> treeNode = (TreeNode<Object>) tree.getRowData(treeRowKey);
+ if (treeNode instanceof TreeAlbumItem) {
+ TreeAlbumItem currentNode = (TreeAlbumItem) treeNode;
+ boolean selected = currentNode.getAlbum() == getSelectedAlbum();
+ return selected;
+ }
+ return null;
+ }
+
+ @SuppressWarnings("unchecked")
+ public Boolean adviseNodeOpened(UITree tree) {
+ TreeRowKey<Object> treeRowKey = (TreeRowKey<Object>) tree.getRowKey();
+ TreeNode<Object> treeNode = (TreeNode<Object>) tree.getRowData(treeRowKey);
+ if (treeNode instanceof TreeAlbumItem) {
+ TreeAlbumItem currentNode = (TreeAlbumItem) treeNode;
+ boolean selected = currentNode.getAlbum() == getSelectedAlbum();
+ return selected;
+ }
+ return null;
+ }
+
+ @SuppressWarnings("unchecked")
+ public void processSelection(NodeSelectedEvent event) {
+ Events.instance().raiseEvent(Constants.UPDATE_MAIN_AREA_EVENT, NavigationEnum.IMAGE_PREVIEW);
+ HtmlTree tree = (HtmlTree) event.getComponent();
+ TreeNode<Object> currentNode = (TreeNode<Object>)tree.getModelTreeNode(tree.getRowKey());
+ if(currentNode instanceof TreeAlbumItem){
+ TreeAlbumItem node = (TreeAlbumItem)currentNode;
+ Album album = node.getAlbum();
+ setSelectedAlbum(album);
+ setSelectedShelf(album.getParent());
+ }else if(currentNode instanceof TreeShelfItem){
+ TreeShelfItem node = (TreeShelfItem)currentNode;
+ Shelf shelf = node.getShelf();
+ setSelectedAlbum(null);
+ setSelectedShelf(shelf);
+ }
+ setSelectedUser(user);
+ setSelectedImage(null);
+ }
+
+ public boolean isSelectedImage(int index){
+ return getSelectedAlbum().getIndex(getSelectedImage()) == index -1;
+ }
+
+ public void updateSelectedItems(Image image){
+ setSelectedImage(image);
+ Integer index = getSelectedAlbum().getIndex(getSelectedImage());
+ UIComponent component = FacesContext.getCurrentInstance().getViewRoot();
+ UIDatascroller scroller = (UIDatascroller)component.findComponent(Constants.DATASCROLLER_ID);
+ Map<String, Object> attributes = scroller.getDataTable().getAttributes();
+ attributes.put(UIDatascroller.SCROLLER_STATE_ATTRIBUTE, index+1);
+ setSelectedImageIndex(index+1);
+ }
+
+ public User getSelectedUser() {
+ return selectedUser;
+ }
+
+ public void setSelectedUser(User selectedUser) {
+ this.selectedUser = selectedUser;
+ }
+
+ public User getSecondSelectedUser() {
+ return secondSelectedUser;
+ }
+
+ public void setSecondSelectedUser(User secondSelectedUser) {
+ this.secondSelectedUser = secondSelectedUser;
+ }
+
+ public Shelf getSelectedShelf() {
+ return selectedShelf;
+ }
+
+ public void setSelectedShelf(Shelf selectedShelf) {
+ this.selectedShelf = selectedShelf;
+ }
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/util/ConversationState.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/util/ImageUtils.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/util/ImageUtils.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/util/ImageUtils.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,148 @@
+/**
+ *
+ */
+package org.richfaces.realworld.util;
+
+import java.awt.Color;
+import java.awt.Dimension;
+import java.awt.Graphics2D;
+import java.awt.RenderingHints;
+import java.awt.image.BufferedImage;
+import java.io.File;
+import java.io.IOException;
+
+import javax.imageio.ImageIO;
+import javax.imageio.stream.FileImageInputStream;
+import javax.imageio.stream.ImageInputStream;
+
+import org.richfaces.model.UploadItem;
+import org.richfaces.realworld.service.Constants;
+
+/**
+ * @author Andrey Markavtsov
+ *
+ */
+public class ImageUtils {
+
+ public static class ImageDimension {
+ public int WIDTH;
+ public int HEIGHT;
+ public String POSTFIX_NAME;
+ public ImageDimension(int width, int height, String postfix_name) {
+ super();
+ WIDTH = width;
+ HEIGHT = height;
+ POSTFIX_NAME = postfix_name;
+ }
+ };
+
+ public static final String _MEDIUM = "_medium";
+ public static final String _MINI = "_mini";
+
+
+ public static ImageDimension MINI = new ImageDimension(100, 100, _MINI);
+ public static ImageDimension MEDIUM = new ImageDimension(640, 480, _MEDIUM);
+
+
+ BufferedImage bufferedImage;
+
+ double width;
+ double height;
+
+ public ImageUtils(BufferedImage bufferedImage) {
+ if (bufferedImage == null) {
+ throw new NullPointerException("Buffered image is null");
+ }
+
+ this.height = bufferedImage.getHeight();
+ this.width = bufferedImage.getWidth();
+ this.bufferedImage = bufferedImage;
+ }
+
+ private BufferedImage scaleToWidth(int width) throws IOException {
+ double height = width * this.height / this.width;
+ BufferedImage newImage = new BufferedImage(width, (int) height,
+ BufferedImage.TYPE_INT_RGB);
+ Graphics2D graphics2D = createGraphics(newImage);
+ graphics2D.drawImage(bufferedImage, 0, 0, (int) width, (int) height,
+ null);
+ return newImage;
+ }
+
+ private BufferedImage scaleToHeight(int height) throws IOException {
+ double width = height * this.width / this.height;
+ BufferedImage newImage = new BufferedImage((int) width, (int) height,
+ BufferedImage.TYPE_INT_RGB);
+ Graphics2D graphics2D = createGraphics(newImage);
+ graphics2D.drawImage(bufferedImage, 0, 0, (int) width, (int) height,
+ null);
+ return newImage;
+ }
+
+ private Graphics2D createGraphics(BufferedImage image) {
+ Graphics2D graphics2D = image.createGraphics();
+ graphics2D.setBackground(new Color(255, 255, 255));
+ graphics2D.clearRect(0, 0, image.getWidth(), image.getHeight());
+ graphics2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
+ RenderingHints.VALUE_INTERPOLATION_BICUBIC);
+ return graphics2D;
+ }
+
+ public BufferedImage resizeImage(double width, double height)
+ throws IOException {
+
+ if (width > height) {
+ if (this.bufferedImage.getWidth() < width) {
+ return bufferedImage;
+ }
+ return scaleToWidth((int) width);
+ } else {
+ if (this.bufferedImage.getHeight() < height) {
+ return bufferedImage;
+ }
+ return scaleToHeight((int) height);
+ }
+
+ }
+
+ public static void resizeImage(UploadItem image, String pathToUpload, ImageDimension ... dimensions)
+ throws IOException {
+
+ BufferedImage bufferedImage = ImageIO.read(new FileImageInputStream(image.getFile()));
+
+ ImageUtils utils = new ImageUtils(bufferedImage);
+ int width, height;
+
+ ImageIO.write(bufferedImage, Constants.JPG, new File(pathToUpload));
+
+ for (ImageDimension dimension : dimensions) {
+ String fileName = transformPath(pathToUpload,dimension.POSTFIX_NAME);
+ width = dimension.WIDTH;
+ height = dimension.HEIGHT;
+ BufferedImage resizedBuffer = bufferedImage;
+
+ if (width > height) {
+ if (bufferedImage.getWidth() > width) {
+ resizedBuffer = utils.scaleToWidth((int) width);
+ }
+ } else {
+ if (bufferedImage.getHeight() > height) {
+ resizedBuffer = utils.scaleToHeight((int) height);
+ }
+ }
+
+ if (resizedBuffer != null) {
+ ImageIO.write(resizedBuffer, Constants.JPG, new File(fileName));
+ }
+
+ }
+
+ }
+
+ public static String transformPath(String target, String substitute){
+ String begin = target.substring(0, target.lastIndexOf(Constants.DOT));
+ String end = target.substring(target.lastIndexOf(Constants.DOT));
+ return begin + substitute + end;
+ }
+
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/util/ImageUtils.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/util/RenderLogic.java
===================================================================
--- trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/util/RenderLogic.java (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/util/RenderLogic.java 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,122 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.realworld.util;
+
+import java.io.Serializable;
+
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Scope;
+import org.jboss.seam.security.Identity;
+import org.richfaces.realworld.domain.Album;
+import org.richfaces.realworld.domain.Image;
+import org.richfaces.realworld.domain.User;
+import org.richfaces.realworld.navigation.NavigationEnum;
+import org.richfaces.realworld.service.Constants;
+
+@Name("renderLogic")
+(a)Scope(ScopeType.CONVERSATION)
+public class RenderLogic implements Serializable{
+
+ @In User user;
+ @In Identity identity;
+ @In ConversationState conversationState;
+
+ private static final long serialVersionUID = 5656562187249324512L;
+
+ public boolean shouldRenderShelf(){
+ return conversationState.getSelectedUser()!=null && conversationState.getSelectedImage() == null && conversationState.getSelectedShelf() != null && conversationState.getSelectedAlbum() == null;
+ }
+
+ public boolean shouldRenderShelfs(){
+ return conversationState.getSelectedUser()!=null && conversationState.getSelectedImage() == null && conversationState.getSelectedShelf() == null;
+ }
+
+ public boolean shouldRenderImage(){
+ return conversationState.getSelectedAlbum()!=null && conversationState.getSelectedImage() != null;
+ }
+
+ public boolean shouldRenderImageList(){
+ return conversationState.getSelectedAlbum()!=null && conversationState.getSelectedImage() == null;
+ }
+
+ public boolean isCurrentUserProfileSelected(){
+ return user.equals(conversationState.getSelectedUser());
+ }
+
+ public boolean isSecondUserProfileSelected(){
+ return conversationState.getSecondSelectedUser() != null;
+ }
+
+ public boolean isUserAlbumSelected(){
+ return conversationState.getSelectedAlbum() != null && conversationState.getSelectedAlbum().getOwner().equals(user);
+ }
+
+ public boolean isUserGuest(){
+ return !identity.hasRole(Constants.ADMIN_ROLE);
+ }
+
+ public boolean isOwner(User u){
+ return user.equals(u);
+ }
+
+ public boolean isProfileSelected(){
+ return conversationState.getMainArea() == NavigationEnum.USER_PREFS;
+ }
+
+ public boolean shouldRenderFileUpload(){
+ return conversationState.getSelectedAlbum()!=null && conversationState.getSelectedAlbum().getOwner().equals(user);
+ }
+
+ public boolean isUserSelected(){
+ return user.equals(conversationState.getSelectedUser());
+ }
+
+
+ public boolean isAlbumSelected(){
+ return conversationState.getSelectedAlbum() != null;
+ }
+
+ public boolean isImageSelected(){
+ return conversationState.getSelectedImage() != null;
+ }
+
+ public boolean isAccessToAlbumGranted(Album album){
+ return album.getOwner().equals(user) || album.isShared();
+ }
+
+ public boolean isUserAlbum(Album album){
+ if(album == null){
+ return false;
+ }
+ return album.getOwner().equals(user);
+ }
+
+ public boolean isFavoriteAlbum(Album album){
+ return user.getFavoriteAlbums().contains(album);
+ }
+
+ public boolean isFavoriteImage(Image image){
+ return user.getFavoriteImages().contains(image);
+ }
+
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/java/org/richfaces/realworld/util/RenderLogic.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/resources/messages_en.properties
===================================================================
--- trunk/test-applications/realworld2/web/src/main/resources/messages_en.properties (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/resources/messages_en.properties 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,325 @@
+up=\u2191
+down=\u2193
+left=\u2039
+right=\u203A
+
+validator.assertFalse=validation failed
+validator.assertTrue=validation failed
+validator.future=must be a future date
+validator.length=length must be between {min} and {max}
+validator.max=must be less than or equal to {value}
+validator.min=must be greater than or equal to {value}
+validator.notNull=may not be null
+validator.past=must be a past date
+validator.pattern=must match "{regex}"
+validator.range=must be between {min} and {max}
+validator.size=size must be between {min} and {max}
+validator.email=must be a well-formed email address
+
+org.jboss.seam.loginFailed=Login failed
+org.jboss.seam.loginSuccessful=Welcome, #0
+
+org.jboss.seam.TransactionFailed=Transaction failed
+org.jboss.seam.NoConversation=The conversation ended, timed out or was processing another request
+org.jboss.seam.IllegalNavigation=Illegal navigation
+org.jboss.seam.ProcessEnded=Process #0 already ended
+org.jboss.seam.ProcessNotFound=Process #0 not found
+org.jboss.seam.TaskEnded=Task #0 already ended
+org.jboss.seam.TaskNotFound=Task #0 not found
+org.jboss.seam.NotLoggedIn=Please log in first
+
+javax.faces.component.UIInput.CONVERSION=value could not be converted to the expected type
+javax.faces.component.UIInput.REQUIRED=value is required
+javax.faces.component.UIInput.UPDATE=an error occurred when processing your submitted information
+javax.faces.component.UISelectOne.INVALID=value is not valid
+javax.faces.component.UISelectMany.INVALID=value is not valid
+
+javax.faces.converter.BigDecimalConverter.DECIMAL=value must be a number
+javax.faces.converter.BigDecimalConverter.DECIMAL_detail=value must be a signed decimal number consisting of zero or more digits, optionally followed by a decimal point and fraction, eg. {1}
+javax.faces.converter.BigIntegerConverter.BIGINTEGER=value must be an integer
+javax.faces.converter.BigIntegerConverter.BIGINTEGER_detail=value must be a signed integer number consisting of zero or more digits
+javax.faces.converter.BooleanConverter.BOOLEAN=value must be true or false
+javax.faces.converter.BooleanConverter.BOOLEAN_detail=value must be true or false (any value other than true will evaluate to false)
+javax.faces.converter.ByteConverter.BYTE=value must be a number between 0 and 255
+javax.faces.converter.ByteConverter.BYTE_detail=value must be a number between 0 and 255
+javax.faces.converter.CharacterConverter.CHARACTER=value must be a character
+javax.faces.converter.CharacterConverter.CHARACTER_detail=value must be a valid ASCII character
+javax.faces.converter.DateTimeConverter.DATE=value must be a date
+javax.faces.converter.DateTimeConverter.DATE_detail=value must be a date, eg. {1}
+javax.faces.converter.DateTimeConverter.TIME=value must be a time
+javax.faces.converter.DateTimeConverter.TIME_detail=value must be a time, eg. {1}
+javax.faces.converter.DateTimeConverter.DATETIME=value must be a date and time
+javax.faces.converter.DateTimeConverter.DATETIME_detail=value must be a date and time, eg. {1}
+javax.faces.converter.DateTimeConverter.PATTERN_TYPE=a pattern or type attribute must be specified to convert the value
+javax.faces.converter.DoubleConverter.DOUBLE=value must be a number
+javax.faces.converter.DoubleConverter.DOUBLE_detail=value must be a number between 4.9E-324 and 1.7976931348623157E308
+javax.faces.converter.EnumConverter.ENUM=value must be convertible to an enum
+javax.faces.converter.EnumConverter.ENUM_detail=value must be convertible to an enum or from the enum that contains the constant {1}
+javax.faces.converter.EnumConverter.ENUM_NO_CLASS=value must be convertible to an enum or from the enum, but no enum class provided
+javax.faces.converter.EnumConverter.ENUM_NO_CLASS_detail=value must be convertible to an enum or from the enum, but no enum class provided
+javax.faces.converter.FloatConverter.FLOAT=value must be a number
+javax.faces.converter.FloatConverter.FLOAT_detail=value must be a number between 1.4E-45 and 3.4028235E38
+javax.faces.converter.IntegerConverter.INTEGER=value must be an integer
+javax.faces.converter.IntegerConverter.INTEGER_detail=value must be an integer number between -2147483648 and 2147483647
+javax.faces.converter.LongConverter.LONG=value must be an integer
+javax.faces.converter.LongConverter.LONG_detail=must be an integer number between -9223372036854775808 and 9223372036854775807
+javax.faces.converter.NumberConverter.CURRENCY=value must be a currency amount
+javax.faces.converter.NumberConverter.CURRENCY_detail=value must be a currency amount, eg. {1}
+javax.faces.converter.NumberConverter.PERCENT=value must be a percentage amount
+javax.faces.converter.NumberConverter.PERCENT_detail=value must be a percentage amount, eg. {1}
+javax.faces.converter.NumberConverter.NUMBER=value must be a number
+javax.faces.converter.NumberConverter.NUMBER_detail=value must be a number
+javax.faces.converter.NumberConverter.PATTERN=value must be a number
+javax.faces.converter.NumberConverter.PATTERN_detail=value must be a number
+javax.faces.converter.ShortConverter.SHORT=value must be an integer
+javax.faces.converter.ShortConverter.SHORT_detail=value must be an integer number between -32768 and 32767
+
+javax.faces.validator.DoubleRangeValidator.MAXIMUM=value must be less than or equal to {0}
+javax.faces.validator.DoubleRangeValidator.MINIMUM=value must be greater than or equal to {0}
+javax.faces.validator.DoubleRangeValidator.NOT_IN_RANGE=value must be between {0} and {1}
+javax.faces.validator.DoubleRangeValidator.TYPE=value is not of the correct type
+javax.faces.validator.LengthValidator.MAXIMUM=value is must be shorter than or equal to {0} characters
+javax.faces.validator.LengthValidator.MINIMUM=value is must be longer than or equal to {0} characters
+javax.faces.validator.LongRangeValidator.MAXIMUM=value must be less than or equal to {0}
+javax.faces.validator.LongRangeValidator.MINIMUM=value must be greater than or equal to {0}
+javax.faces.validator.LongRangeValidator.NOT_IN_RANGE=value must be between {0} and {1}
+javax.faces.validator.LongRangeValidator.TYPE=value is not of the correct type
+
+javax.faces.validator.NOT_IN_RANGE=value must be between {0} and {1}
+javax.faces.converter.STRING=value could not be converted to a string
+
+error=Error
+errorStub=Something bad happened :-(
+
+fileUpload.header=You will upload files in album: #{conversationState.selectedAlbum.name}. If you want upload in another album, select it.
+fileUpload.header2=Choose album:
+fileUpload.uploadedPanelHeader=Uploaded Files Info
+fileUpload.fileNameLabel=File Name:
+fileUpload.fileLengthLabel=File Length(bytes):
+fileUpload.fileEditLabel=Edit
+fileUpload.storeAllLabel=Store All
+fileUpload.storeSelectedLabel=Store Selected
+fileUpload.clearLabel=Clear Uploaded Data
+fileUpload.clearSelectedLabel=Clear Selected
+
+comment.label=View comments(#{conversationState.selectedImage.comments.size})
+comment.author=Author: #{comment.author.login}
+comment.askForFriend=Ask for friendship
+comment.askForFriend.message=Please, add me to your friends
+comment.date=Date: #{comment.date}
+comment.delete=Delete comment
+comment.edit=Edit Comment
+comment.noComments=No Comments for this image
+comment.add=Add comment
+comment.save=Save
+comment.cancel=Cancel
+
+message.sendMessage=Send message
+message.sendToUser=Send message for this user
+message.readed=Mark as read
+message.authorHeader=Author
+message.themeHeader=Theme
+message.dateHeader=Date
+message.theme=Theme\:
+message.author=Author\:
+message.date=Date: #{record.date}
+message.delete=Delete
+message.read=Read
+message.re=Re:
+message.message=Message
+message.owner=Owner\:
+message.content=Content\:
+message.addFriend=Add to friends
+message.friendRequest=It is request for friendship message. You may add this user to your friends by clicking on the 'Add to Friends button'
+message.send=Send
+message.close=Close
+
+confirm.confirm=Confirmation:
+confirm.ok=OK
+confirm.cancel=Cancel
+
+shared.delete=Delete From shared
+
+album.edit=Edit
+album.delete=Delete
+album.delete.confirm=Are you sure? All images associated with this album will also dropped! Click OK to proceed, else click Cancel.
+album.add=Add album
+album.edit.long=Edit Album:
+album.addImages=Add images
+album.name=Name:
+album.shared=Shared:
+album.owner=Owner:
+album.desc=Short description:
+album.store=Store
+album.cancel=Cancel
+
+scroller.first=First
+scroller.last=Last
+scroller.prev=Prev
+scroller.next=Next
+scroller.pager=Image #{conversationState.selectedImageIndex} of #{conversationState.selectedAlbum.images.size}
+
+image.panelHeader=Image Preview: Selected Album: #{conversationState.selectedAlbum.name}
+image.delete=Delete
+image.delete.confirm=Are you sure? Click OK to proceed, else click Cancel.
+image.edit=Edit Properties
+image.prop=Image Properties:
+image.name=Name:
+image.desc=Short Description:
+image.album=Album
+image.date=Created Date:
+image.meta=Image Meta-information:
+image.store=Store
+image.cancel=Cancel
+
+slideshow.start=Start Slideshow
+slideshow.stop=Stop slideshow
+slideshow.interval=Interval in sec
+
+index.header=Welcome!
+
+login.header=Please login here
+login.login=Login
+login.userName=Username
+login.password=Password
+login.register=Register
+login.anonymous=Anonymous
+
+friends.delete=Delete from friends
+friends.choose=Choose album for preview:
+
+search.advanced=Advanced search:
+search.rank=Rank:
+search.numberVotes=Number of votes:
+search.date=Date created
+search.addShared=Add to favorite Albums
+search.preview=Preview
+search.search=Search
+search.popular=Popular Images
+search.unpopular=UnPopular Images
+search.nofound=No images found
+
+user.loginPrefs=Login Preferences
+user.registration=Registration
+user.reginfo=Registration Info:
+user.firstname=First name
+user.secondname=Second Name
+user.login=Login
+user.password=Password
+user.email=Email
+user.birthdate=Birth Date
+user.avatar=Avatar
+user.userPrefs=User preferences
+user.save=Save
+user.reset=Reset
+user.confirm=Confirm Password
+user.avatar.info=Uploaded File Info
+user.avatar.name=File Name:
+user.avatar.length=File Length(bytes):
+user.register=Register
+user.cancel=Cancel
+user.exist=User with this login already exist;
+user.confirm.error=Confirm Password not equals password
+
+menu.welcome=Welcome, #{identity.username}!
+menu.welcome.guest=Welcome, guest! If you want access to full version of application, please register or login.
+menu.message.tooltip=You have #{messageManager.countUnreadedMessages} not-readed messages
+menu.messages=Read Messages
+menu.search=Search
+menu.image=Image Preview
+menu.user=User Prefs
+menu.file=File Upload
+menu.logout=Logout
+menu.login=Login
+
+realworld=RealWorld Demo application
+panel.albumHeader=Album Management
+panel.my=My albums
+panel.friend=Friend Albums
+panel.shared=Favorites
+
+samplename=Sample Name
+sampledesc=Sample Description
+addedtofriends=You are were added to friends
+addedtofriendsby=You are were added to friends by User
+removedfromfriends=You are were removed from friends
+removedfromfriendsby=You are were removed from friends of
+equals=Equals
+more=More
+less=Less
+nomatter=No Matter
+small=Small
+medium=Medium
+full=Full size
+
+file_processing_error=Error processing occured during upload
+file_saving_error=Error occured during saving image to disk
+invalid_login=Invalid login or password
+login_success=You are successfully registered.
+wrong_dnd=That album isn't yours, so you can't change it's location
+friend_error=This user won't be your friend!
+acess_not_granted=You have no rights to view this album
+invalid_syntax=Invalid syntax
+album_addImage=Add image
+album_addToFavorites=Add to favorite albums
+album_present=Album with this name already present!
+album_deleteFromFavorite=Delete from favorite
+album_show=Show album
+album_reqForFriend=Send owner request for friendship
+album_deleteFromFriends=Delete owner from friends
+album_viewProfile=View profile of owner
+album_sendMessage=Send message for owner
+album_show_all=Show all albums of owner
+album_show_history=Show message history with owner
+
+
+image_showLinks=Show Links
+image_addFavorites=Add to favorite images
+image_deleteFavorites=Remove from favorite images
+image_show_parent=Show parent album
+image_show=Show image
+image_addParentToFavorite=Add parent to favorite albums
+image_removeParentFavorite=Remove parent from favorite albums
+image_showParent=Show parent album
+
+user_profile=View profile
+user_history=Show message history
+user_show_albums=Show albums
+
+fileUpload_choosemode=Choose mode for upload:
+
+camera=Camera
+uploaded=Uploaded at
+size=Size
+dimensions=Dimensions
+sizeInKB=Size in KB
+width=Width
+height=Height
+choose_camera=Choose camera:
+choose_metatag=Choose metatag for search:
+case_sensitive=Case-sensitive search
+
+my_albums=My albums
+my_friends=My friends
+content=Content
+closeHistory=Close history
+history=History
+
+errorGeneral=OOOps..... Error happened
+errorDetail=Error: #{error.message}
+
+albums=Albums:
+images=Images:
+friends_albums=Friend albums
+album=Album:
+owner=Owner
+metatags=Metatags:
+rating=Rating:
+friends=Friends
+friendsInfo=Friends info
+viewProfile=View profile
+show_albums=Show albums
+show_history=Show message history
+author=Author
+linkManagement=Link management
+close=Close
\ No newline at end of file
Property changes on: trunk/test-applications/realworld2/web/src/main/resources/messages_en.properties
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/resources/messages_ru.properties
===================================================================
--- trunk/test-applications/realworld2/web/src/main/resources/messages_ru.properties (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/resources/messages_ru.properties 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,266 @@
+\ufeffvalidator.assertFalse=\u041f\u0440\u0438 \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u043b\u0430 \u043e\u0448\u0438\u0431\u043a\u0430
+validator.assertTrue=\u041F\u0440\u0438 \u0432\u0430\u043B\u0438\u0434\u0430\u0446\u0438\u0438 \u043F\u0440\u043E\u0438\u0437\u043E\u0448\u043B\u0430 \u043E\u0448\u0438\u0431\u043A\u0430
+validator.future=\u042D\u0442\u0430 \u0434\u0430\u0442\u0430 \u0434\u043E\u043B\u0436\u043D\u0430 \u0431\u044B\u0442\u044C \u0432 \u0431\u0443\u0434\u0443\u0449\u0435\u043C
+validator.length=\u0414\u043B\u0438\u043D\u0430 \u0434\u043E\u043B\u0436\u043D\u0430 \u0431\u044B\u0442\u044C \u043C\u0435\u0436\u0434\u0443 {min} \u0438 {max}
+validator.max=\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u043C\u0435\u043D\u044C\u0448\u0435 \u0438\u043B\u0438 \u0440\u0430\u0432\u043D\u044B\u043C {value}
+validator.min=\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u0431\u043E\u043B\u044C\u0448\u0435 \u0438\u043B\u0438 \u0440\u0430\u0432\u043D\u044B\u043C {value}
+validator.notNull=\u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u043D\u0443\u043B\u0435\u043C
+validator.past=\u042D\u0442\u0430 \u0434\u0430\u0442\u0430 \u0434\u043E\u043B\u0436\u043D\u0430 \u0431\u044B\u0442\u044C \u0432 \u043F\u0440\u043E\u0448\u043B\u043E\u043C
+validator.pattern=\u0434\u043E\u043B\u0436\u043D\u043E \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u043E\u0432\u0430\u0442\u044C \u0432\u044B\u0440\u0430\u0436\u0435\u043D\u0438\u044E "{regex}"
+validator.range=\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u0434\u043E\u043B\u0436\u043D\u043E \u043D\u0430\u0445\u043E\u0434\u0438\u0442\u044C\u0441\u044F \u043C\u0435\u0436\u0434\u0443 {min} \u0438 {max}
+validator.size=\u043A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u043C\u0435\u0436\u0434\u0443 {min} \u0438 {max}
+validator.email=email \u0430\u0434\u0440\u0435\u0441 \u0434\u043E\u043B\u0436\u0435\u043D \u0431\u044B\u0442\u044C \u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u044B\u043C
+
+org.jboss.seam.loginFailed=\u041E\u0448\u0438\u0431\u043A\u0430 \u043F\u0440\u0438 \u043B\u043E\u0433\u0438\u043D\u0435
+org.jboss.seam.loginSuccessful=\u0414\u043E\u0431\u0440\u043E \u043F\u043E\u0436\u0430\u043B\u043E\u0432\u0430\u0442\u044C, \#0
+
+javax.faces.component.UIInput.CONVERSION=\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u043F\u043E\u043B\u044F \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u043F\u0440\u0435\u043E\u0431\u0440\u0430\u0437\u043E\u0432\u0430\u043D\u043E \u043A \u043D\u0443\u0436\u043D\u043E\u043C\u0443 \u0444\u043E\u0440\u043C\u0430\u0442\u0443
+javax.faces.component.UIInput.REQUIRED=\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E
+javax.faces.component.UIInput.UPDATE=\u043F\u0440\u043E\u0438\u0437\u043E\u0448\u043B\u0430 \u043E\u0448\u0438\u0431\u043A\u0430
+javax.faces.component.UISelectOne.INVALID=\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u043D\u0435\u0432\u0435\u0440\u043D\u043E
+javax.faces.component.UISelectMany.INVALID=\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u043D\u0435\u0432\u0435\u0440\u043D\u043E
+
+javax.faces.converter.BigDecimalConverter.DECIMAL=\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u0447\u0438\u0441\u043B\u043E\u043C
+javax.faces.converter.BigDecimalConverter.DECIMAL_detail=\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u043F\u043E\u043B\u043E\u0436\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u043C \u0432\u0435\u0449\u0435\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u043C \u0447\u0438\u0441\u043B\u043E\u043C, \u0441\u043E\u0441\u0442\u043E\u044F\u0449\u0438\u043C \u0438\u0437 \u043E\u0434\u043D\u043E\u0439 \u0438\u043B\u0438 \u0431\u043E\u043B\u0435\u0435 \u0446\u0438\u0444\u0440, \u0430 \u0442\u0430\u043A\u0436\u0435 \u043E\u043F\u0446\u0438\u043E\u043D\u0430\u043B\u044C\u043D\u043E \u0434\u043E\u043F\u043E\u043B\u043D\u0435\u043D\u043E \u0442\u043E\u0447\u043A\u043E\u0439, \u043D\u0430\u043F\u0440\u0438\u043C\u0435\u0440 . {1}
+javax.faces.converter.BigIntegerConverter.BIGINTEGER=\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u0446\u0435\u043B\u044B\u043C \u0447\u0438\u0441\u043B\u043E\u043C
+javax.faces.converter.BigIntegerConverter.BIGINTEGER_detail=\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u043F\u043E\u043B\u043E\u0436\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u043C \u0447\u0438\u0441\u043B\u043E\u043C, \u0441\u043E\u0441\u0442\u043E\u044F\u0449\u0438\u043C \u0438\u0437 \u043E\u0434\u043D\u043E\u0439 \u0438\u043B\u0438 \u0431\u043E\u043B\u0435\u0435 \u0446\u0438\u0444\u0440
+javax.faces.converter.BooleanConverter.BOOLEAN=\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u043B\u0438\u0431\u043E \u0438\u0441\u0442\u0438\u043D\u043D\u044B\u043C \u043B\u0438\u0431\u043E \u043D\u0435\u0442
+javax.faces.converter.ByteConverter.BYTE=\u0447\u0438\u0441\u043B\u043E \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u043C\u0435\u0436\u0434\u0443 0 \u0438 255
+javax.faces.converter.ByteConverter.BYTE_detail=\u0447\u0438\u0441\u043B\u043E \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u043C\u0435\u0436\u0434\u0443 0 \u0438 255
+
+error=\u041E\u0448\u0438\u0431\u043A\u0430
+errorStub=\u0421\u043B\u0443\u0447\u0438\u043B\u043E\u0441\u044C \u0447\u0442\u043E-\u0442\u043E \u043D\u0435\u043F\u0440\u0435\u0434\u0432\u0438\u0434\u0435\u043D\u043D\u043E\u0435 \:-(
+
+fileUpload.header=\u0412\u0430\u0448\u0438 \u0444\u0430\u0439\u043B\u044B \u0431\u0443\u0434\u0443\u0442 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043D\u044B \u0432 \u0430\u043B\u044C\u0431\u043E\u043C\: \#{conversationState.selectedAlbum.name}. \u0415\u0441\u043B\u0438 \u0432\u044B \u0445\u043E\u0442\u0438\u0442\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C \u0438\u0445 \u0432 \u0434\u0440\u0443\u0433\u043E\u0439 \u0430\u043B\u044C\u0431\u043E\u043C, \u0432\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0435\u0433\u043E.
+fileUpload.header2=\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0430\u043B\u044C\u0431\u043E\u043C\:
+fileUpload.uploadedPanelHeader=\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F \u043E \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043D\u043D\u044B\u0445 \u0444\u0430\u0439\u043B\u0430\u0445
+fileUpload.fileNameLabel=\u0418\u043C\u044F \u0444\u0430\u0439\u043B\u0430\:
+fileUpload.fileLengthLabel=\u0420\u0430\u0437\u043C\u0435\u0440 \u0444\u0430\u0439\u043B\u0430 \u0432 \u0431\u0430\u0439\u0442\u0430\u0445\:
+fileUpload.fileEditLabel=\u0420\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C
+fileUpload.storeAllLabel=\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u0432\u0441\u0435
+fileUpload.storeSelectedLabel=\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u0432\u044B\u0434\u0435\u043B\u0435\u043D\u043D\u044B\u0435
+fileUpload.clearLabel=\u041E\u0447\u0438\u0441\u0442\u0438\u0442\u044C \u0432\u0441\u0435
+fileUpload.clearSelectedLabel=\u041E\u0447\u0438\u0441\u0442\u0438\u0442\u044C \u0432\u044B\u0434\u0435\u043B\u0435\u043D\u043D\u044B\u0435
+
+comment.label=\u041A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0440\u0438\u0438 (\#{conversationState.selectedImage.comments.size})
+comment.author=\u0410\u0432\u0442\u043E\u0440\: \#{comment.author.login}
+comment.askForFriend=\u0417\u0430\u043F\u0440\u043E\u0441 \u043D\u0430 \u0434\u0440\u0443\u0436\u0431\u0443
+comment.askForFriend.message=\u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u0434\u043E\u0431\u0430\u0432\u044C\u0442\u0435 \u043C\u0435\u043D\u044F \u0432 \u0441\u043F\u0438\u0441\u043E\u043A \u0432\u0430\u0448\u0438\u0445 \u0434\u0440\u0443\u0437\u0435\u0439.
+comment.date=\u0414\u0430\u0442\u0430\: \#{comment.date}
+comment.delete=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0440\u0438\u0439
+comment.edit=\u0420\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0440\u0438\u0439
+comment.noComments=\u041A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0440\u0438\u0438 \u043A \u044D\u0442\u043E\u0439 \u0444\u043E\u0442\u043E\u0433\u0440\u0430\u0444\u0438\u0438 \u043E\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044E\u0442
+comment.add=\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043C\u043C\u043C\u0435\u043D\u0442\u0430\u0440\u0438\u0439
+comment.save=\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C
+comment.cancel=\u041E\u0442\u043C\u0435\u043D\u0430
+
+message.sendMessage=\u041F\u043E\u0441\u043B\u0430\u0442\u044C \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435
+message.sendToUser=\u041F\u043E\u0441\u043B\u0430\u0442\u044C \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435 \u044D\u0442\u043E\u043C\u0443 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044E
+message.readed=\u041E\u0442\u043C\u0435\u0442\u0438\u0442\u044C \u043A\u0430\u043A \u043F\u0440\u043E\u0447\u0438\u0442\u0430\u043D\u043D\u043E\u0435
+message.authorHeader=\u0410\u0432\u0442\u043E\u0440
+message.themeHeader=\u0422\u0435\u043C\u0430
+message.dateHeader=\u0414\u0430\u0442\u0430
+message.theme=\u0422\u0435\u043C\u0430\:
+message.author=\u0410\u0432\u0442\u043E\u0440\:
+message.date=\u0414\u0430\u0442\u0430\: \#{record.date}
+message.delete=\u0423\u0434\u0430\u043B\u0438\u0442\u044C
+message.read=\u041F\u0440\u043E\u0447\u0438\u0442\u0430\u0442\u044C
+message.re=Re:
+message.message=\u0421\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435
+message.owner=\u041F\u043E\u043B\u0443\u0447\u0430\u0442\u0435\u043B\u044C\:
+message.content=\u0421\u043E\u0434\u0435\u0440\u0436\u0430\u043D\u0438\u0435\:
+message.addFriend=\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0432 \u0434\u0440\u0443\u0437\u044C\u044F
+message.friendRequest=\u042D\u0442\u043E \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435 \u044F\u0432\u043B\u044F\u0435\u0442\u0441\u044F \u0437\u0430\u043F\u0440\u043E\u0441\u043E\u043C \u043D\u0430 \u0434\u0440\u0443\u0436\u0431\u0443. Y\u0412\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u0434\u043E\u0431\u0430\u0432\u0442\u044C \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F \u0432 \u0434\u0440\u0443\u0437\u044C\u044F, \u043D\u0430\u0436\u0430\u0432 \u043D\u0430 \u043A\u043D\u043E\u043F\u043A\u0443 '\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0432 \u0434\u0440\u0443\u0437\u044C\u044F'.
+message.send=\u041F\u043E\u0441\u043B\u0430\u0442\u044C
+message.close=\u0417\u0430\u043A\u0440\u044B\u0442\u044C
+
+confirm.confirm=\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u0435\:
+confirm.ok=OK
+confirm.cancel=\u041E\u0442\u043C\u0435\u043D\u0430
+
+shared.delete=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0438\u0437 shared \u0430\u043B\u044C\u0431\u043E\u043C\u043E\u0432
+
+album.edit=\u0420\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C
+album.delete=\u0423\u0434\u0430\u043B\u0438\u0442\u044C
+album.delete.confirm=\u0412\u044B \u0443\u0432\u0435\u0440\u0435\u043D\u044B? \u0412\u0441\u0435 \u043A\u0430\u0440\u0442\u0438\u043D\u043A\u0438 \u0432 \u044D\u0442\u043E\u043C \u0430\u043B\u044C\u0431\u043E\u043C\u0435 \u0442\u0430\u043A\u0436\u0435 \u0431\u0443\u0434\u0443\u0442 \u0443\u0434\u0430\u043B\u0435\u043D\u044B\! \u041D\u0430\u0436\u043C\u0438\u0442\u0435 \u041E\u041A \u0434\u043B\u044F \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0435\u043D\u0438\u044F \u0438\u043B\u0438 \u041E\u0442\u043C\u0435\u043D\u0430 \u0434\u043B\u044F \u043F\u0440\u0435\u0440\u044B\u0432\u0430\u043D\u0438\u044F \u043E\u043F\u0435\u0440\u0430\u0446\u0438\u0438.
+album.add=\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0430\u043B\u044C\u0431\u043E\u043C
+album.edit.long=\u0420\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0430\u043B\u044C\u0431\u043E\u043C\:
+album.addImages=\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u0430\u0440\u0442\u0438\u043D\u043E\u043A
+album.name=\u0418\u043C\u044F\:
+album.shared=\u0414\u043E\u0441\u0442\u0443\u043F \u0434\u043B\u044F \u0432\u0441\u0435\u0445\:
+album.owner=\u0412\u043B\u0430\u0434\u0435\u043B\u0435\u0446\:
+album.desc=\u041A\u043E\u0440\u043E\u0442\u043A\u043E\u0435 \u043E\u043F\u0438\u0441\u0430\u043D\u0438\u0435\:
+album.store=\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C
+album.cancel=\u041E\u0442\u043C\u0435\u043D\u0430
+
+scroller.first=\u041F\u0435\u0440\u0432\u0430\u044F
+scroller.last=\u041F\u043E\u0441\u043B\u0435\u0434\u043D\u044F\u044F
+scroller.prev=\u041F\u0440\u0435\u0434\u044B\u0434\u0443\u0449\u0430\u044F
+scroller.next=\u0421\u043B\u0435\u0434\u0443\u044E\u0449\u0430\u044F
+scroller.pager=\u0418\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435 \#{conversationState.selectedImageIndex} \u0438\u0437 \#{conversationState.selectedAlbum.images.size}
+
+image.panelHeader=\u041F\u0440\u043E\u0441\u043C\u043E\u0442\u0440 \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0439\: \u0412\u044B\u0431\u0440\u0430\u043D\u043D\u044B\u0439 \u0430\u043B\u044C\u0431\u043E\u043C\: \#{conversationState.selectedAlbum.name}
+image.delete=\u0423\u0434\u0430\u043B\u0438\u0442\u044C
+image.delete.confirm=\u0412\u044B \u0443\u0432\u0435\u0440\u0435\u043D\u044B?
+image.edit=\u0420\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0441\u0432\u043E\u0439\u0441\u0442\u0432\u0430
+image.prop=\u0421\u0432\u043E\u0439\u0441\u0442\u0432\u0430 \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u044F\:
+image.name=\u041D\u0430\u0437\u0432\u0430\u043D\u0438\u0435\:
+image.desc=\u041A\u043E\u0440\u043E\u0442\u043A\u043E\u0435 \u043E\u043F\u0438\u0441\u0430\u043D\u0438\u0435\:
+image.album=\u0410\u043B\u044C\u0431\u043E\u043C
+image.date=\u0414\u0430\u0442\u0430 \u0441\u043E\u0437\u0434\u0430\u043D\u0438\u044F\:
+image.meta=\u041C\u0435\u0442\u0430-\u0438\u043D\u043E\u0444\u0440\u043C\u0430\u0446\u0438\u044F\:
+image.store=\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C
+image.cancel=\u041E\u0442\u043C\u0435\u043D\u0430
+
+slideshow.start=\u041D\u0430\u0447\u0430\u0442\u044C \u0441\u043B\u0430\u0439\u0434-\u0448\u043E\u0443
+slideshow.stop=\u041E\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C \u0441\u043B\u0430\u0439\u0434-\u0448\u043E\u0443
+slideshow.interval=\u0418\u043D\u0442\u0435\u0440\u0432\u0430\u043B \u0432 \u0441\u0435\u043A.
+
+index.header=\u0414\u043E\u0431\u0440\u043E \u043F\u043E\u0436\u0430\u043B\u043E\u0432\u0430\u0442\u044C\!
+
+login.header=\u0412\u0445\u043E\u0434 \u0432 \u0441\u0438\u0441\u0442\u0435\u043C\u0443
+login.login=\u041B\u043E\u0433\u0438\u043D
+login.userName=\u0418\u043C\u044F \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F
+login.password=\u041F\u0430\u0440\u043E\u043B\u044C
+login.register=\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044F
+login.anonymous=\u0410\u043D\u043E\u043D\u0438\u043C\u043D\u044B\u0439 \u0432\u0445\u043E\u0434
+
+friends.delete=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0438\u0437 \u0441\u043F\u0438\u0441\u043A\u0430 \u0434\u0440\u0443\u0437\u0435\u0439
+friends.choose=\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0430\u043B\u044C\u0431\u043E\u043C \u0434\u043B\u044F \u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440\u0430\:
+
+search.advanced=\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u043D\u044B\u0439 \u043F\u043E\u0438\u0441\u043A\:
+search.rank=\u0422\u0435\u043A\u0443\u0449\u0430\u044F \u043E\u0446\u0435\u043D\u043A\u0430\:
+search.numberVotes=\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u043F\u0440\u043E\u0433\u043E\u043B\u043E\u0441\u043E\u0432\u0430\u0432\u0448\u0438\u0445\:
+search.date=\u0414\u0430\u0442\u0430 \u0441\u043E\u0437\u0434\u0430\u043D\u0438\u044F
+search.addShared=\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A 'shared' \u0430\u043B\u044C\u0431\u043E\u043C\u0430\u043C
+search.preview=\u041F\u0440\u043E\u0441\u043C\u043E\u0442\u0440
+search.search=\u041F\u043E\u0438\u0441\u043A
+search.popular=\u041F\u043E\u043F\u0443\u043B\u044F\u0440\u043D\u044B\u0435 \u043A\u0430\u0440\u0442\u0438\u043D\u043A\u0438
+search.unpopular=\u041E\u0442\u0441\u0442\u043E\u0439
+search.nofound=\u041D\u0438 \u043E\u0434\u043D\u043E \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u044F \u043D\u0435 \u043F\u043E\u0434\u0445\u043E\u0434\u0438\u0442 \u043F\u043E\u0434 \u0432\u0430\u0448\u0438 \u043A\u0440\u0438\u0442\u0435\u0440\u0438\u0438
+
+user.loginPrefs=\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 \u0430\u043A\u043A\u0430\u0443\u043D\u0442\u0430
+user.registration=\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044F
+user.reginfo=\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F, \u043A\u0430\u0441\u0430\u044E\u0449\u0430\u044F\u0441\u044F \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438\:
+user.firstname=\u0418\u043C\u044F
+user.secondname=\u0424\u0430\u043C\u0438\u043B\u0438\u044F
+user.login=\u041B\u043E\u0433\u0438\u043D
+user.password=\u041F\u0430\u0440\u043E\u043B\u044C
+user.email=Email
+user.birthdate=\u0414\u0430\u0442\u0430 \u0440\u043E\u0436\u0434\u0435\u043D\u0438\u044F
+user.avatar=\u0410\u0432\u0430\u0442\u0430\u0440
+user.userPrefs=\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F
+user.save=\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C
+user.reset=\u0421\u0431\u0440\u043E\u0441\u0438\u0442\u044C \u043D\u0430 \u043F\u0440\u0435\u0436\u043D\u0438\u0435
+user.confirm=\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435 \u043F\u0430\u0440\u043E\u043B\u044C
+user.avatar.info=\u0418\u043D\u043E\u0444\u0440\u043C\u0430\u0446\u0438\u044F \u043E \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043D\u043D\u044B\u0445 \u0444\u0430\u0439\u043B\u0430\u0445
+user.avatar.name=\u0418\u043C\u044F \u0444\u0430\u0439\u043B\u0430\:
+user.avatar.length=\u0414\u043B\u0438\u043D\u0430 \u0444\u0430\u0439\u043B\u0430 \u0432 \u0431\u0430\u0439\u0442\u0430\u0445\:
+user.register=\u0417\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u0441\u044F
+user.cancel=\u041E\u0442\u043C\u0435\u043D\u0430
+user.exist=\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C \u0441 \u0442\u0430\u043A\u0438\u043C \u043B\u043E\u0433\u0438\u043D\u043E\u043C \u0443\u0436\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442;
+user.confirm.error=\u041F\u0430\u0440\u043E\u043B\u0438 \u0434\u043E\u043B\u0436\u043D\u044B \u0441\u043E\u0432\u043F\u0430\u0434\u0430\u0442\u044C
+
+menu.welcome=\u0414\u043E\u0431\u0440\u043E \u043F\u043E\u0436\u0430\u043B\u043E\u0432\u0430\u0442\u044C, \#{identity.username}\!
+menu.welcome.guest=\u0414\u043E\u0431\u0440\u043E \u043F\u043E\u0436\u0430\u043B\u043E\u0432\u0430\u0442\u044C, \u0433\u043E\u0441\u0442\u044C\! \u0415\u0441\u043B\u0438 \u0432\u044B \u0445\u043E\u0442\u0438\u0442\u0435 \u0438\u043C\u0435\u0442\u044C \u0434\u043E\u0441\u0442\u0443\u043F \u043A\u043E \u0432\u0441\u0435\u043C \u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E\u0441\u0442\u044F\u043C \u0441\u0438\u0441\u0442\u0435\u043C\u044B, \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u0443\u0439\u0442\u0435\u0441\u044C
+menu.message.tooltip=\u0423 \u0432\u0430\u0441 \#{messageManager.countUnreadedMessages} \u043D\u0435\u043F\u0440\u043E\u0447\u0438\u0442\u0430\u043D\u043D\u044B\u0445 \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0439
+menu.messages=\u0421\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u044F
+menu.search=\u041F\u043E\u0438\u0441\u043A
+menu.image=\u041F\u0440\u043E\u0441\u043C\u043E\u0442\u0440 \u043A\u0430\u0440\u0442\u0438\u043D\u043E\u043A
+menu.user=\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F
+menu.file=\u0417\u0430\u0433\u0440\u0443\u0437\u043A\u0430 \u043A\u0430\u0440\u0442\u0438\u043D\u043E\u043A
+menu.logout=\u0412\u044B\u0445\u043E\u0434
+menu.login=\u0412\u0445\u043E\u0434
+
+realworld=RealWorld Demo application
+panel.albumHeader=\u0423\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u0430\u043B\u044C\u0431\u043E\u043C\u0430\u043C\u0438
+panel.my=\u041C\u043E\u0438 \u0430\u043B\u044C\u0431\u043E\u043C\u044B
+panel.friend=\u0410\u043B\u044C\u0431\u043E\u043C\u044B \u0434\u0440\u0443\u0437\u0435\u0439
+panel.shared=\u041B\u044E\u0431\u0438\u043C\u044B\u0435 \u0430\u043B\u044C\u0431\u043E\u043C\u044B
+
+samplename=\u041D\u0430\u0437\u0432\u0430\u043D\u0438\u0435
+sampledesc=\u041E\u043F\u0438\u0441\u0430\u043D\u0438\u0435
+addedtofriends=\u0412\u044B \u0431\u044B\u043B\u0438 \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u044B \u0432 \u0441\u043F\u0438\u0441\u043E\u043A \u0434\u0440\u0443\u0437\u0435\u0439
+addedtofriendsby=\u0412\u044B \u0431\u044B\u043B\u0438 \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u044B \u0432 \u0441\u043F\u0438\u0441\u043E\u043A \u0434\u0440\u0443\u0437\u0435\u0439 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0435\u043C
+removedfromfriends=\u0412\u044B \u0431\u044B\u043B\u0438 \u0443\u0434\u0430\u043B\u0435\u043D\u044B \u0438\u0437 \u0441\u043F\u0438\u0441\u043A\u0430 \u0434\u0440\u0443\u0437\u0435\u0439
+removedfromfriendsby=\u0412\u044B \u0431\u044B\u043B\u0438 \u0443\u0434\u0430\u043B\u0435\u043D\u044B \u0438\u0437 \u0441\u043F\u0438\u0441\u043A\u0430 \u0434\u0440\u0443\u0437\u0435\u0439 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F
+equals=\u0420\u0430\u0432\u043D\u043E
+more=\u041C\u0435\u043D\u044C\u0448\u0435
+less=\u0411\u043E\u043B\u044C\u0448\u0435
+nomatter=\u041D\u0435 \u0438\u043C\u0435\u0435\u0442 \u0437\u0430\u043D\u0447\u0435\u043D\u0438\u044F
+small=\u041C\u0430\u043B\u0435\u043D\u044C\u043A\u0430\u044F
+medium=\u0421\u0440\u0435\u0434\u043D\u044F\u044F
+full=\u041F\u043E\u043B\u043D\u044B\u0439 \u0440\u0430\u0437\u043C\u0435\u0440
+
+file_processing_error=\u041F\u0440\u043E\u0438\u0437\u043E\u0448\u043B\u0430 \u043E\u0448\u0438\u0431\u043A\u0430 \u043F\u0440\u0438 \u043E\u0431\u0440\u0430\u0431\u043E\u0442\u043A\u0435 \u0444\u0430\u0439\u043B\u0430
+file_saving_error=\u041F\u0440\u043E\u0438\u0437\u043E\u0448\u043B\u0430 \u043F\u043E\u043F\u044B\u0442\u043A\u0430 \u043F\u0440\u0438 \u0441\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u0438\u0438 \u0444\u0430\u0439\u043B\u0430 \u043D\u0430 \u0434\u0438\u0441\u043A
+invalid_login=\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u044B\u0439 \u043B\u043E\u0433\u0438\u043D \u0438\u043B\u0438 \u043F\u0430\u0440\u043E\u043B\u044C
+login_success=\u0412\u044B \u0443\u0441\u043F\u0435\u0448\u043D\u043E \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043E\u0432\u0430\u043D\u044B
+wrong_dnd=\u0412\u044B \u043D\u0435 \u043C\u043E\u0436\u0435\u0442\u0435 \u043F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u044C \u044D\u0442\u043E\u0442 \u0430\u043B\u044C\u0431\u043E\u043C, \u0442\u0430\u043A \u043A\u0430\u043A \u043E\u043D \u043D\u0435 \u0432\u0430\u0448
+friend_error=\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C \u043D\u0435 \u0445\u043E\u0447\u0435\u0442 \u0431\u044B\u0442\u044C \u0432\u0430\u0448\u0438\u043C \u0434\u0440\u0443\u0433\u043E\u043C\!
+acess_not_granted=\u0412\u044B \u043D\u0435 \u0438\u043C\u0435\u0435\u0442\u0435 \u043F\u0440\u0430\u0432 \u0434\u043B\u044F \u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440\u0430 \u044D\u0442\u043E\u0433\u043E \u0430\u043B\u044C\u0431\u043E\u043C\u0430
+invalid_syntax=\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u044B\u0439 \u0441\u0438\u043D\u0442\u0430\u043A\u0441\u0438\u0441
+album_addImage=\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u0430\u0440\u0442\u0438\u043D\u043A\u0443
+album_addToFavorites=\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0432 \u0438\u0437\u0431\u0440\u0430\u043D\u043D\u044B\u0435 \u0430\u043B\u044C\u0431\u043E\u043C\u044B
+album_present=\u0410\u043B\u044C\u0431\u043E\u043C \u0441 \u0442\u0430\u043A\u0438\u043C \u0438\u043C\u0435\u043D\u0435\u043C \u0443\u0436\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442\!
+album_deleteFromFavorite=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0438\u0437 \u0438\u0437\u0431\u0440\u0430\u043D\u043D\u043E\u0433\u043E
+album_show=\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0430\u043B\u044C\u0431\u043E\u043C
+album_reqForFriend=\u041F\u043E\u0441\u043B\u0430\u0442\u044C \u0432\u043B\u0430\u0434\u0435\u043B\u044C\u0446\u0443 \u0437\u0430\u043F\u0440\u043E\u0441 \u043D\u0430 \u0434\u0440\u0443\u0436\u0431\u0443
+album_deleteFromFriends=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0432\u043B\u0430\u0434\u0435\u043B\u044C\u0446\u0430 \u0438\u0437 \u0441\u043F\u0438\u0441\u043A\u0430 \u0434\u0440\u0443\u0437\u0435\u0439
+album_viewProfile=\u041F\u043E\u0441\u043C\u043E\u0442\u0440\u0435\u0442\u044C \u043F\u0440\u043E\u0444\u0438\u043B\u044C \u0432\u043B\u0430\u0434\u0435\u043B\u044C\u0446\u0430
+album_sendMessage=\u041F\u043E\u0441\u043B\u0430\u0442\u044C \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435 \u0432\u043B\u0430\u0434\u0435\u043B\u044C\u0446\u0443 \u0430\u043B\u044C\u0431\u043E\u043C\u0430
+album_show_all=\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0432\u0441\u0435 \u0430\u043B\u044C\u0431\u043E\u043C\u044B \u0432\u043B\u0430\u0434\u0435\u043B\u044C\u0446\u0430
+album_show_history=\u041F\u043E\u0441\u043C\u043E\u0442\u0440\u0435\u0442\u044C \u0438\u0441\u0442\u043E\u0440\u0438\u044E \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0439 \u0441 \u0432\u043B\u0430\u0434\u0435\u043B\u044C\u0446\u0435\u043C \u0430\u043B\u044C\u0431\u043E\u043C\u0430
+
+
+image_showLinks=\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0441\u0441\u044B\u043B\u043A\u0438
+image_addFavorites=\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A \u0438\u0437\u0431\u0440\u0430\u043D\u043D\u044B\u043C \u0444\u043E\u0442\u043E\u0433\u0440\u0430\u0444\u0438\u044F\u043C
+image_deleteFavorites=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0438\u0437 \u0438\u0437\u0431\u0440\u0430\u043D\u043D\u044B\u0445 \u043A\u0430\u0440\u0442\u0438\u043D\u043E\u043A
+image_show_parent=\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0430\u043B\u044C\u0431\u043E\u043C, \u0441\u043E\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0439 \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435
+image_show=\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435
+image_addParentToFavorite=\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0432 \u0438\u0437\u0431\u0440\u0430\u043D\u043D\u044B\u0435 \u0430\u043B\u044C\u0431\u043E\u043C\u044B
+image_removeParentFavorite=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0438\u0437 \u0438\u0437\u0431\u0440\u0430\u043D\u043D\u044B\u0445 \u0430\u043B\u044C\u0431\u043E\u043C\u043E\u0432
+image_showParent=\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0430\u043B\u044C\u0431\u043E\u043C, \u0441\u043E\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0439 \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435
+
+user_profile=\u041F\u043E\u0441\u043C\u043E\u0442\u0440\u0435\u0442\u044C \u043F\u0440\u043E\u0444\u0438\u043B\u044C
+user_history=\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0438\u0441\u0442\u043E\u0440\u0438\u044E \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0439
+user_show_albums=\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0430\u043B\u044C\u0431\u043E\u043C\u044B
+
+fileUpload_choosemode=\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0440\u0435\u0436\u0438\u043C \u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0438\:
+
+camera=\u041C\u043E\u0434\u0435\u043B\u044C \u043A\u0430\u043C\u0435\u0440\u044B
+uploaded=\u0414\u0430\u0442\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0438
+size=\u0420\u0430\u0437\u043C\u0435\u0440
+dimensions=\u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043D\u0438\u0435
+sizeInKB=\u0420\u0430\u0437\u043C\u0435\u0440 \u0432 KB
+width=\u0428\u0438\u0440\u0438\u043D\u0430
+height=\u0412\u044B\u0441\u043E\u0442\u0430
+choose_camera=\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043C\u043E\u0434\u0435\u043B\u044C \u043A\u0430\u043C\u0435\u0440\u044B\:
+choose_metatag=\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043C\u0435\u0442\u0430\u0442\u044D\u0433\u0438 \u0434\u043B\u044F \u043F\u043E\u0438\u0441\u043A\u0430\:
+case_sensitive=\u0423\u0447\u0438\u0442\u044B\u0432\u0430\u0442\u044C \u0440\u0435\u0433\u0438\u0441\u0442\u0440
+tooltip_top=\u0411\u0443\u0434\u0443\u0442 \u043F\u043E\u043A\u0430\u0437\u0430\u043D\u044B \u043E\u0442\u043A\u0440\u044B\u0442\u044B\u0435 \u043A\u0430\u0440\u0442\u0438\u043D\u043A\u0438 \u0441 \u043C\u0430\u043A\u0441\u0438\u043C\u0430\u043B\u044C\u043D\u044B\u043C \u0440\u0435\u0439\u0442\u0438\u043D\u0433\u043E\u043C
+tooltip_worst=\u0411\u0443\u0434\u0443\u0442 \u043F\u043E\u043A\u0430\u0437\u0430\u043D\u044B \u043E\u0442\u043A\u0440\u044B\u0442\u044B\u0435 \u043A\u0430\u0440\u0442\u0438\u043D\u043A\u0438 \u0441 \u043C\u0438\u043D\u0438\u043C\u0430\u043B\u044C\u043D\u044B\u043C \u0440\u0435\u0439\u0442\u0438\u043D\u0433\u043E\u043C
+
+my_albums=\u041C\u043E\u0438 \u0430\u043B\u044C\u0431\u043E\u043C\u044B
+my_friends=\u041C\u043E\u0438 \u0434\u0440\u0443\u0437\u044C\u044F
+content=\u0421\u043E\u0434\u0435\u0440\u0436\u0430\u043D\u0438\u0435
+closeHistory=\u0417\u0430\u043A\u0440\u044B\u0442\u044C \u0438\u0441\u0442\u043E\u0440\u0438\u044E \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0439
+history=\u0418\u0441\u0442\u043E\u0440\u0438\u044F \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0439
+
+errorGeneral=\u0443\u043F\u0441....\u041F\u0440\u043E\u0438\u0437\u043E\u0448\u043B\u0430 \u043E\u0448\u0438\u0431\u043A\u0430
+errorDetail=\u041E\u0448\u0438\u0431\u043A\u0430\: \#{error.message}
+
+albums=\u0418\u0437\u0431\u0440\u0430\u043D\u043D\u044B\u0435 \u0430\u043B\u044C\u0431\u043E\u043C\u044B\:
+images=\u0418\u0437\u0431\u0440\u0430\u043D\u043D\u044B\u0435 \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u044F\:
+friends_albums=\u0410\u043B\u044C\u0431\u043E\u043C\u044B \u0434\u0440\u0443\u0437\u0435\u0439
+album=\u0410\u043B\u044C\u0431\u043E\u043C\:
+owner=\u0412\u043B\u0430\u0434\u0435\u043B\u0435\u0446
+metatags=\u041C\u0435\u0442\u0430\u0442\u044D\u0433\u0438\:
+friends=\u0414\u0440\u0443\u0437\u044C\u044F
+friendsInfo=\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F \u043E \u0434\u0440\u0443\u0437\u044C\u044F\u0445
+viewProfile=\u041F\u043E\u0441\u043C\u043E\u0442\u0440\u0435\u0442\u044C \u043F\u0440\u043E\u0444\u0438\u043B\u044C
+show_albums=\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0430\u043B\u044C\u0431\u043E\u043C\u044B
+show_history=\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0438\u0441\u0442\u043E\u0440\u0438\u044E \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0439
+author=\u0410\u0432\u0442\u043E\u0440
+linkManagement=\u0423\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u0441\u0441\u044B\u043B\u043A\u0430\u043C\u0438
+close=\u0417\u0430\u043A\u0440\u044B\u0442\u044C
\ No newline at end of file
Property changes on: trunk/test-applications/realworld2/web/src/main/resources/messages_ru.properties
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/resources/org/richfaces/realworld/editor/advanced.properties
===================================================================
--- trunk/test-applications/realworld2/web/src/main/resources/org/richfaces/realworld/editor/advanced.properties (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/resources/org/richfaces/realworld/editor/advanced.properties 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,5 @@
+theme="advanced"
+theme_advanced_toolbar_location="top"
+theme_advanced_toolbar_align="left"
+plugins="preview,insertdatetime"
+theme_advanced_buttons3="hr,removeformat,visualaid,separator,sub,sup,separator,charmap"
Property changes on: trunk/test-applications/realworld2/web/src/main/resources/org/richfaces/realworld/editor/advanced.properties
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/resources/seam.properties
===================================================================
Property changes on: trunk/test-applications/realworld2/web/src/main/resources/seam.properties
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/META-INF/MANIFEST.MF
===================================================================
--- trunk/test-applications/realworld2/web/src/main/webapp/META-INF/MANIFEST.MF (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/webapp/META-INF/MANIFEST.MF 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,15 @@
+Manifest-Version: 1.0
+Class-Path: avalon-framework-4.1.3.jar
+ commons-beanutils-1.7.0.jar
+ commons-digester-1.8.jar
+ commons-logging-1.1.jar
+ jboss-seam-debug-2.1.0.SP1.jar
+ jboss-seam-jul-2.1.0.SP1.jar
+ jboss-seam-remoting-2.1.0.SP1.jar
+ jboss-seam-ui-2.1.0.SP1.jar
+ jsf-facelets-1.1.14.jar
+ log4j-1.2.14.jar
+ logkit-1.0.1.jar
+ richfaces-impl-3.3.0-SNAPSHOT.jar
+ richfaces-ui-3.3.0-SNAPSHOT.jar
+
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/META-INF/MANIFEST.MF
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/META-INF/skins/realworld.skin.properties
===================================================================
--- trunk/test-applications/realworld2/web/src/main/webapp/META-INF/skins/realworld.skin.properties (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/webapp/META-INF/skins/realworld.skin.properties 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,75 @@
+#Colors
+headerBackgroundColor=#B34801
+headerGradientColor=#EA640A
+headerTextColor=#FFFFFF
+headerWeightFont=bold
+
+generalBackgroundColor=#D7D7D7
+generalTextColor=#000000
+generalSizeFont=11px
+generalFamilyFont=Arial, Verdana, sans-serif
+
+controlTextColor=#000000
+controlBackgroundColor=#ffffff
+additionalBackgroundColor=#F2F2F2
+
+shadowBackgroundColor=#000000
+shadowOpacity=1
+
+panelBorderColor=#636363
+subBorderColor=#ffffff
+
+tabBackgroundColor=#FF6700
+tabDisabledTextColor=#E4B98F
+
+trimColor=#FFE2C6
+
+tipBackgroundColor=#FAE6B0
+tipBorderColor=#E5973E
+
+selectControlColor=#E79A00
+
+
+generalLinkColor=#FF6700
+hoverLinkColor=#FFA800
+visitedLinkColor=#FF6700
+
+# Fonts
+headerSizeFont=11px
+headerFamilyFont=Arial, Verdana, sans-serif
+
+tabSizeFont=11
+tabFamilyFont=Arial, Verdana, sans-serif
+
+buttonSizeFont=11
+buttonFamilyFont=Arial, Verdana, sans-serif
+
+
+tableBackgroundColor=#D7D7D7
+tableFooterBackgroundColor=#cccccc
+tableSubfooterBackgroundColor=#f1f1f1
+tableBorderColor=#C0C0C0
+tableBorderWidth=0px
+
+
+#Calendar colors
+calendarWeekBackgroundColor=#F5F5F5
+
+calendarHolidaysBackgroundColor=#FFEBDA
+calendarHolidaysTextColor=#FF7800
+
+calendarCurrentBackgroundColor=#FF7800
+calendarCurrentTextColor=#FFEBDA
+
+calendarSpecBackgroundColor=#E4F5E2
+calendarSpecTextColor=#000000
+
+
+warningColor=#FFE6E6
+warningBackgroundColor=#FF0000
+
+editorBackgroundColor=#D7D7D7
+editBackgroundColor=#FEFFDA
+
+#Gradients
+gradientType=plain
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/META-INF/skins/realworld.skin.properties
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/Thumbs.db
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/Thumbs.db
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/Thumbs.db
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/Thumbs.db
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (1).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (1).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (1)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (1)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (1)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (1)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (10).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (10).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (10)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (10)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (10)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (10)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (11).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (11).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (11)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (11)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (11)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (11)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (12).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (12).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (12)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (12)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (12)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (12)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (13).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (13).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (13)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (13)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (13)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (13)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (14).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (14).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (14)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (14)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (14)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (14)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (15).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (15).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (15)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (15)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (15)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (15)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (16).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (16).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (16)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (16)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (16)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (16)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (2).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (2).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (2)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (2)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (2)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (2)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (3).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (3).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (3)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (3)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (3)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (3)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (4).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (4).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (4)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (4)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (4)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (4)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (5).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (5).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (5)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (5)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (5)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (5)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (6).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (6).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (6)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (6)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (6)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (6)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (7).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (7).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (7)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (7)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (7)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (7)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (8).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (8).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (8)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (8)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (8)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (8)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (9).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (9).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (9)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (9)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (9)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers (9)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Noname/26/flowers_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/Re4ka.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/Re4ka.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/Re4ka_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/Re4ka_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/Re4ka_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/Re4ka_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/Thumbs.db
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/Thumbs.db
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/korana.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/korana.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/korana2.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/korana2.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/korana2_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/korana2_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/korana2_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/korana2_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/korana_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/korana_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/korana_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/korana_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river10.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river10.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river10_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river10_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river10_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river10_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river11.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river11.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river11_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river11_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river11_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river11_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river12.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river12.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river12_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river12_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river12_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river12_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river13.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river13.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river13_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river13_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river13_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river13_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river2.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river2.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river2_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river2_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river2_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river2_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river3.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river3.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river3_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river3_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river3_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river3_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river4.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river4.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river4_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river4_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river4_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river4_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river5.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river5.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river5_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river5_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river5_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river5_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river6.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river6.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river6_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river6_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river6_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river6_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river7.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river7.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river7_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river7_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river7_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river7_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river8.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river8.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river8_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river8_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river8_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river8_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river9.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river9.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river9_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river9_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river9_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river9_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river_and_torrents.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river_and_torrents.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river_and_torrents_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river_and_torrents_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river_and_torrents_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/Viking/15/river_and_torrents_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/Thumbs.db
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/Thumbs.db
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (1).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (1).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (1)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (1)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (1)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (1)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (10).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (10).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (10)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (10)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (10)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (10)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (11).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (11).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (11)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (11)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (11)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (11)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (12).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (12).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (12)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (12)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (12)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (12)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (13).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (13).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (13)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (13)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (13)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (13)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (14).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (14).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (14)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (14)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (14)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (14)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (15).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (15).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (15)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (15)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (15)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (15)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (16).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (16).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (16)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (16)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (16)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (16)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (17).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (17).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (17)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (17)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (17)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (17)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (2).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (2).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (2)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (2)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (2)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (2)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (3).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (3).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (3)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (3)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (3)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (3)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (4).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (4).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (4)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (4)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (4)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (4)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (5).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (5).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (5)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (5)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (5)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (5)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (6).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (6).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (6)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (6)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (6)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (6)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (7).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (7).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (7)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (7)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (7)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (7)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (8).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (8).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (8)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (8)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (8)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (8)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (9).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (9).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (9)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (9)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (9)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport (9)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/20/sport_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/Thumbs.db
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/Thumbs.db
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (1).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (1).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (1)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (1)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (1)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (1)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (10).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (10).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (10)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (10)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (10)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (10)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (11).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (11).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (11)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (11)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (11)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (11)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (12).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (12).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (12)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (12)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (12)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (12)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (13).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (13).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (13)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (13)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (13)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (13)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (14).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (14).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (14)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (14)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (14)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (14)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (15).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (15).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (15)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (15)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (15)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (15)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (16).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (16).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (16)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (16)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (16)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (16)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (2).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (2).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (2)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (2)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (2)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (2)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (3).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (3).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (3)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (3)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (3)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (3)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (4).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (4).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (4)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (4)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (4)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (4)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (5).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (5).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (5)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (5)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (5)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (5)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (6).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (6).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (6)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (6)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (6)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (6)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (7).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (7).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (7)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (7)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (7)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (7)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (8).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (8).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (8)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (8)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (8)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (8)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (9).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (9).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (9)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (9)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (9)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel (9)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/23/travel_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/Thumbs.db
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/Thumbs.db
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (1).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (1).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (1)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (1)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (1)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (1)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (10).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (10).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (10)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (10)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (10)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (10)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (11).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (11).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (11)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (11)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (11)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (11)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (12).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (12).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (12)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (12)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (12)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (12)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (13).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (13).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (13)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (13)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (13)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (13)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (14).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (14).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (14)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (14)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (14)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (14)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (2).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (2).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (2)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (2)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (2)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (2)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (3).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (3).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (3)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (3)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (3)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (3)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (4).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (4).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (4)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (4)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (4)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (4)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (5).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (5).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (5)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (5)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (5)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (5)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (6).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (6).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (6)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (6)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (6)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (6)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (7).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (7).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (7)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (7)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (7)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (7)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (8).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (8).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (8)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (8)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (8)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (8)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (9).jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (9).jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (9)_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (9)_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (9)_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach (9)_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach_medium.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach_medium.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach_mini.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/Upload/amarkhel/25/beach_mini.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/components.xml
===================================================================
--- trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/components.xml (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/components.xml 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<components xmlns="http://jboss.com/products/seam/components"
+ xmlns:core="http://jboss.com/products/seam/core"
+ xmlns:persistence="http://jboss.com/products/seam/persistence"
+ xmlns:drools="http://jboss.com/products/seam/drools"
+ xmlns:bpm="http://jboss.com/products/seam/bpm"
+ xmlns:security="http://jboss.com/products/seam/security"
+ xmlns:mail="http://jboss.com/products/seam/mail"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:transaction="http://jboss.com/products/seam/transaction"
+ xmlns:web="http://jboss.com/products/seam/web"
+ xsi:schemaLocation=
+ "http://jboss.com/products/seam/core http://jboss.com/products/seam/core-2.1.0.xsd
+ http://jboss.com/products/seam/web http://jboss.com/products/seam/web-2.1.0.xsd
+ http://jboss.com/products/seam/transaction http://jboss.com/products/seam/transaction-2.1.0.xsd
+ http://jboss.com/products/seam/persistence http://jboss.com/products/seam/persistence-2.1.0.xsd
+ http://jboss.com/products/seam/drools http://jboss.com/products/seam/drools-2.1.0.xsd
+ http://jboss.com/products/seam/bpm http://jboss.com/products/seam/bpm-2.1.0.xsd
+ http://jboss.com/products/seam/security http://jboss.com/products/seam/security-2.1.0.xsd
+ http://jboss.com/products/seam/mail http://jboss.com/products/seam/mail-2.1.0.xsd
+ http://jboss.com/products/seam/components http://jboss.com/products/seam/components-2.1.0.xsd">
+
+ <core:init transaction-management-enabled="false" debug="true" jndi-pattern="@jndiPattern@"/>
+ <web:context-filter url-pattern="/picture/*" />
+ <web:character-encoding-filter encoding="UTF-8" override-client="true" url-pattern="*.seam" />
+ <core:manager concurrent-request-timeout="20000"
+ conversation-timeout="120000"
+ conversation-id-parameter="cid"
+ default-flush-mode="MANUAL"/>
+ <persistence:managed-persistence-context name="entityManager"
+ auto-create="true"
+ persistence-unit-jndi-name="java:/realWorldEntityManager"/>
+ <transaction:ejb-transaction />
+ <security:identity authenticate-method="#{authenticator.authenticate}"/>
+ <component name="passwordHolder" digestAlgorithm="SHA-1" charset="UTF-8"/>
+ <event type="org.jboss.seam.security.notLoggedIn">
+ <action execute="#{redirect.captureCurrentView}"/>
+ <action execute="#{identity.tryLogin()}"/>
+ </event>
+ <event type="org.jboss.seam.security.loginSuccessful">
+ <action execute="#{redirect.returnToCapturedView}"/>
+ </event>
+</components>
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/components.xml
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/faces-config.xml
===================================================================
--- trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/faces-config.xml (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/faces-config.xml 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,15 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<faces-config version="1.2"
+ xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd">
+
+ <application>
+ <locale-config>
+ <default-locale>en</default-locale>
+ <supported-locale>en</supported-locale>
+ <supported-locale>ru</supported-locale>
+ </locale-config>
+ <view-handler>com.sun.facelets.FaceletViewHandler</view-handler>
+ </application>
+</faces-config>
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/faces-config.xml
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/pages.xml
===================================================================
--- trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/pages.xml (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/pages.xml 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,77 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<pages xmlns="http://jboss.com/products/seam/pages"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://jboss.com/products/seam/pages http://jboss.com/products/seam/pages-2.1.xsd">
+
+ <page view-id="*">
+ <navigation>
+ <rule if-outcome="register">
+ <redirect view-id="/register.xhtml"/>
+ </rule>
+ <rule if-outcome="main">
+ <redirect view-id="/main.xhtml"/>
+ </rule>
+ <rule if-outcome="index">
+ <redirect view-id="/index.html"/>
+ </rule>
+ </navigation>
+ </page>
+
+ <page view-id="/index.xhtml">
+ <begin-conversation if="#{!conversation.longRunning}"/>
+ <action if="#{!identity.isLoggedIn()}" execute="#{authenticator.start}"/>
+ <navigation from-action="#{authenticator.logout}">
+ <rule if-outcome="logout">
+ <end-conversation />
+ <redirect view-id="/index.html"/>
+ </rule>
+ </navigation>
+ <navigation from-action="#{authenticator.start}">
+ <redirect view-id="/index.xhtml"/>
+ </navigation>
+ </page>
+
+ <exception class="org.jboss.seam.framework.EntityNotFoundException">
+ <redirect view-id="/error.xhtml">
+ <message>Not found</message>
+ </redirect>
+ </exception>
+
+ <exception class="javax.persistence.EntityNotFoundException">
+ <redirect view-id="/error.xhtml">
+ <message>Not found</message>
+ </redirect>
+ </exception>
+
+ <exception class="javax.persistence.OptimisticLockException">
+ <end-conversation/>
+ <redirect view-id="/error.xhtml">
+ <message>Another user changed the same data, please try again</message>
+ </redirect>
+ </exception>
+
+ <exception class="org.jboss.seam.security.AuthorizationException">
+ <redirect view-id="/error.xhtml">
+ <message>You don't have permission to do this</message>
+ </redirect>
+ </exception>
+
+ <exception class="org.jboss.seam.security.NotLoggedInException">
+ <redirect view-id="/index.xhtml">
+ <message>Please log in first</message>
+ </redirect>
+ </exception>
+
+ <exception class="javax.faces.application.ViewExpiredException">
+ <redirect view-id="/error.xhtml">
+ <message>Your session has timed out, please try again</message>
+ </redirect>
+ </exception>
+
+ <exception>
+ <redirect view-id="/error.xhtml">
+ <message>Unexpected error, please try again</message>
+ </redirect>
+ </exception>
+
+</pages>
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/pages.xml
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/tags/realWorld-taglib.xml
===================================================================
--- trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/tags/realWorld-taglib.xml (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/tags/realWorld-taglib.xml 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,23 @@
+<?xml version="1.0"?>
+<!DOCTYPE facelet-taglib PUBLIC
+ "-//Sun Microsystems, Inc.//DTD Facelet Taglib 1.0//EN"
+ "facelet-taglib_1_0.dtd">
+<facelet-taglib>
+ <namespace>http://richfaces.org/richx</namespace>
+ <tag>
+ <tag-name>album</tag-name>
+ <source>templates/album.xhtml</source>
+ </tag>
+ <tag>
+ <tag-name>shelf</tag-name>
+ <source>templates/shelf.xhtml</source>
+ </tag>
+ <tag>
+ <tag-name>image</tag-name>
+ <source>templates/image.xhtml</source>
+ </tag>
+ <tag>
+ <tag-name>linkPanel</tag-name>
+ <source>templates/linkPanel.xhtml</source>
+ </tag>
+</facelet-taglib>
\ No newline at end of file
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/tags/realWorld-taglib.xml
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/tags/templates/album.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/tags/templates/album.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/tags/templates/image.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/tags/templates/image.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/tags/templates/linkPanel.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/tags/templates/linkPanel.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/tags/templates/shelf.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/tags/templates/shelf.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/web.xml
===================================================================
--- trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/web.xml (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/web.xml 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,124 @@
+<?xml version="1.0" ?>
+<web-app xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
+ version="2.5">
+
+ <!-- Ajax4jsf -->
+ <filter>
+ <display-name>Ajax4jsf Filter</display-name>
+ <filter-name>ajax4jsf</filter-name>
+ <filter-class>org.ajax4jsf.Filter</filter-class>
+ <init-param>
+ <param-name>createTempFiles</param-name>
+ <param-value>true</param-value>
+ </init-param>
+ <init-param>
+ <param-name>maxRequestSize</param-name>
+ <param-value>20000000</param-value>
+ </init-param>
+ </filter>
+
+ <filter-mapping>
+ <filter-name>ajax4jsf</filter-name>
+ <url-pattern>*.seam</url-pattern>
+ </filter-mapping>
+
+ <context-param>
+ <param-name>org.richfaces.SKIN</param-name>
+ <param-value>realworld</param-value>
+ </context-param>
+
+ <context-param>
+ <param-name>facelets.LIBRARIES</param-name>
+ <param-value>/WEB-INF/tags/realWorld-taglib.xml</param-value>
+ </context-param>
+
+ <!-- Seam -->
+
+ <listener>
+ <listener-class>
+ org.jboss.seam.servlet.SeamListener
+ </listener-class>
+ </listener>
+
+ <filter>
+ <filter-name>Seam Filter</filter-name>
+ <filter-class>org.jboss.seam.servlet.SeamFilter</filter-class>
+ </filter>
+
+ <filter-mapping>
+ <filter-name>Seam Filter</filter-name>
+ <url-pattern>/*</url-pattern>
+ </filter-mapping>
+
+ <servlet>
+ <servlet-name>Seam Resource Servlet</servlet-name>
+ <servlet-class>
+ org.jboss.seam.servlet.SeamResourceServlet
+ </servlet-class>
+ </servlet>
+
+ <servlet-mapping>
+ <servlet-name>Seam Resource Servlet</servlet-name>
+ <url-pattern>/seam/resource/*</url-pattern>
+ </servlet-mapping>
+
+ <!-- Facelets development mode (disable in production) -->
+
+ <context-param>
+ <param-name>facelets.DEVELOPMENT</param-name>
+ <param-value>true</param-value>
+ </context-param>
+
+ <!-- JSF -->
+
+ <context-param>
+ <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
+ <param-value>.xhtml</param-value>
+ </context-param>
+
+ <context-param>
+ <param-name>uploadRoot</param-name>
+ <param-value>
+ C:\Upload\
+ </param-value>
+ </context-param>
+
+
+ <servlet>
+ <servlet-name>Faces Servlet</servlet-name>
+ <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
+ <load-on-startup>1</load-on-startup>
+ </servlet>
+
+ <servlet-mapping>
+ <servlet-name>Faces Servlet</servlet-name>
+ <url-pattern>*.seam</url-pattern>
+ </servlet-mapping>
+
+ <servlet>
+ <servlet-name>Picture Servlet</servlet-name>
+ <servlet-class>org.richfaces.realworld.servlet.PictureServlet</servlet-class>
+ <load-on-startup>2</load-on-startup>
+ </servlet>
+ <servlet-mapping>
+ <servlet-name>Picture Servlet</servlet-name>
+ <url-pattern>/picture/*</url-pattern>
+ </servlet-mapping>
+
+ <security-constraint>
+ <display-name>Restrict raw XHTML Documents</display-name>
+ <web-resource-collection>
+ <web-resource-name>XHTML</web-resource-name>
+ <url-pattern>*.xhtml</url-pattern>
+ </web-resource-collection>
+ <auth-constraint />
+ </security-constraint>
+
+ <listener>
+ <display-name>copyImageListener</display-name>
+ <listener-class>org.richfaces.realworld.listener.CopyImagesStuff</listener-class>
+ </listener>
+
+</web-app>
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/WEB-INF/web.xml
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/error.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/error.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/Thumbs.db
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/Thumbs.db
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/ajax/Thumbs.db
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/ajax/Thumbs.db
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/ajax/ajax_process.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/ajax/ajax_process.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/ajax/error.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/ajax/error.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/ajax/passed.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/ajax/passed.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/alert.jpeg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/alert.jpeg
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/dtpick.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/dtpick.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/error.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/error.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/folder.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/folder.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/gb.png
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/gb.png
___________________________________________________________________
Name: svn:mime-type
+ image/png
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/Thumbs.db
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/Thumbs.db
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/arrow.png
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/arrow.png
___________________________________________________________________
Name: svn:mime-type
+ image/png
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/copy.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/copy.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/create_doc.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/create_doc.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/create_folder.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/create_folder.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/cut.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/cut.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/delete.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/delete.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/edit.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/edit.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/filter.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/filter.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/find.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/find.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/message.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/message.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/open.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/open.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/paste.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/paste.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/redo.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/redo.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/reload.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/reload.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/repeat.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/repeat.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/save.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/save.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/save_all.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/save_all.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/save_as.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/save_as.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/undo.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/undo.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/verify.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/icons/verify.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/locked.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/locked.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/logo.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/logo.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/modal/Thumbs.db
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/modal/Thumbs.db
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/modal/close.png
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/modal/close.png
___________________________________________________________________
Name: svn:mime-type
+ image/png
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/ru.png
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/ru.png
___________________________________________________________________
Name: svn:mime-type
+ image/png
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/album_name_bg.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/album_name_bg.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/bullet.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/bullet.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/footer_bg.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/footer_bg.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/general_panel_bg.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/general_panel_bg.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/general_panel_header_bg.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/general_panel_header_bg.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/general_panelbar_bg.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/general_panelbar_bg.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/general_panelbar_bullet.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/general_panelbar_bullet.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/logo_bottom.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/logo_bottom.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/logo_top.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/logo_top.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/page_bg.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/page_bg.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/top_tight_bullet.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/shell/top_tight_bullet.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/tree/Thumbs.db
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/tree/Thumbs.db
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/tree/disc.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/tree/disc.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/tree/dnd/Thumbs.db
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/tree/dnd/Thumbs.db
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/tree/dnd/favorites.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/tree/dnd/favorites.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/tree/dnd/image.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/tree/dnd/image.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/tree/dnd/trash.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/tree/dnd/trash.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/tree/dnd/trash_full.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/tree/dnd/trash_full.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/tree/singer.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/tree/singer.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/img/tree/song.gif
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/img/tree/song.gif
___________________________________________________________________
Name: svn:mime-type
+ image/gif
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/contextMenu/CMForAlbum.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/contextMenu/CMForAlbum.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/contextMenu/CMForImage.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/contextMenu/CMForImage.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/contextMenu/CMForUser.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/contextMenu/CMForUser.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/fileUpload/fileUploadPanel.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/fileUpload/fileUploadPanel.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/fileUpload/fileUploader.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/fileUpload/fileUploader.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/fileUpload/multyMode.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/fileUpload/multyMode.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/fileUpload.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/fileUpload.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/image/breadCrumb.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/image/breadCrumb.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/image/comments.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/image/comments.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/image/imagePreview.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/image/imagePreview.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/image/imageScroller.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/image/imageScroller.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/image/mainImage.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/image/mainImage.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/image/scroller.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/image/scroller.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/image/shelf.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/image/shelf.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/image/shelfs.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/image/shelfs.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/image/slideshow.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/image/slideshow.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/imagePreview-backup.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/imagePreview-backup.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/imagePreview.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/imagePreview.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/index/login.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/index/login.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/misc/errorPanel.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/misc/errorPanel.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/misc/modalPanels.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/misc/modalPanels.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/misc/slideShowPooler.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/misc/slideShowPooler.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/misc/status.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/misc/status.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/news/recent.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/news/recent.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/panelBar/favoriteAlbums.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/panelBar/favoriteAlbums.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/panelBar/tree.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/panelBar/tree.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/register/regInfo.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/register/regInfo.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/search.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/search.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/userPrefs/loginPrefsTab.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/userPrefs/loginPrefsTab.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/userPrefs/userPrefsTab.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/userPrefs/userPrefsTab.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/userPrefs.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/userPrefs.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/includes/whatNew.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/includes/whatNew.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/index.html
===================================================================
--- trunk/test-applications/realworld2/web/src/main/webapp/index.html (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/webapp/index.html 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,5 @@
+<html>
+<head>
+ <meta http-equiv="Refresh" content="0; URL=index.seam">
+</head>
+</html>
\ No newline at end of file
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/index.html
___________________________________________________________________
Name: svn:mime-type
+ text/html
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/index.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/index.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/layout/menu-backup.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/layout/menu-backup.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/layout/menu.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/layout/menu.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/layout/panelBar-backup.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/layout/panelBar-backup.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/layout/panelBar.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/layout/panelBar.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/main.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/main.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/register.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/register.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/scripts/realworld.js
===================================================================
--- trunk/test-applications/realworld2/web/src/main/webapp/scripts/realworld.js (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/webapp/scripts/realworld.js 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,42 @@
+
+function storeButtonDisabled(){
+ var nodes = $$('.rich-message-label');
+ var disabled = false;
+ for(var i = 0; i < nodes.length; i++){
+ var node = nodes[i];
+ if(node.innerHTML != ""){
+ disabled = true;
+ break;
+ }
+ }
+ return disabled;
+ }
+
+function selectAllFiles(f) {
+ for (var i = 0; i < filesCount; i++) {
+ var b = $('mainform:files:'+i+':file_selected');
+ if (b) {
+ b.checked = f;
+ }
+
+ }
+}
+
+function onselectFileClick(el) {
+ if (!el.checked) {
+ $('select_all').checked = false;
+ }else {
+ var b = true;
+ for (var i = 0; i < filesCount; i++) {
+ var d = $('mainform:files:'+i+':file_selected');
+ if (!d.checked) {
+ b = false;
+ break;
+ }
+ }
+ if (b) {
+ $('select_all').checked = true;
+ }
+
+ }
+}
\ No newline at end of file
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/scripts/realworld.js
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/stylesheet/realworld.css
===================================================================
--- trunk/test-applications/realworld2/web/src/main/webapp/stylesheet/realworld.css (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/webapp/stylesheet/realworld.css 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,135 @@
+body {
+ font-size: 12px;
+}
+
+header {
+ width: 120px;
+ height: 200px;
+ border: 1px solid #FFCC00;
+ padding: 5px;
+ margin-top: 5px;
+ margin-bottom: 5px;
+}
+
+a:active, a:link, a:visited {
+ color: #0D5798;
+}
+a:hover {
+ color: #8CAFCD;
+}
+
+input, textarea {
+ border: 1px solid #BBBBBB;
+ font-size: 10px;
+ background: #F0F8FF;
+ color: black;
+}
+
+input[type='submit'], input[type='button'] {
+ background: #4477AA;
+ color: white;
+ margin: 5px;
+ border-color: gray;
+}
+
+.tableControl, .actionButtons {
+ width: 100%;
+}
+
+.tableControl a {
+ padding-left: 10px;
+}
+
+.tableControl {
+ text-align: right;
+}
+
+.footer {
+ text-align: center;
+ font-size: 10px;
+}
+
+.rich-table {
+ width:100%;
+}
+
+h1 {
+ font-family: Arial,sans-serif;
+ color: #578BB8;
+ font-size: 1.6em;
+ margin-top: 0;
+}
+
+body {
+ margin: 0px;
+ font-family: Arial,sans-serif;
+ color: #616161;
+}
+
+.body {
+ padding: 30px;
+}
+
+.columnHeader:hover
+{
+ color: #FF6600;
+}
+
+.message {
+ border: 1px solid #FFCC00;
+ padding: 5px;
+ margin-top: 5px;
+ margin-bottom: 5px;
+ background-color: #F0F8FF;
+ font-size: 12px;
+ color: red;
+}
+
+.name {
+ vertical-align: top;
+ font-weight: bold;
+ width: 115px;
+ float: left;
+ padding: 5px;
+ margin-top: 3px;
+ clear: left;
+}
+.value {
+ float: left;
+ padding: 5px;
+}
+
+.error {
+ float: left;
+ padding: 5px;
+ color: red;
+}
+.errors {
+ color: red;
+ vertical-align: middle;
+}
+img.errors {
+ padding-right: 5px;
+}
+.errors input {
+ border: 1px solid red;
+}
+.errors textarea {
+ border: 1px solid red;
+}
+
+.required {
+ color: red;
+ padding-left: 2px;
+}
+
+.rich-stglpanel-body {
+ overflow: auto;
+}
+.top {
+ vertical-align: top;
+}
+.info {
+ height: 202px;
+ overflow: auto;
+}
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/stylesheet/realworld.css
___________________________________________________________________
Name: svn:mime-type
+ text/css
Name: svn:eol-style
+ native
Added: trunk/test-applications/realworld2/web/src/main/webapp/stylesheet/realworld2.css
===================================================================
--- trunk/test-applications/realworld2/web/src/main/webapp/stylesheet/realworld2.css (rev 0)
+++ trunk/test-applications/realworld2/web/src/main/webapp/stylesheet/realworld2.css 2009-02-24 18:12:08 UTC (rev 12733)
@@ -0,0 +1,248 @@
+.main-body {
+ margin: 0px;
+ background: url(../img/shell/page_bg.gif) repeat-x #D7D7D7;
+ height: 100%;
+}
+
+.header-panel {
+ height: 116px;
+ border: none;
+ padding: 0px;
+ background: none;
+}
+
+.header-panel-body {
+ padding: 0px;
+}
+
+.header-content-div {
+ height: 79px;
+ position: relative;
+}
+
+.user-info-div {
+ position: absolute;
+ font-weight: bold;
+ color: #ffffff;
+ right: 25px;
+ top: 49px;
+}
+
+.top-right-menu {
+ position: absolute;
+ right: 8px;
+ top: 14px;
+}
+
+.top-right-menu-toolbar {
+ background: none;
+ border: none;
+}
+
+.top-right-menu-item {
+ vertical-align: top;
+ padding: 0px;
+}
+
+.top-right-menu-item a {
+ font-size: 11px;
+ color: #ffffff;
+ text-decoration: none;
+ font-weight: normal;
+ padding: 0px 8px 0px 15px;
+}
+
+.main-menu-panel {
+ height: 37px;
+ position: relative;
+ border: none;
+ padding: 0px;
+ background: url(../img/shell/general_panelbar_bg.gif) repeat-x #A84807;
+ overflow-y: hidden;
+}
+
+.main-menu-panel-body {
+ border: none;
+ padding: 0px;
+}
+
+.body-main-panel {
+ background: url(../img/shell/general_panel_bg.gif) right top repeat-y;
+ height: 100%;
+ padding: 0px;
+ border: none;
+}
+
+.body-main-panel-header {
+ height: 15px;
+ background: url(../img/shell/general_panel_header_bg.gif) right top;
+ font-size: 1px;
+ padding: 0px;
+ border: none;
+}
+
+.footer-panel {
+ height: 82px;
+ position: relative;
+ background: url(../img/shell/footer_bg.gif) repeat-x #000000;
+ border: none;
+ padding: 0px;
+}
+
+.footer-panel-content {
+ position: absolute;
+ left: 8px;
+ top: 51px;
+}
+
+.body-main-panel-body{
+ padding: 0px;
+}
+
+.bottom-right-menu-item {
+ vertical-align: top;
+ padding: 0px 15px 0px 8px;
+}
+
+.bottom-right-menu-item-content {
+ font-size: 11px;
+ color: #ffffff;
+ text-decoration: none;
+}
+
+.logged-user {
+ color: #FF7D2A
+}
+
+.main-menu-toolbar {
+ background: none;
+ border: none;
+}
+
+.main-menu-toolbar-content a {
+ color: #FFFFFF;
+ font-size: 11px;
+ font-weight: bold;
+ text-decoration: none;
+}
+
+.table-boby-column1{
+ vertical-align: top;
+}
+
+.table-boby-column2{
+ vertical-align: top;
+}
+
+.main-menu-table{
+ width: 100%;
+}
+
+.menu-cloumn1{
+ width: 90%
+}
+.menu-cloumn2{
+ width: 10%
+}
+
+.login-panel{
+ width: 400px;
+}
+
+input[type='submit'], input[type='button'], button {
+ background: #414141;
+ color: white;
+ margin: 5px;
+ border-color: black;
+}
+
+.login-table-col{
+ text-align: center;
+}
+
+.login-table-col2{
+ text-align: left;
+ font-weight: bold;
+}
+
+.login-body-table-col{
+ align: middle;
+ vertical-align: middle;
+ height: 100%;
+}
+
+.main-image{
+ border: none;
+}
+
+.all-images{
+ border: none;
+}
+
+.message {
+ border: 1px solid #FFCC00;
+ padding: 5px;
+ margin-top: 5px;
+ margin-bottom: 5px;
+ background-color: #F0F8FF;
+ font-size: 12px;
+ color: red;
+}
+
+.name {
+ vertical-align: top;
+ font-weight: bold;
+ width: 115px;
+ float: left;
+ padding: 5px;
+ margin-top: 3px;
+ clear: left;
+}
+.value {
+ float: left;
+ padding: 5px;
+}
+
+.error {
+ float: left;
+ padding: 5px;
+ color: red;
+}
+.errors {
+ color: red;
+ vertical-align: middle;
+}
+img.errors {
+ padding-right: 5px;
+}
+.errors input {
+ border: 1px solid red;
+}
+.errors textarea {
+ border: 1px solid red;
+}
+
+.required {
+ color: red;
+ padding-left: 2px;
+}
+
+.rich-stglpanel-body {
+ overflow: auto;
+}
+.top {
+ vertical-align: top;
+}
+.info {
+ height: 202px;
+ overflow: auto;
+}
+
+.a4j-status {
+ border: 1px solid white;
+ padding: 5px;
+ position: absolute;
+ z-index: 3;
+ left: 50%;
+ top: 40px;
+}
\ No newline at end of file
Property changes on: trunk/test-applications/realworld2/web/src/main/webapp/stylesheet/realworld2.css
___________________________________________________________________
Name: svn:mime-type
+ text/css
Name: svn:eol-style
+ native
15 years, 10 months
JBoss Rich Faces SVN: r12732 - trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng.
by richfaces-svn-commits@lists.jboss.org
Author: abelevich
Date: 2009-02-24 12:46:46 -0500 (Tue, 24 Feb 2009)
New Revision: 12732
Modified:
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/TogglePanelTest.java
Log:
Modified: trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/TogglePanelTest.java
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/TogglePanelTest.java 2009-02-24 17:45:43 UTC (rev 12731)
+++ trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/TogglePanelTest.java 2009-02-24 17:46:46 UTC (rev 12732)
@@ -20,22 +20,29 @@
*/
package org.richfaces.testng;
+import java.util.HashMap;
+import java.util.Map;
+
import org.ajax4jsf.template.Template;
+import org.richfaces.AutoTester;
import org.richfaces.SeleniumTestBase;
import org.testng.annotations.Test;
public class TogglePanelTest extends SeleniumTestBase {
private static final String RESET_METHOD = "#{panelBean.cleanValues}";
+
+ private final static String CHILD_PROCESSING_TEST_URL = "pages/togglePanel/togglePanelChildProcessingTest.xhtml";
+
@Test
public void testTogglePanelComponentAjaxMode(Template template) {
renderPage(template, RESET_METHOD);
- String parentId = getParentId() + "_form:";
+ String parentId = getParentId() + "mainForm:";
- String inputId = parentId + "_value";
- String outputId = parentId + "_value2";
+ String inputId = parentId + "value";
+ String outputId = parentId + "value2";
String controlNext = parentId + "ajax_next";
String controlOne = parentId + "ajax_one";
@@ -72,10 +79,10 @@
public void testTogglePanelComponentServerMode(Template template) {
renderPage(template, RESET_METHOD);
- String parentId = getParentId() + "_form:";
+ String parentId = getParentId() + "mainForm:";
- String inputId = parentId + "_value";
- String outputId = parentId + "_value2";
+ String inputId = parentId + "value";
+ String outputId = parentId + "value2";
String controlNext = parentId + "server_next";
String controlOne = parentId + "server_one";
@@ -111,7 +118,7 @@
public void testTogglePanelComponentClientMode(Template template) {
renderPage(template, RESET_METHOD);
- String parentId = getParentId() + "_form:";
+ String parentId = getParentId() + "mainForm:";
String controlNext = parentId + "client_next";
String controlOne = parentId + "client_one";
@@ -136,10 +143,152 @@
AssertVisible(twoFacet, "State 'one' has to give place to state 'two'");
AssertNotVisible(oneFacet, "Both of 'one' and 'two' states were rendered for client toggle panel.");
}
-
+
+ @Test
+ public void testRendered(Template template) {
+ AutoTester autoTester = getAutoTester(this);
+ autoTester.renderPage(template, null);
+ autoTester.testRendered();
+ }
+
+ @Test
+ public void testStandardAttributes(Template template) {
+ AutoTester autoTester = getAutoTester(this);
+ autoTester.renderPage(template, null);
+ Map <String, String> styleAttributes = new HashMap<String, String>();
+ styleAttributes.put("width", "200px");
+ styleAttributes.put("background-color", "blue");
+ styleAttributes.put("color", "yellow");
+ autoTester.testStyleAndClasses(new String[]{"className"}, styleAttributes);
+ autoTester.testHTMLEvents();
+ }
+
+ @Test
+ public void testWithExternalValidationFailure(Template template) {
+ AutoTester autoTester = getAutoTester(this);
+ autoTester.renderPage(template, null);
+ writeStatus("Check component in case of external validation failure: listeners are not invoked, model is not updated");
+ autoTester.testExtrenalValidationFailure();
+ }
+
+ @Test
+ public void testImmediate(Template template) {
+ AutoTester autoTester = getAutoTester(this);
+ autoTester.renderPage(template, null);
+ autoTester.testImmediate(false);
+ }
+
+ @Test
+ public void testImmediateWithExternalValidationFailed(Template template) {
+ AutoTester tester = getAutoTester(this);
+ tester.renderPage(template, RESET_METHOD);
+ writeStatus("Test immediate attribute with external validation failed");
+ tester.testImmediateWithExternalValidationFailed(false);
+ }
+
+ @Test
+ public void testChildProcessingAjax(Template template) {
+ renderPage(CHILD_PROCESSING_TEST_URL, template, "#{panelBean.reset2Ajax}");
+
+ writeStatus("Check children processing for ajax mode");
+
+ String parentId = getParentId() + "mainForm:";
+ String resultId = parentId + "_result";
+ String child = parentId + "_child";
+ String ajaxButton = parentId + "_ajax_submit";
+ String serverButton = parentId + "_server_submit";
+ String toggleControl = parentId + "_ajax_switch";
+
+ clickAjaxCommandAndWait(ajaxButton);
+ AssertTextEquals(resultId, "1", "Panel is server-aware and closed! Invalid child components must not be processed");
+
+ clickCommandAndWait(serverButton);
+ AssertTextEquals(resultId, "2", "Panel is server-aware and closed! Invalid child components must not be processed");
+
+ clickAjaxCommandAndWait(toggleControl);
+ AssertTextEquals(resultId, "2", "Panel is server-aware and closed! Invalid child components must not be processed");
+
+ type(child, "valid");
+
+ clickAjaxCommandAndWait(ajaxButton);
+ AssertTextEquals(resultId, "3", "Panel is server-aware and open! Invalid child components must be processed");
+
+ clickCommandAndWait(serverButton);
+ AssertTextEquals(resultId, "4", "Panel is server-aware and open! Invalid child components must be processed");
+ }
+
+ @Test
+ public void testChildProcessingServer(Template template) {
+ renderPage(CHILD_PROCESSING_TEST_URL, template, "#{panelBean.reset2Server}");
+
+ writeStatus("Check children processing for server mode");
+
+ String parentId = getParentId() + "mainForm:";
+ String resultId = parentId + "_result";
+ String child = parentId + "_child";
+ String ajaxButton = parentId + "_ajax_submit";
+ String serverButton = parentId + "_server_submit";
+ String toggleControl = parentId + "_ajax_switch";
+
+ clickAjaxCommandAndWait(ajaxButton);
+ AssertTextEquals(resultId, "1", "Panel is server-aware and closed! Invalid child components must not be processed");
+
+ clickCommandAndWait(serverButton);
+ AssertTextEquals(resultId, "2", "Panel is server-aware and closed! Invalid child components must not be processed");
+
+ clickCommandAndWait(toggleControl);
+ AssertTextEquals(resultId, "2", "Panel is server-aware and closed! Invalid child components must not be processed");
+
+ type(child, "valid");
+
+ clickAjaxCommandAndWait(ajaxButton);
+ AssertTextEquals(resultId, "3", "Panel is server-aware and open! Invalid child components must be processed");
+
+ clickCommandAndWait(serverButton);
+ AssertTextEquals(resultId, "4", "Panel is server-aware and open! Invalid child components must be processed");
+
+ }
+
+ @Test
+ public void testChildProcessingClient(Template template) {
+ renderPage(CHILD_PROCESSING_TEST_URL, template, "#{panelBean.reset2Client}");
+
+ writeStatus("Check children processing for client mode");
+
+ String parentId = getParentId() + "mainForm:";
+ String resultId = parentId + "_result";
+ String child = parentId + "_child";
+ String ajaxButton = parentId + "_ajax_submit";
+ String serverButton = parentId + "_server_submit";
+ String toggleControl = parentId + "_ajax_switch";
+
+ clickAjaxCommandAndWait(ajaxButton);
+ AssertTextEquals(resultId, "0", "Panel is server-aware and closed! Invalid child components must not be processed");
+
+ clickCommandAndWait(serverButton);
+ AssertTextEquals(resultId, "0", "Panel is server-aware and closed! Invalid child components must not be processed");
+
+ clickById(toggleControl);
+ AssertTextEquals(resultId, "0", "Panel is server-aware and closed! Invalid child components must not be processed");
+
+ type(child, "valid");
+
+ clickAjaxCommandAndWait(ajaxButton);
+ AssertTextEquals(resultId, "1", "Panel is server-aware and open! Invalid child components must be processed");
+
+ clickCommandAndWait(serverButton);
+ AssertTextEquals(resultId, "2", "Panel is server-aware and open! Invalid child components must be processed");
+
+ }
+
@Override
public String getTestUrl() {
return "pages/togglePanel/togglePanelTest.xhtml";
}
-
+
+ @Override
+ public String getAutoTestUrl() {
+ return "pages/togglePanel/togglePanelAutoTest.xhtml";
+ }
+
}
15 years, 10 months
JBoss Rich Faces SVN: r12731 - trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/togglePanel.
by richfaces-svn-commits@lists.jboss.org
Author: abelevich
Date: 2009-02-24 12:45:43 -0500 (Tue, 24 Feb 2009)
New Revision: 12731
Added:
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/togglePanel/togglePanelAutoTest.xhtml
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/togglePanel/togglePanelChildProcessingTest.xhtml
Modified:
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/togglePanel/togglePanelTest.xhtml
Log:
Added: trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/togglePanel/togglePanelAutoTest.xhtml
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/togglePanel/togglePanelAutoTest.xhtml (rev 0)
+++ trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/togglePanel/togglePanelAutoTest.xhtml 2009-02-24 17:45:43 UTC (rev 12731)
@@ -0,0 +1,63 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:a4j="http://richfaces.org/a4j"
+ xmlns:rich="http://richfaces.org/rich"
+ xmlns:h="http://java.sun.com/jsf/html"
+ xmlns:f="http://java.sun.com/jsf/core"
+ xmlns:ui="http://java.sun.com/jsf/facelets">
+
+ <ui:composition template="#{templateBean.autoTestTemplate}">
+
+ <ui:define name="component">
+ <rich:togglePanel id="componentId"
+ initialState="one"
+ stateOrder="one,two"
+ switchType="ajax"
+ immediate="#{autoTestBean.immediate}"
+ rendered="#{autoTestBean.rendered}"
+ required="#{autoTestBean.required}"
+ requiredMessage="#{autoTestBean.requiredMessage}"
+ style="width: 200px; background-color: blue; color: yellow;"
+ styleClass="className"
+ onclick="EventQueue.fire('onclick')"
+ ondbclick="EventQueue.fire('ondbclick')"
+ onkeydown="EventQueue.fire('onkeydown')"
+ onkeypress="EventQueue.fire('onkeypress')"
+ onkeyup="EventQueue.fire('onkeyup')"
+ onmousedown="EventQueue.fire('onmousedown')"
+ onmousemove="EventQueue.fire('onmousemove')"
+ onmouseout="EventQueue.fire('onmouseout')"
+ onmouseover="EventQueue.fire('onmouseover')"
+ onmouseup="EventQueue.fire('onmouseup')">
+
+ <f:facet name="one">
+ <h:outputText id="client_state_one" value="State One" />
+ </f:facet>
+
+ <f:facet name="two">
+ <h:outputText id="client_state_two" value="State Two" />
+ </f:facet>
+
+ </rich:togglePanel>
+
+ <rich:toggleControl id="client_next" for="componentId" >
+ <h:outputText value="Client next" />
+ </rich:toggleControl>
+
+ <br />
+
+ <rich:toggleControl id="client_one" for="componentId" switchToState="one" >
+ <h:outputText value="Client one" />
+ </rich:toggleControl>
+
+ <br />
+
+ <rich:toggleControl id="client_two" for="componentId" switchToState="two" >
+ <h:outputText value="Client two" />
+ </rich:toggleControl>
+
+ </ui:define>
+
+ </ui:composition>
+
+</html>
\ No newline at end of file
Added: trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/togglePanel/togglePanelChildProcessingTest.xhtml
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/togglePanel/togglePanelChildProcessingTest.xhtml (rev 0)
+++ trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/togglePanel/togglePanelChildProcessingTest.xhtml 2009-02-24 17:45:43 UTC (rev 12731)
@@ -0,0 +1,40 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:a4j="http://richfaces.org/a4j"
+ xmlns:rich="http://richfaces.org/rich"
+ xmlns:h="http://java.sun.com/jsf/html"
+ xmlns:f="http://java.sun.com/jsf/core"
+ xmlns:ui="http://java.sun.com/jsf/facelets">
+
+ <ui:composition template="#{templateBean.template}">
+ <ui:define name="component">
+ <h:form id="mainForm">
+
+ <h:panelGroup>
+ <rich:togglePanel id="_ajax_panel" style="border: 1px solid blue; width: 200px;" label="Switch type: #{panelBean.switchType}" switchType="#{panelBean.switchType}" initialState="none" stateOrder="none,one">
+ <f:facet name="none">
+ <h:outputText value="none"/>
+ </f:facet>
+ <f:facet name="one">
+ <h:inputText id="_child" value="#{panelBean.content}" required="true"/>
+ </f:facet>
+ </rich:togglePanel>
+ <rich:toggleControl id="_ajax_switch" for="_ajax_panel" actionListener="#{panelBean.actionListener}">
+ <h:outputText value="click me" />
+ </rich:toggleControl>
+ </h:panelGroup>
+
+ <br></br>
+ <h:outputText value="Result: " />
+ <h:outputText id="_result" value="#{panelBean.value2}"/>
+ <br></br>
+
+ <h:panelGroup>
+ <a4j:commandButton id="_ajax_submit" action="#{panelBean.increment}" value="ajax_submit" reRender="_result, _ajax_panel"/>
+ <h:commandButton id="_server_submit" action="#{panelBean.increment}" value="server_submit"/>
+ </h:panelGroup>
+
+ </h:form>
+ </ui:define>
+ </ui:composition>
+</html>
\ No newline at end of file
Modified: trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/togglePanel/togglePanelTest.xhtml
===================================================================
(Binary files differ)
15 years, 10 months
JBoss Rich Faces SVN: r12729 - in trunk/test-applications/seleniumTest/richfaces/src: main/webapp/pages/ajaxRepeat and 1 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: konstantin.mishin
Date: 2009-02-24 11:50:16 -0500 (Tue, 24 Feb 2009)
New Revision: 12729
Modified:
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/A4JRepeatTestBean.java
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/ajaxRepeat/ajaxRepeatTest.xhtml
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/AjaxRepeatTest.java
Log:
RF-6178
Modified: trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/A4JRepeatTestBean.java
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/A4JRepeatTestBean.java 2009-02-24 14:51:06 UTC (rev 12728)
+++ trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/A4JRepeatTestBean.java 2009-02-24 16:50:16 UTC (rev 12729)
@@ -25,174 +25,145 @@
import java.util.List;
import java.util.Set;
-import org.ajax4jsf.component.UIRepeat;
+import javax.faces.application.FacesMessage;
+import javax.faces.component.UIComponent;
+import javax.faces.context.FacesContext;
+import javax.faces.convert.Converter;
+import javax.faces.event.ActionEvent;
+import javax.faces.validator.Validator;
+import javax.faces.validator.ValidatorException;
/**
* a4j:repeat component test bean
* @author Alexandr Levkovsky
*
*/
-public class A4JRepeatTestBean {
+public class A4JRepeatTestBean implements Validator{
- private Integer first = 0;
+
+ public class Row {
+
+ private String cell1;
+ private String cell2;
+ private String cell3;
- private Integer rows = 5;
-
- private Integer visible = 0;
+ public Row(String index) {
+ this.cell1 = index + "A";
+ this.cell2 = index + "B";
+ this.cell3 = index + "C";
+ }
- private List<A4JRepeatItemTestBean> items;
+ public String getCell1() {
+ return cell1;
+ }
- private UIRepeat repeater;
+ public void setCell1(String cell1) {
+ this.cell1 = cell1;
+ }
- private Boolean rendered = true;
-
- private Set<Integer> keys = null;
+ public String getCell2() {
+ return cell2;
+ }
- /**
- * @return the first
- */
- public Integer getFirst() {
- return first;
- }
+ public void setCell2(String cell2) {
+ this.cell2 = cell2;
+ }
- /**
- * @param first the first to set
- */
- public void setFirst(Integer first) {
- this.first = first;
- }
+ public String getCell3() {
+ return cell3;
+ }
- /**
- * @return the rows
- */
- public Integer getRows() {
- return rows;
- }
+ public void setCell3(String cell3) {
+ this.cell3 = cell3;
+ }
+ }
- /**
- * @param rows the rows to set
- */
- public void setRows(Integer rows) {
- this.rows = rows;
- }
+ private List<Row> model;
+ private int rows;
+ private String trace;
+ private Set<Integer> ajaxKeys;
+
+ public A4JRepeatTestBean() {
+ init();
+ }
- /**
- * @return the items
- */
- public List<A4JRepeatItemTestBean> getItems() {
- if (items == null) {
- generateItems(getRows());
+ public void init() {
+ model = new ArrayList<Row>(10);
+ for (int i = 0; i < 10; i++) {
+ model.add(new Row(Integer.toString(i)));
+ }
+ rows = 0;
+ trace = "";
+ ajaxKeys = new HashSet<Integer>(10);
+ for (int i = 0; i < 10; i++) {
+ if (i != 2 && i != 6) {
+ ajaxKeys.add(i);
+ }
+ }
}
- return items;
- }
- /**
- * @param items the items to set
- */
- public void setItems(List<A4JRepeatItemTestBean> items) {
- this.items = items;
- }
+ public void submit(ActionEvent event) {
+ trace = event.getComponent().getClientId(FacesContext.getCurrentInstance());
+ }
- /**
- * @return the repeater
- */
- public UIRepeat getRepeater() {
- return repeater;
- }
+ public void reRender(ActionEvent event) {
+ for (Row element : model) {
+ element.setCell2("XXX");
+ }
+ }
- /**
- * @param repeater the repeater to set
- */
- public void setRepeater(UIRepeat repeater) {
- this.repeater = repeater;
- }
+ public void setModel(List<Row> model) {
+ this.model = model;
+ }
- /**
- * @return the rendered
- */
- public Boolean getRendered() {
- return rendered;
- }
+ public List<Row> getModel() {
+ return model;
+ }
- /**
- * @param rendered the rendered to set
- */
- public void setRendered(Boolean rendered) {
- this.rendered = rendered;
- }
-
-
-
- /**
- * @return the visible
- */
- public Integer getVisible() {
- return visible;
- }
+ public void setRows(int rows) {
+ this.rows = rows;
+ }
- /**
- * @param visible the visible to set
- */
- public void setVisible(Integer visible) {
- this.visible = visible;
- }
+ public int getRows() {
+ return rows;
+ }
- private void generateItems(Integer rows) {
- items = new ArrayList<A4JRepeatItemTestBean>(rows);
- for (int i = 0; i < rows; i++) {
- A4JRepeatItemTestBean item = new A4JRepeatItemTestBean(i);
- items.add(item);
+ public void setTrace(String trace) {
+ this.trace = trace;
+ }
+ public String getTrace() {
+ return trace;
}
- }
-
- public String init(){
- generateItems(getRows());
- return null;
- }
-
- public String reset(){
- setRows(5);
- setRendered(true);
- setVisible(0);
- setFirst(0);
- generateItems(getRows());
- return null;
- }
- /**
- * @return the keys
- */
- public Set<Integer> getKeys() {
- return keys;
- }
+ public void validate(FacesContext context, UIComponent component,
+ Object value) throws ValidatorException {
+ if ("fail".equals(value)) {
+ throw new ValidatorException(new FacesMessage("validation failure"));
+ }
+ }
- /**
- * @param keys the keys to set
- */
- public void setKeys(Set<Integer> keys) {
- this.keys = keys;
- }
-
- public String change() {
- Set<Integer> keys = new HashSet<Integer>();
- int rowKey = getRepeater().getRowIndex();
- keys.add(rowKey);
- setKeys(keys);
- for (A4JRepeatItemTestBean item : items) {
- item.setNotRerenderedChangeCounter(item.getNotRerenderedChangeCounter() + 1);
- item.setRerenderedChangeCounter(item.getRerenderedChangeCounter() + 1);
+ public void setAjaxKeys(Set<Integer> ajaxKeys) {
+ this.ajaxKeys = ajaxKeys;
}
- return null;
- }
- public String changeWhithoutAjaxKeys() {
- setKeys(null);
- for (A4JRepeatItemTestBean item : items) {
- item.setNotRerenderedChangeCounter(item.getNotRerenderedChangeCounter() + 1);
- item.setRerenderedChangeCounter(item.getRerenderedChangeCounter() + 1);
+ public Set<Integer> getAjaxKeys() {
+ return ajaxKeys;
}
- return null;
- }
+ public Converter getRowKeyConverter() {
+ return new Converter(){
+
+ public Object getAsObject(FacesContext context,
+ UIComponent component, String value) {
+ return new Integer(value.substring(2));
+ }
+
+ public String getAsString(FacesContext context,
+ UIComponent component, Object value) {
+ return "c_" + value.toString();
+ }
+
+ };
+ }
}
Modified: trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/ajaxRepeat/ajaxRepeatTest.xhtml
===================================================================
(Binary files differ)
Modified: trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/AjaxRepeatTest.java
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/AjaxRepeatTest.java 2009-02-24 14:51:06 UTC (rev 12728)
+++ trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/AjaxRepeatTest.java 2009-02-24 16:50:16 UTC (rev 12729)
@@ -20,6 +20,8 @@
*/
package org.richfaces.testng;
+import java.util.Arrays;
+
import org.ajax4jsf.template.Template;
import org.richfaces.SeleniumTestBase;
import org.testng.Assert;
@@ -33,261 +35,135 @@
*/
public class AjaxRepeatTest extends SeleniumTestBase {
- private final static Integer DEFAULT_ROWS_COUNT = 5;
+ private String rows;
- private final static String FORM1_ID = "form1:";
+ private String panelGroup;
- private final static String FORM2_ID = "form2:";
+ private String repeat;
- private final static String FIRST_INPUT_ID = "first_input";
+ private String reRender;
- private final static String ROWS_INPUT_ID = "rows_input";
+ private String outputText;
+
+ private String dataTable;
- private final static String RESET_BUTTON_ID = "reset";
+ private void init(Template template) {
+ renderPage(null, template, "#{a4jRepeatBean.init}");
+ String attrForm = getParentId() + "attrForm";
+ rows = attrForm + ":rows";
+ String mainForm = getParentId() + "mainForm";
+ panelGroup = mainForm + ":panelGroup";
+ repeat = mainForm + ":repeat";
+ reRender = mainForm + ":reRender";
+ outputText = getParentId() + "outputText";
+ dataTable = getParentId() + "dataTable";
+ }
- private final static String ROWS_COUNT_INPUT_ID = "rows_count_input";
+ /**
+ * items from collection defined as value attribute are output to the client;
+ * number of items is limited using elements attribute and not
+ */
+ @Test
+ public void testStructure(Template template) {
+ init(template);
+ chekStructure();
+ selenium.type(rows, "3");
+ waitForAjaxCompletion();
+ Assert.assertEquals(selenium.getXpathCount("id('"+ panelGroup + "')/div"), 3);
+ chekStructure();
+ }
+
+ /**
+ * nested input and command components work correctly
+ * for the cases of validation failure or not
+ */
+ @Test
+ public void testComponentsProcessingWithValidation(Template template) {
+ init(template);
+ String liLocator = "xpath=id('"+ panelGroup + "')/div[";
+ String inputLocator = liLocator + "6]/input[";
+ Assert.assertEquals(selenium.getText(outputText), "");
+ selenium.click(inputLocator + "2]");
+ waitForPageToLoad();
+ Assert.assertTrue(selenium.getText(outputText).endsWith("5:submit"));
+ selenium.click(inputLocator + "3]");
+ waitForAjaxCompletion();
+ Assert.assertTrue(selenium.getText(outputText).endsWith("5:ajaxSubmit"));
+ selenium.click(inputLocator + "4]");
+ waitForAjaxCompletion();
+ Assert.assertTrue(selenium.getText(outputText).endsWith("5:ajaxSingleSubmit"));
+ selenium.type(inputLocator + "1]", "abc5");
+ selenium.click(inputLocator + "3]");
+ waitForAjaxCompletion();
+ chekStructure();
+ selenium.type(inputLocator + "1]", "fail");
+ selenium.type(liLocator + "3]/input[1]", "fail");
+ selenium.click(inputLocator + "3]");
+ waitForAjaxCompletion();
+ chekStructure(3, 6);
+ }
- private final static String TABLE_ID = "repeat_table";
+ /**
+ * rows defined by ajaxKeys attribute are re-rendered correctly
+ */
+ @Test
+ public void testAjaxKeys(Template template) {
+ init(template);
+ chekStructure();
+ clickAjaxCommandAndWait(reRender);
+ chekStructure(3, 7);
+ }
- private final static String REPEAT_ID = "repeat";
-
- private final static String INPUT_ID = "input";
-
- private final static String OUTPUT_ID = "output";
-
- private final static String APPLY_BUTTON_ID = "apply";
-
- private final static String RENDERED_CHECKBOX_ID = "rendered_checkbox";
-
- private final static String LINK_ID = "link";
-
- private final static String BUTTON_ID = "button";
-
- private final static String RERENDERED_COUNTER_ID = "rerendered_change_counter";
-
- private final static String NOT_RERENDERED_COUNTER_ID = "not_rerendered_change_counter";
-
- private final static String INPUT_VALUE_OUTPUT_ID = "input_output";
-
- @Override
- public String getTestUrl() {
- return "pages/ajaxRepeat/ajaxRepeatTest.xhtml";
- }
-
- @Test
- public void testRerenderingRowsWithAjaxKeysAttribute(Template template) throws Exception {
- renderPage(template);
- writeStatus("Testing rerendering rows with ajaxKeys attribute...");
- // link action update counter fields in all rows but add only current
- // row number to ajaxKeys so only current row counter should be
- // rerendered
- clickReset();
- AssertRendered(TABLE_ID);
- assertRowsCount(DEFAULT_ROWS_COUNT, TABLE_ID);
-
- for (int i = 0; i < DEFAULT_ROWS_COUNT; i++) {
- for (int j = 0; j < DEFAULT_ROWS_COUNT; j++) {
- if (j < i) {
- assertOutputText(j, RERENDERED_COUNTER_ID, new Integer(j + 1).toString());
- } else {
- assertOutputText(j, RERENDERED_COUNTER_ID, "0");
+ /**
+ * components using rowKeyVar and stateVar variables are correctly output to the client
+ */
+ @Test
+ public void testVars(Template template) {
+ init(template);
+ Assert.assertEquals(selenium.getText(repeat + ":c_2:first"), "0", "Attribute 'stateVar' works wrong.");
+ Assert.assertEquals(selenium.getText(repeat + ":c_2:rows"), "0", "Attribute 'stateVar' works wrong.");
+ int rows = selenium.getXpathCount("id('"+ repeat + "')/div").intValue();
+ for (int i = 0; i < rows; i++) {
+ Assert.assertEquals(selenium.getText(repeat + ":c_" + i + ":rowKeyVar"), Integer.toString(i));
}
- assertOutputText(j, NOT_RERENDERED_COUNTER_ID, "0");
- }
-
- writeStatus("click link " + i);
- String linkId = getFullTableElementId(i, LINK_ID);
- clickAjaxCommandAndWait(linkId);
-
- for (int j = 0; j < DEFAULT_ROWS_COUNT; j++) {
- if (j < i) {
- assertOutputText(j, RERENDERED_COUNTER_ID, new Integer(j + 1).toString());
- } else if (j == i) {
- assertOutputText(j, RERENDERED_COUNTER_ID, new Integer(j + 1).toString());
- } else {
- assertOutputText(j, RERENDERED_COUNTER_ID, "0");
- }
- assertOutputText(i, NOT_RERENDERED_COUNTER_ID, "0");
- }
}
- }
- @Test
- public void testRerenderingRowsWithoutAjaxKeysAttribute(Template template) throws Exception {
- renderPage(template);
- writeStatus("Testing rerendering rows without ajaxKeys attribute...");
- // button action update counter fields in all rows and sets ajaxKeys to
- // null so counters in all rows should be rerendered.
- clickReset();
- AssertRendered(TABLE_ID);
- assertRowsCount(DEFAULT_ROWS_COUNT, TABLE_ID);
-
- for (int i = 0; i < DEFAULT_ROWS_COUNT; i++) {
- for (int j = 0; j < DEFAULT_ROWS_COUNT; j++) {
- assertOutputText(j, RERENDERED_COUNTER_ID, new Integer(i).toString());
- assertOutputText(j, NOT_RERENDERED_COUNTER_ID, "0");
- }
-
- writeStatus("click button " + i);
- String buttonId = getFullTableElementId(i, BUTTON_ID);
- clickAjaxCommandAndWait(buttonId);
-
- for (int j = 0; j < DEFAULT_ROWS_COUNT; j++) {
- assertOutputText(j, RERENDERED_COUNTER_ID, new Integer(i + 1).toString());
- assertOutputText(j, NOT_RERENDERED_COUNTER_ID, "0");
- }
+ /**
+ * componentState attribute stores nested components state across requests
+ */
+ @Test
+ public void testComponentState(Template template) {
+ init(template);
+ Assert.assertEquals(selenium.getText(repeat + ":c_2:firstState"), "0", "Attribute 'componentState' works wrong.");
+ Assert.assertEquals(selenium.getText(repeat + ":c_2:rowsState"), "0", "Attribute 'componentState' works wrong.");
}
- }
- @Test
- public void testRerenderingRowsWithValidation(Template template) throws Exception {
- renderPage(template);
- writeStatus("Testing rerendering rows with validation...");
- clickReset();
- AssertRendered(TABLE_ID);
- assertRowsCount(DEFAULT_ROWS_COUNT, TABLE_ID);
-
- for (Integer i = 0; i < DEFAULT_ROWS_COUNT; i++) {
- assertInputValue(i, INPUT_ID, i.toString());
- assertOutputText(i, INPUT_VALUE_OUTPUT_ID, i.toString());
- assertOutputText(i, RERENDERED_COUNTER_ID, "0");
-
- writeStatus("set not valid value for row " + i + " input...");
- type(getFullTableElementId(i, INPUT_ID), "200");
- writeStatus("click link " + i);
- String linkId = getFullTableElementId(i, LINK_ID);
- clickAjaxCommandAndWait(linkId);
-
- assertInputValue(i, INPUT_ID, "200");
- assertOutputText(i, INPUT_VALUE_OUTPUT_ID, i.toString());
- assertOutputText(i, RERENDERED_COUNTER_ID, "0");
-
- writeStatus("set valid value for row " + i + " input...");
- type(getFullTableElementId(i, INPUT_ID), "99");
- writeStatus("click link " + i);
- clickAjaxCommandAndWait(linkId);
-
- assertInputValue(i, INPUT_ID, "99");
- assertOutputText(i, INPUT_VALUE_OUTPUT_ID, "99");
- assertOutputText(i, RERENDERED_COUNTER_ID, new Integer(i + 1).toString());
+ /**
+ * rowKeyConverter outputs correct client ids
+ */
+ @Test
+ public void testRowKeyConverter(Template template) {
+ init(template);
+ Assert.assertTrue(selenium.getAttribute("xpath=id('"+ panelGroup + "')/div[3]/input[1]@id").indexOf(":c_2") != -1, "Attribute 'rowKeyConverter' works wrong.");
}
- }
- @Test
- public void testRenderedAttribute(Template template) throws Exception {
- renderPage(template);
- writeStatus("Testing rendered attribute...");
- clickReset();
- AssertRendered(TABLE_ID);
- // repeat has rendered=true and should present on page as table with
- // default 5 rows
- assertRowsCount(5, TABLE_ID);
-
- writeStatus("change rendered attribute to false");
- // change rendered attribute to false
- String checkboxId = getParentId() + FORM1_ID + RENDERED_CHECKBOX_ID;
- selenium.click(checkboxId);
- writeStatus("Click apply");
- clickApply();
-
- // repeat now has rendered=false and should not present on page as table
- // with default 0 rows
- assertRowsCount(0, TABLE_ID);
- }
-
- @Test
- public void testFirstAttribute(Template template) throws Exception {
- renderPage(template);
- writeStatus("Testing first attribute...");
- clickReset();
- AssertRendered(TABLE_ID);
- // repeat has rendered=true and should present on page as table with
- // default 5 rows
- assertRowsCount(5, TABLE_ID);
- // first row default value 0
- String fullInput0Id = getParentId() + FORM2_ID + REPEAT_ID + ":" + 0 + ":" + OUTPUT_ID;
- String fullInput1Id = getParentId() + FORM2_ID + REPEAT_ID + ":" + 1 + ":" + OUTPUT_ID;
- AssertPresent(fullInput0Id);
- AssertPresent(fullInput1Id);
- writeStatus("change first attribute to 1");
-
- String inputId = getParentId() + FORM1_ID + FIRST_INPUT_ID;
- type(inputId, "1");
- writeStatus("Click apply");
- clickApply();
-
- // now first row value should be 1
- AssertNotPresent(fullInput0Id);
- AssertPresent(fullInput1Id);
- }
-
- @Test
- public void testRowsAttribute(Template template) throws Exception {
- renderPage(template);
- writeStatus("Testing rows attribute...");
- clickReset();
- AssertRendered(TABLE_ID);
- // repeat has rows=0 and table with all default 5 rows should present on
- // page
- assertRowsCount(5, TABLE_ID);
-
- writeStatus("change rendered attribute to false");
- // change rows attribute to 3
- String inputId = getParentId() + FORM1_ID + ROWS_INPUT_ID;
- type(inputId, "3");
- writeStatus("Click apply");
- clickApply();
-
- // repeat now has rendered=false and should not present on page as table
- // with default 0 rows
- assertRowsCount(3, TABLE_ID);
- // last row should have value 2
- assertInputValue(2, INPUT_ID, "2");
- }
-
- @Test
- public void testRowKeyVarAttribute(Template template) throws Exception {
- renderPage(template);
- writeStatus("Testing rowKeyVar attribute...");
- clickReset();
- AssertRendered(TABLE_ID);
- String inputId = getParentId() + FORM1_ID + ROWS_COUNT_INPUT_ID;
- Integer rowsCount = new Integer(getValueById(inputId));
- // repeat has rows=0 and table with all default 5 rows should present on
- // page
- assertRowsCount(rowsCount, TABLE_ID);
-
- // output text has value="#{rowKey % 2 == 0 ? '0' : '1'}"
- for (int i = 0; i < rowsCount; i++) {
- assertOutputText(i, OUTPUT_ID, i % 2 == 0 ? "0" : "1");
+ private void chekStructure(int ... notEqualRows) {
+ String dataTableRowLocator = "id('"+ dataTable + "')/div";
+ int count = selenium.getXpathCount(dataTableRowLocator).intValue();
+ for (int i = 1; i <= count; i++) {
+ if (Arrays.binarySearch(notEqualRows, i) < 0) {
+ Assert.assertEquals(selenium.getValue("xpath=id('"+ repeat + "')/div[" + i + "]/input"),
+ selenium.getText("xpath=" + dataTableRowLocator + "[" + i + "]"));
+ } else {
+ Assert.assertFalse(selenium.
+ getValue("xpath=id('"+ repeat + "')/div[" + i + "]/input").
+ equals(selenium.getText("xpath=" + dataTableRowLocator + "[" + i + "]")));
+ }
+ }
}
- }
- private void clickReset() {
- String buttonId = getParentId() + FORM2_ID + RESET_BUTTON_ID;
- writeStatus("Click reset button");
- clickCommandAndWait(buttonId);
+ @Override
+ public String getTestUrl() {
+ return "pages/ajaxRepeat/ajaxRepeatTest.xhtml";
}
-
- private void clickApply() {
- String buttonId = getParentId() + FORM1_ID + APPLY_BUTTON_ID;
- clickCommandAndWait(buttonId);
- }
-
- private void assertInputValue(int row, String inputId, String value) {
- String fullInputId = getFullTableElementId(row, inputId);
- String elementValue = getValueById(fullInputId);
- Assert.assertEquals(elementValue, value);
- }
-
- private void assertOutputText(int row, String outputId, String value) {
- String fullInputId = getFullTableElementId(row, outputId);
- String elementValue = getTextById(fullInputId);
- Assert.assertEquals(elementValue, value);
- }
-
- private String getFullTableElementId(int row, String elementId) {
- return getParentId() + FORM2_ID + REPEAT_ID + ":" + row + ":" + elementId;
- }
-
}
15 years, 10 months
JBoss Rich Faces SVN: r12728 - in management/design/realWorldDemo: prototypes and 5 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: atsebro
Date: 2009-02-24 09:51:06 -0500 (Tue, 24 Feb 2009)
New Revision: 12728
Added:
management/design/realWorldDemo/prototypes/
management/design/realWorldDemo/prototypes/ver_8/
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/01_all-empty.html
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/02_create-new-shelf.html
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/03_shelf.html
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/04_create-new-album.html
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/05_album.html
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/06_1_upload.html
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/06_2_upload.html
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/06_3_upload.html
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/06_4_upload.html
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/07_create-new-album_2.html
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/08_2_album-automato.html
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/08_album-automato.html
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_01_all-empty.png
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_02_create-new-shelf.png
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_03_shelf.png
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_04_create-new-album.png
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_05_album.png
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_06_1_upload.png
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_06_2_upload.png
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_06_3_upload.png
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_06_4_upload.png
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_07_create-new-album_2.png
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_08_2_album-automato.png
management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_08_album-automato.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/002_my-tree-expand+shelfs.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/003_1_my-shelf-selected-collapsed.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/003_my-shelf-selected.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/004_my-tree-all-albums-expand.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/005_my-tree-all-photos-expand.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/006_1_album-preview_delete.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/006_2_new-album.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/006_2_new-shelf.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/006_album-preview.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/007_1_album-edit-delete.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/007_album-edit.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/008_1_photo-preview-delete.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/008_photo-preview.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/009_1_photo-edit-delete.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/009_photo-edit.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/010_1_search-panel-tag.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/010_search-panel.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/011_1_search-results-users.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/011_2_search-results-albums.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/011_3_search-resutls-photos.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/011_4_search-results-tags.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/011_search-results-no.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/012_user-preferences.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/013_slideshow.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/014_1_look-for-tagname.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/014_results-for-tagname.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/START.html
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_001_my-tree-collaps-shelfs.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_002_my-tree-expand+shelfs.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_003_1_my-shelf-selected-collapsed.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_003_my-shelf-selected.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_004_my-tree-all-albums-expand.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_005_my-tree-all-photos-expand.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_006_1_album-preview_delete.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_006_2_new-album.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_006_2_new-shelf.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_006_album-preview.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_007_1_album-edit-delete.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_007_album-edit.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_008_1_photo-preview-delete.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_008_photo-preview.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_009_1_photo-edit-delete.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_009_photo-edit.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_010_1_search-panel-tag.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_010_search-panel.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_011_1_search-results-users.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_011_2_search-results-albums.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_011_3_search-resutls-photos.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_011_4_search-results-tags.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_011_search-results-no.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_012_user-preferences.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_013_slideshow.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_014_1_look-for-tagname.png
management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_014_results-for-tagname.png
Log:
Prototype for REALWORLD DEMO
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/01_all-empty.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/8.1_branch/01_all-empty.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/8.1_branch/01_all-empty.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,35 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>01_all-empty</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_01_all-empty.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--NEW SHELF-->
+ <area href="02_create-new-shelf.html" shape="rect" coords="396,281,469,332" >
+
+ <!--NEW ALBUM-->
+ <area href="07_create-new-album_2.html" shape="rect" coords="396,373,469,424" >
+
+ <!--UPLOAD-->
+ <area href="06_3_upload.html" shape="rect" coords="396,465,469,516" >
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/02_create-new-shelf.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/8.1_branch/02_create-new-shelf.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/8.1_branch/02_create-new-shelf.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,33 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>02_create-new-shelf</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_02_create-new-shelf.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ESC-->
+ <area href="01_all-empty.html" shape="rect" coords="552,147,575,165" >
+
+ <!--CREATE-->
+ <area href="03_shelf.html" shape="rect" coords="531,191,581,213" >
+
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/03_shelf.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/8.1_branch/03_shelf.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/8.1_branch/03_shelf.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,33 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>03_shelf</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_03_shelf.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--NEW ALBUM-->
+ <area href="04_create-new-album.html" shape="rect" coords="396,351,469,402" >
+
+ <!--UPLOAD-->
+ <area href="06_4_upload.html" shape="rect" coords="396,443,469,494" >
+
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/04_create-new-album.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/8.1_branch/04_create-new-album.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/8.1_branch/04_create-new-album.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,33 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>04_create-new-album</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_04_create-new-album.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ESC-->
+ <area href="03_shelf.html" shape="rect" coords="593,147,616,165" >
+
+ <!--CREATE-->
+ <area href="05_album.html" shape="rect" coords="572,191,622,213" >
+
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/05_album.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/8.1_branch/05_album.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/8.1_branch/05_album.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,30 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>05_album</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_05_album.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--UPLOAD-->
+ <area href="06_1_upload.html" shape="rect" coords="425,394,472,431" >
+
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/06_1_upload.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/8.1_branch/06_1_upload.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/8.1_branch/06_1_upload.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,33 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>06_1_upload</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_06_1_upload.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ADD PHOTOS-->
+ <area href="" shape="rect" coords="421,406,510,431" >
+
+ <!--CANCEL-->
+ <area href="05_album.html" shape="rect" coords="781,406,870,431" >
+
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/06_2_upload.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/8.1_branch/06_2_upload.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/8.1_branch/06_2_upload.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,33 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>06_2_upload</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_06_2_upload.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ADD PHOTOS-->
+ <area href="" shape="rect" coords="421,406,510,431" >
+
+ <!--CANCEL-->
+ <area href="08_album-automato.html" shape="rect" coords="781,406,870,431" >
+
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/06_3_upload.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/8.1_branch/06_3_upload.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/8.1_branch/06_3_upload.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,33 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>06_3_upload</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_06_3_upload.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ADD PHOTOS-->
+ <area href="" shape="rect" coords="421,406,510,431" >
+
+ <!--CANCEL-->
+ <area href="08_2_album-automato.html" shape="rect" coords="781,406,870,431" >
+
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/06_4_upload.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/8.1_branch/06_4_upload.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/8.1_branch/06_4_upload.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,33 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>06_4_upload</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_06_4_upload.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ADD PHOTOS-->
+ <area href="" shape="rect" coords="421,406,510,431" >
+
+ <!--CANCEL-->
+ <area href="08_2_album-automato.html" shape="rect" coords="781,406,870,431" >
+
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/07_create-new-album_2.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/8.1_branch/07_create-new-album_2.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/8.1_branch/07_create-new-album_2.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,33 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>07_create-new-album_2</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_07_create-new-album_2.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ESC-->
+ <area href="01_all-empty.html" shape="rect" coords="593,147,616,165" >
+
+ <!--CREATE-->
+ <area href="08_album-automato.html" shape="rect" coords="572,191,622,213" >
+
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/08_2_album-automato.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/8.1_branch/08_2_album-automato.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/8.1_branch/08_2_album-automato.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,30 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>08_2_album-automato</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_08_2_album-automato.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--UPLOAD-->
+ <area href="06_3_upload.html" shape="rect" coords="425,394,472,431" >
+
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/08_album-automato.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/8.1_branch/08_album-automato.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/8.1_branch/08_album-automato.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,30 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>08_album-automato</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_08_album-automato.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--UPLOAD-->
+ <area href="06_2_upload.html" shape="rect" coords="425,394,472,431" >
+
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_01_all-empty.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_01_all-empty.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_02_create-new-shelf.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_02_create-new-shelf.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_03_shelf.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_03_shelf.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_04_create-new-album.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_04_create-new-album.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_05_album.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_05_album.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_06_1_upload.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_06_1_upload.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_06_2_upload.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_06_2_upload.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_06_3_upload.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_06_3_upload.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_06_4_upload.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_06_4_upload.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_07_create-new-album_2.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_07_create-new-album_2.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_08_2_album-automato.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_08_2_album-automato.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_08_album-automato.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/8.1_branch/map_src/map_08_album-automato.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/002_my-tree-expand+shelfs.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/002_my-tree-expand+shelfs.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/002_my-tree-expand+shelfs.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,51 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>002_my-tree-expand+shelfs</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_002_my-tree-expand+shelfs.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ALL SHELFS-->
+ <area href="START.html" shape="rect" coords="107,112,134,125" title="My all Album Shelfs">
+
+ <!--ALL ALBUMS-->
+ <area href="004_my-tree-all-albums-expand.html" shape="rect" coords="153,112,180,125" title="My all Albums">
+
+ <!--ALL PHOTOS-->
+ <area href="005_my-tree-all-photos-expand.html" shape="rect" coords="197,112,228,125" title="My all Photos">
+
+ <!--PLUS ON THE NODE-->
+ <area href="START.html" shape="rect" coords="22,176,33,187" >
+
+ <!--SHELF NAME IN THE TREE-->
+ <area href="003_my-shelf-selected.html" shape="rect" coords="35 ,176,247,188" >
+
+ <!--SHELF NAME IN WATCH AREA-->
+ <area href="003_my-shelf-selected.html" shape="rect" coords="409,221,510,237" >
+
+ <!--VIEW ALL-->
+ <area href="003_my-shelf-selected.html" shape="rect" coords="953,298,1017,314" >
+
+ <!--ALBUM IN WATCH AREA-->
+ <area href="006_album-preview.html" shape="rect" coords="590,244,674,308" >
+
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/003_1_my-shelf-selected-collapsed.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/003_1_my-shelf-selected-collapsed.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/003_1_my-shelf-selected-collapsed.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,45 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>003_1_my-shelf-selected-collapsed</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_003_1_my-shelf-selected-collapsed.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ALL SHELFS-->
+ <area href="START.html" shape="rect" coords="107,112,134,125" title="My all Album Shelfs">
+
+ <!--ALL ALBUMS-->
+ <area href="004_my-tree-all-albums-expand.html" shape="rect" coords="153,112,180,125" title="My all Albums">
+
+ <!--ALL PHOTOS-->
+ <area href="005_my-tree-all-photos-expand.html" shape="rect" coords="197,112,228,125" title="My all Photos">
+
+ <!--PLUS ON THE NODE-->
+ <area href="003_my-shelf-selected.html" shape="rect" coords="22,176,33,187" >
+
+ <!--ALBUM NAME IN TREE-->
+ <area href="006_album-preview.html" shape="rect" coords="58,232,378,244" >
+
+ <!--ALBUM NAME IN WATCH AREA-->
+ <area href="006_album-preview.html" shape="rect" coords="590,214,674,278" >
+
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/003_my-shelf-selected.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/003_my-shelf-selected.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/003_my-shelf-selected.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,45 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>003_my-shelf-selected</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_003_my-shelf-selected.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ALL SHELFS-->
+ <area href="START.html" shape="rect" coords="107,112,134,125" title="My all Album Shelfs">
+
+ <!--ALL ALBUMS-->
+ <area href="004_my-tree-all-albums-expand.html" shape="rect" coords="153,112,180,125" title="My all Albums">
+
+ <!--ALL PHOTOS-->
+ <area href="005_my-tree-all-photos-expand.html" shape="rect" coords="197,112,228,125" title="My all Photos">
+
+ <!--MINUS NODE-->
+ <area href="003_1_my-shelf-selected-collapsed.html" shape="rect" coords="22,176,33,187" >
+
+ <!--ALBUM NAME IN TREE-->
+ <area href="006_album-preview.html" shape="rect" coords="58,232,378,244" >
+
+ <!--ALBUM NAME IN WATCH AREA-->
+ <area href="006_album-preview.html" shape="rect" coords="590,214,674,278" >
+
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/004_my-tree-all-albums-expand.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/004_my-tree-all-albums-expand.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/004_my-tree-all-albums-expand.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,35 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>004_my-tree-all-albums-expand</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_004_my-tree-all-albums-expand.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ALL SHELFS-->
+ <area href="START.html" shape="rect" coords="107,112,134,125" title="My all Album Shelfs">
+
+ <!--ALL ALBUMS-->
+ <area href="004_my-tree-all-albums-expand.html" shape="rect" coords="153,112,180,125" title="My all Albums">
+
+ <!--ALL PHOTOS-->
+ <area href="005_my-tree-all-photos-expand.html" shape="rect" coords="197,112,228,125" title="My all Photos">
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/005_my-tree-all-photos-expand.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/005_my-tree-all-photos-expand.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/005_my-tree-all-photos-expand.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,38 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>005_my-tree-all-photos-expand</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_005_my-tree-all-photos-expand.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ALL SHELFS-->
+ <area href="START.html" shape="rect" coords="107,112,134,125" title="My all Album Shelfs">
+
+ <!--ALL ALBUMS-->
+ <area href="004_my-tree-all-albums-expand.html" shape="rect" coords="153,112,180,125" title="My all Albums">
+
+ <!--ALL PHOTOS-->
+ <area href="005_my-tree-all-photos-expand.html" shape="rect" coords="197,112,228,125" title="My all Photos">
+
+ <!--SLIDESHOW-->
+ <area href="013_slideshow.html" shape="rect" coords="843,226,943,243" >
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/006_1_album-preview_delete.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/006_1_album-preview_delete.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/006_1_album-preview_delete.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,29 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>006_1_album-preview_delete</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_006_1_album-preview_delete.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--YES NO-->
+ <area href="006_album-preview.html" shape="rect" coords="629,409,749,431" >
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/006_2_new-album.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/006_2_new-album.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/006_2_new-album.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,33 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>006_2_new-album</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_006_2_new-album.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--CREATE-->
+ <area href="006_album-preview.html" shape="rect" coords="573,187,621,207" title="Drives to empty NEW album">
+
+ <!--ESCAPE-->
+ <area href="006_album-preview.html" shape="rect" coords="593,142,616,160" title="Close MP=Escape MP">
+
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/006_2_new-shelf.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/006_2_new-shelf.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/006_2_new-shelf.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,34 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>006_2_new-shelf</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_006_2_new-shelf.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--CREATE-->
+ <area href="003_my-shelf-selected.html" shape="rect" coords="511,187,559,207" title="Drives to empty NEW shelf">
+
+ <!--ESCAPE-->
+ <area href="006_album-preview.html" shape="rect" coords="531,142,554,160" title="Close MP=Escape MP">
+
+
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/006_album-preview.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/006_album-preview.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/006_album-preview.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,68 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>006_album-preview</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_006_album-preview.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ALL SHELFS-->
+ <area href="START.html" shape="rect" coords="107,112,134,125" title="My all Album Shelfs">
+
+ <!--ALL ALBUMS-->
+ <area href="004_my-tree-all-albums-expand.html" shape="rect" coords="153,112,180,125" title="My all Albums">
+
+ <!--ALL PHOTOS-->
+ <area href="005_my-tree-all-photos-expand.html" shape="rect" coords="197,112,228,125" title="My all Photos">
+
+ <!--SHELF NAME IN THE TREE-->
+ <area href="003_my-shelf-selected.html" shape="rect" coords="35 ,176,247,188" >
+
+ <!--PHOTO IN THE AREA-->
+ <area href="008_photo-preview.html" shape="rect" coords="590,648,670,708" >
+
+ <!--DELETE ALBUM-->
+ <area href="006_1_album-preview_delete.html" shape="rect" coords="961,173,1000,190" >
+
+ <!--SLIDESHOW-->
+ <area href="013_slideshow.html" shape="rect" coords="844,383,942,399" >
+
+ <!--EDIT-->
+ <area href="007_album-edit.html" shape="rect" coords="929,173,955,190" >
+
+ <!--OPTIONS-->
+ <area href="010_search-panel.html" shape="rect" coords="749,126,796,138" >
+
+ <!--NEW SHELF-->
+ <area href="006_2_new-shelf.html" shape="rect" coords="271,112,298,125" >
+
+ <!--NEW ALBUM-->
+ <area href="006_2_new-album.html" shape="rect" coords="317,112,344,125" >
+
+ <!--UPLOAD-->
+ <area href="" shape="rect" coords="361,112,378,125" >
+
+ <!--USER INFO-->
+ <area href="012_user-preferences.html" shape="rect" coords="891,46,956,58" >
+
+ <!--FIND-->
+ <area href="011_search-results-no.html" shape="rect" coords="802,107,851,127" >
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/007_1_album-edit-delete.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/007_1_album-edit-delete.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/007_1_album-edit-delete.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,32 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>007_1_album-edit-delete</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_007_1_album-edit-delete.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--YES-->
+ <area href="006_album-preview.html" shape="rect" coords="629,408,679,431" >
+
+ <!--NO-->
+ <area href="007_album-edit.html" shape="rect" coords="699,408,749,431" >
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/007_album-edit.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/007_album-edit.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/007_album-edit.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,44 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>007_album-edit</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_007_album-edit.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ALL SHELFS-->
+ <area href="START.html" shape="rect" coords="107,112,134,125" title="My all Album Shelfs">
+
+ <!--ALL ALBUMS-->
+ <area href="004_my-tree-all-albums-expand.html" shape="rect" coords="153,112,180,125" title="My all Albums">
+
+ <!--ALL PHOTOS-->
+ <area href="005_my-tree-all-photos-expand.html" shape="rect" coords="197,112,228,125" title="My all Photos">
+
+ <!--SHELF NAME IN THE TREE-->
+ <area href="003_my-shelf-selected.html" shape="rect" coords="35 ,176,247,188" >
+
+ <!--SAVE CANCEL-->
+ <area href="006_album-preview.html" shape="rect" coords="495,698,597,720" >
+
+ <!--DELETE-->
+ <area href="007_1_album-edit-delete.html" shape="rect" coords="835,698,937,720" >
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/008_1_photo-preview-delete.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/008_1_photo-preview-delete.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/008_1_photo-preview-delete.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,30 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>008_1_photo-preview-delete</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_008_1_photo-preview-delete.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--YES NO-->
+ <area href="008_photo-preview.html" shape="rect" coords="618,564,738,586" >
+
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/008_photo-preview.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/008_photo-preview.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/008_photo-preview.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,73 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>008_photo-preview</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_008_photo-preview.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ALL SHELFS-->
+ <area href="START.html" shape="rect" coords="107,112,134,125" title="My all Album Shelfs">
+
+ <!--ALL ALBUMS-->
+ <area href="004_my-tree-all-albums-expand.html" shape="rect" coords="153,112,180,125" title="My all Albums">
+
+ <!--ALL PHOTOS-->
+ <area href="005_my-tree-all-photos-expand.html" shape="rect" coords="197,112,228,125" title="My all Photos">
+
+ <!--SHELF NAME IN THE TREE-->
+ <area href="003_my-shelf-selected.html" shape="rect" coords="35 ,176,247,188" >
+
+ <!--ALBUM NAME IN WATCH AREA-->
+ <area href="006_album-preview.html" shape="rect" coords="408,168,912,190" >
+
+ <!--SLIDE SHOW-->
+ <area href="013_slideshow.html" shape="rect" coords="822,243,919,259" >
+
+ <!--1000x750-->
+ <area href="" shape="rect" coords="919,371,969,387" title="TBD.008_2_photo-preview-1000x750.html">
+
+ <!--DOWNLOAD ORIGINAL-->
+ <area href="" shape="rect" coords="919,408,969,438" title="Opens 'Save as' window">
+
+ <!--EDIT PHOTO-->
+ <area href="009_photo-edit.html" shape="rect" coords="919,692,958,708" >
+
+ <!--DELETE PHOTO-->
+ <area href="008_1_photo-preview-delete.html" shape="rect" coords="919,716,958,732" >
+
+ <!--RICHFACES TAG-->
+ <area href="014_1_look-for-tagname.html" shape="rect" coords="702,915,757,931" title="TBD.tag-preview">
+
+ <!--ALL TAGS-->
+ <area href="" shape="rect" coords="874,916,929,932" title="TBD.008_3_photo-preview-alltags.html">
+
+ <!--USERPIC-->
+ <area href="" shape="rect" coords="412,1023,462,1073" title="TBD.tree-another-user.html">
+
+ <!--USERNAME-->
+ <area href="" shape="rect" coords="469,1019,534,1035" title="TBD.tree-another-user.html">
+
+ <!--DELETE COMMENT-->
+ <area href="" shape="rect" coords="859,1142,961,1158" title="TBD.008_4_photo-preview-delcom.html">
+
+ <!--ADD COMMENT-->
+ <area href="" shape="rect" coords="463,1227,570,1251" title="TBD.008_5_photo-preview-addcom.html">
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/009_1_photo-edit-delete.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/009_1_photo-edit-delete.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/009_1_photo-edit-delete.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,30 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>009_1_photo-edit-delete</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_009_1_photo-edit-delete.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--YES NO-->
+ <area href="009_photo-edit.html" shape="rect" coords="618,564,738,586" >
+
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/009_photo-edit.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/009_photo-edit.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/009_photo-edit.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,42 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>009_photo-edit</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_009_photo-edit.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ALL SHELFS-->
+ <area href="START.html" shape="rect" coords="107,112,134,125" title="My all Album Shelfs">
+
+ <!--ALL ALBUMS-->
+ <area href="004_my-tree-all-albums-expand.html" shape="rect" coords="153,112,180,125" title="My all Albums">
+
+ <!--ALL PHOTOS-->
+ <area href="005_my-tree-all-photos-expand.html" shape="rect" coords="197,112,228,125" title="My all Photos">
+
+ <!--SAVE CANCEL-->
+ <area href="008_photo-preview.html" shape="rect" coords="482,1322,585,1342" >
+
+ <!--DELETE-->
+ <area href="009_1_photo-edit-delete.html" shape="rect" coords="764,1322,854,1342" >
+
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/010_1_search-panel-tag.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/010_1_search-panel-tag.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/010_1_search-panel-tag.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,29 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>010_1_search-panel-tag</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_010_1_search-panel-tag.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--CHECK-->
+ <area href="010_search-panel.html" shape="rect" coords="715,189,731,205" >
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/010_search-panel.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/010_search-panel.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/010_search-panel.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,35 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>010_search-panel</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_010_search-panel.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--OPTIONS-->
+ <area href="006_album-preview.html" shape="rect" coords="749,126,796,138" >
+
+ <!--CHECK-->
+ <area href="010_1_search-panel-tag.html" shape="rect" coords="715,189,731,205" >
+
+ <!--FIND-->
+ <area href="011_search-results-no.html" shape="rect" coords="802,107,851,127" >
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/011_1_search-results-users.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/011_1_search-results-users.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/011_1_search-results-users.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,43 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>011_1_search-results-users</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_011_1_search-results-users.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ALL SHELFS-->
+ <area href="START.html" shape="rect" coords="107,112,134,125" title="My all Album Shelfs">
+
+ <!--ALL ALBUMS-->
+ <area href="004_my-tree-all-albums-expand.html" shape="rect" coords="153,112,180,125" title="My all Albums">
+
+ <!--ALL PHOTOS-->
+ <area href="005_my-tree-all-photos-expand.html" shape="rect" coords="197,112,228,125" title="My all Photos">
+
+ <!--ALBUMS-->
+ <area href="011_2_search-results-albums.html" shape="rect" coords="632,174,691,189" >
+
+ <!--PHOTOS-->
+ <area href="011_3_search-resutls-photos.html" shape="rect" coords="705,174,764,189" >
+
+ <!--TAGS-->
+ <area href="011_4_search-results-tags.html" shape="rect" coords="777,174,818,189" >
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/011_2_search-results-albums.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/011_2_search-results-albums.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/011_2_search-results-albums.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,43 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>011_2_search-results-albums</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_011_2_search-results-albums.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ALL SHELFS-->
+ <area href="START.html" shape="rect" coords="107,112,134,125" title="My all Album Shelfs">
+
+ <!--ALL ALBUMS-->
+ <area href="004_my-tree-all-albums-expand.html" shape="rect" coords="153,112,180,125" title="My all Albums">
+
+ <!--ALL PHOTOS-->
+ <area href="005_my-tree-all-photos-expand.html" shape="rect" coords="197,112,228,125" title="My all Photos">
+
+ <!--USERS-->
+ <area href="011_1_search-results-users.html" shape="rect" coords="574,174,617,189" >
+
+ <!--PHOTOS-->
+ <area href="011_3_search-resutls-photos.html" shape="rect" coords="705,174,764,189" >
+
+ <!--TAGS-->
+ <area href="011_4_search-results-tags.html" shape="rect" coords="777,174,818,189" >
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/011_3_search-resutls-photos.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/011_3_search-resutls-photos.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/011_3_search-resutls-photos.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,44 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>011_3_search-resutls-photos</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_011_3_search-resutls-photos.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ALL SHELFS-->
+ <area href="START.html" shape="rect" coords="107,112,134,125" title="My all Album Shelfs">
+
+ <!--ALL ALBUMS-->
+ <area href="004_my-tree-all-albums-expand.html" shape="rect" coords="153,112,180,125" title="My all Albums">
+
+ <!--ALL PHOTOS-->
+ <area href="005_my-tree-all-photos-expand.html" shape="rect" coords="197,112,228,125" title="My all Photos">
+
+ <!--USERS-->
+ <area href="011_1_search-results-users.html" shape="rect" coords="574,174,617,189" >
+
+ <!--ALBUMS-->
+ <area href="011_2_search-results-albums.html" shape="rect" coords="632,174,691,189" >
+
+ <!--TAGS-->
+ <area href="011_4_search-results-tags.html" shape="rect" coords="777,174,818,189" >
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/011_4_search-results-tags.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/011_4_search-results-tags.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/011_4_search-results-tags.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,47 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>011_4_search-results-tags</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_011_4_search-results-tags.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ALL SHELFS-->
+ <area href="START.html" shape="rect" coords="107,112,134,125" title="My all Album Shelfs">
+
+ <!--ALL ALBUMS-->
+ <area href="004_my-tree-all-albums-expand.html" shape="rect" coords="153,112,180,125" title="My all Albums">
+
+ <!--ALL PHOTOS-->
+ <area href="005_my-tree-all-photos-expand.html" shape="rect" coords="197,112,228,125" title="My all Photos">
+
+ <!--USERS-->
+ <area href="011_1_search-results-users.html" shape="rect" coords="574,174,617,189" >
+
+ <!--PHOTOS-->
+ <area href="011_3_search-resutls-photos.html" shape="rect" coords="705,174,764,189" >
+
+ <!--ALBUMS-->
+ <area href="011_2_search-results-albums.html" shape="rect" coords="632,174,691,189" >
+
+ <!--TAGNAME-->
+ <area href="014_results-for-tagname.html" shape="rect" coords="409,232,489,247" >
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/011_search-results-no.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/011_search-results-no.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/011_search-results-no.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,39 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>011_search-results-no</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_011_search-results-no.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ALL SHELFS-->
+ <area href="START.html" shape="rect" coords="107,112,134,125" title="My all Album Shelfs">
+
+ <!--ALL ALBUMS-->
+ <area href="004_my-tree-all-albums-expand.html" shape="rect" coords="153,112,180,125" title="My all Albums">
+
+ <!--ALL PHOTOS-->
+ <area href="005_my-tree-all-photos-expand.html" shape="rect" coords="197,112,228,125" title="My all Photos">
+
+ <!--FIND-->
+ <area href="011_1_search-results-users.html" shape="rect" coords="802,107,851,127" >
+
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/012_user-preferences.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/012_user-preferences.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/012_user-preferences.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,39 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>012_user-preferences</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_012_user-preferences.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ALL SHELFS-->
+ <area href="START.html" shape="rect" coords="107,112,134,125" title="My all Album Shelfs">
+
+ <!--ALL ALBUMS-->
+ <area href="004_my-tree-all-albums-expand.html" shape="rect" coords="153,112,180,125" title="My all Albums">
+
+ <!--ALL PHOTOS-->
+ <area href="005_my-tree-all-photos-expand.html" shape="rect" coords="197,112,228,125" title="My all Photos">
+
+ <!--ALL PHOTOS-->
+ <area href="011_tree-photos.html" shape="rect" coords="247,88,284,108" title="My all Photos">
+
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/013_slideshow.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/013_slideshow.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/013_slideshow.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,29 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>013_slideshow</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_013_slideshow.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--EXIT-->
+ <area href="008_photo-preview.html" shape="rect" coords="387,56,641,86" title="Controls appear on mouse move or press any keyboard key">
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/014_1_look-for-tagname.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/014_1_look-for-tagname.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/014_1_look-for-tagname.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,38 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>014_1_look-for-tagname</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_014_1_look-for-tagname.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ALL SHELFS-->
+ <area href="START.html" shape="rect" coords="107,112,134,125" title="My all Album Shelfs">
+
+ <!--ALL ALBUMS-->
+ <area href="004_my-tree-all-albums-expand.html" shape="rect" coords="153,112,180,125" title="My all Albums">
+
+ <!--ALL PHOTOS-->
+ <area href="005_my-tree-all-photos-expand.html" shape="rect" coords="197,112,228,125" title="My all Photos">
+
+ <!--BACK-->
+ <area href="008_photo-preview.html" shape="rect" coords="405,175,578,191" >
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/014_results-for-tagname.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/014_results-for-tagname.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/014_results-for-tagname.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,38 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>014_results-for-tagname</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_014_results-for-tagname.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ALL SHELFS-->
+ <area href="START.html" shape="rect" coords="107,112,134,125" title="My all Album Shelfs">
+
+ <!--ALL ALBUMS-->
+ <area href="004_my-tree-all-albums-expand.html" shape="rect" coords="153,112,180,125" title="My all Albums">
+
+ <!--ALL PHOTOS-->
+ <area href="005_my-tree-all-photos-expand.html" shape="rect" coords="197,112,228,125" title="My all Photos">
+
+ <!--BACK-->
+ <area href="011_4_search-results-tags.html" shape="rect" coords="405,174,556,191" >
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/START.html
===================================================================
--- management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/START.html (rev 0)
+++ management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/START.html 2009-02-24 14:51:06 UTC (rev 12728)
@@ -0,0 +1,50 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title>001_my-tree-collaps-shelfs</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=win-1251" />
+ <style type="text/css">
+body {
+ margin:0;
+}
+
+img {
+ border:0;
+}
+</style>
+ </head>
+
+ <body>
+ <img src="map_src/map_001_my-tree-collaps-shelfs.png" usemap="#png" />
+ <map id="png" name="png">
+
+ <!--ALL SHELFS-->
+ <area href="START.html" shape="rect" coords="107,112,134,125" title="My all Album Shelfs">
+
+ <!--ALL ALBUMS-->
+ <area href="004_my-tree-all-albums-expand.html" shape="rect" coords="153,112,180,125" title="My all Albums">
+
+ <!--ALL PHOTOS-->
+ <area href="005_my-tree-all-photos-expand.html" shape="rect" coords="197,112,228,125" title="My all Photos">
+
+ <!--PLUS ON THE NODE-->
+ <area href="002_my-tree-expand+shelfs.html" shape="rect" coords="22,176,33,187" >
+
+ <!--SHELF NAME IN THE TREE-->
+ <area href="003_my-shelf-selected.html" shape="rect" coords="35 ,176,247,188" >
+
+ <!--SHELF NAME IN WATCH AREA-->
+ <area href="003_my-shelf-selected.html" shape="rect" coords="409,221,510,237" >
+
+ <!--VIEW ALL-->
+ <area href="003_my-shelf-selected.html" shape="rect" coords="953,298,1017,314" >
+
+ <!--ALBUM IN WATCH AREA-->
+ <area href="006_album-preview.html" shape="rect" coords="590,244,674,308" >
+
+ </map>
+
+ </body>
+</html>
+
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_001_my-tree-collaps-shelfs.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_001_my-tree-collaps-shelfs.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_002_my-tree-expand+shelfs.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_002_my-tree-expand+shelfs.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_003_1_my-shelf-selected-collapsed.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_003_1_my-shelf-selected-collapsed.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_003_my-shelf-selected.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_003_my-shelf-selected.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_004_my-tree-all-albums-expand.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_004_my-tree-all-albums-expand.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_005_my-tree-all-photos-expand.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_005_my-tree-all-photos-expand.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_006_1_album-preview_delete.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_006_1_album-preview_delete.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_006_2_new-album.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_006_2_new-album.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_006_2_new-shelf.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_006_2_new-shelf.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_006_album-preview.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_006_album-preview.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_007_1_album-edit-delete.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_007_1_album-edit-delete.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_007_album-edit.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_007_album-edit.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_008_1_photo-preview-delete.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_008_1_photo-preview-delete.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_008_photo-preview.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_008_photo-preview.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_009_1_photo-edit-delete.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_009_1_photo-edit-delete.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_009_photo-edit.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_009_photo-edit.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_010_1_search-panel-tag.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_010_1_search-panel-tag.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_010_search-panel.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_010_search-panel.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_011_1_search-results-users.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_011_1_search-results-users.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_011_2_search-results-albums.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_011_2_search-results-albums.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_011_3_search-resutls-photos.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_011_3_search-resutls-photos.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_011_4_search-results-tags.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_011_4_search-results-tags.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_011_search-results-no.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_011_search-results-no.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_012_user-preferences.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_012_user-preferences.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_013_slideshow.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_013_slideshow.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_014_1_look-for-tagname.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_014_1_look-for-tagname.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_014_results-for-tagname.png
===================================================================
(Binary files differ)
Property changes on: management/design/realWorldDemo/prototypes/ver_8/ver_8_basic/map_src/map_014_results-for-tagname.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
15 years, 10 months
JBoss Rich Faces SVN: r12727 - in trunk/test-applications/realworld/web/src/main: java/org/richfaces/realworld/tagClound and 4 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: andrei_exadel
Date: 2009-02-24 08:57:56 -0500 (Tue, 24 Feb 2009)
New Revision: 12727
Added:
trunk/test-applications/realworld/web/src/main/java/org/richfaces/realworld/tagClound/
trunk/test-applications/realworld/web/src/main/java/org/richfaces/realworld/tagClound/ITagCloudProvider.java
trunk/test-applications/realworld/web/src/main/java/org/richfaces/realworld/tagClound/TagCloudBean.java
trunk/test-applications/realworld/web/src/main/webapp/includes/tagCloud/
trunk/test-applications/realworld/web/src/main/webapp/includes/tagCloud/tagCloud.xhtml
Modified:
trunk/test-applications/realworld/web/src/main/webapp/layout/template.xhtml
trunk/test-applications/realworld/web/src/main/webapp/stylesheet/realworld.css
Log:
RF-6426
Added: trunk/test-applications/realworld/web/src/main/java/org/richfaces/realworld/tagClound/ITagCloudProvider.java
===================================================================
--- trunk/test-applications/realworld/web/src/main/java/org/richfaces/realworld/tagClound/ITagCloudProvider.java (rev 0)
+++ trunk/test-applications/realworld/web/src/main/java/org/richfaces/realworld/tagClound/ITagCloudProvider.java 2009-02-24 13:57:56 UTC (rev 12727)
@@ -0,0 +1,18 @@
+/**
+ *
+ */
+package org.richfaces.realworld.tagClound;
+
+import java.util.Map;
+
+/**
+ * Interface defines base method to get scope of tags
+ * @author Andrey Markavtsov
+ *
+ */
+public interface ITagCloudProvider {
+
+ /** Return map of tags. Key - tag label. value - rank. */
+ Map<String, Integer> getTags();
+
+}
Added: trunk/test-applications/realworld/web/src/main/java/org/richfaces/realworld/tagClound/TagCloudBean.java
===================================================================
--- trunk/test-applications/realworld/web/src/main/java/org/richfaces/realworld/tagClound/TagCloudBean.java (rev 0)
+++ trunk/test-applications/realworld/web/src/main/java/org/richfaces/realworld/tagClound/TagCloudBean.java 2009-02-24 13:57:56 UTC (rev 12727)
@@ -0,0 +1,94 @@
+/**
+ *
+ */
+package org.richfaces.realworld.tagClound;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.faces.event.ActionEvent;
+
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Out;
+import org.jboss.seam.annotations.Scope;
+
+
+/**
+ * Tag cloud backing bean
+ * @author Andrey Markavtsov
+ *
+ */
+
+@Name("tagCloudBean")
+(a)Scope(ScopeType.CONVERSATION)
+public class TagCloudBean {
+
+ /** Min possible rank for tag */
+ static final int MIN_RANK = 0;
+
+ /** Max possible rank for tag */
+ static final int MAX_RANK = 100;
+
+ /** Scope of existed css classes for each rank. Should be defined ordered ASC by rank */
+ static final String [] TAG_CSS_CLASSSES = new String []
+ {"tag-cloud-rank1", "tag-cloud-rank2",
+ "tag-cloud-rank3", "tag-cloud-rank4",
+ "tag-cloud-rank5", "tag-cloud-rank6",
+ "tag-cloud-rank7" } ;
+
+ /** Count of possible ranks' css classes */
+ static final int TAG_RANK_LEVELS_COUNT = TAG_CSS_CLASSSES.length;
+
+ /** Defines the step to the neighbouring rank */
+ int RANK_LEVEL_STEP = (MAX_RANK ) / TAG_RANK_LEVELS_COUNT;;
+
+ //@In
+ //ITagCloudProvider cloudProvider;
+
+
+ /**
+ * @return map of tags
+ */
+ @Out
+ public Map<String, Integer> getTags() {
+ /*if (cloudProvider == null) {
+ throw new NullPointerException("Cloud tag provider is null");
+ }*/
+ //return cloudProvider.getTags();
+ Map<String,Integer> tags = new HashMap<String,Integer>();
+ tags.put("Tag1", 12);
+ tags.put("Tag2", 65);
+ tags.put("Tag3", 89);
+ tags.put("Tag4", 39);
+ tags.put("Tag5", 7);
+ tags.put("Tag6", 59);
+ tags.put("Tag7", 71);
+ tags.put("Tag8", 85);
+ tags.put("Tag9", 29);
+ return tags;
+
+ }
+
+
+ /**
+ * Calculates css class name for tag with rank defined
+ * @param rank - tags rank
+ * @return css class name
+ */
+ public String getTagCssClass(Integer rank) {
+ int i = rank / RANK_LEVEL_STEP;
+ return TAG_CSS_CLASSSES[i];
+ }
+
+
+
+ /**
+ * Action listener for tag click
+ * @param event
+ */
+ public void processTagClick(ActionEvent event) {
+ // TODO: implement this
+ }
+
+}
Added: trunk/test-applications/realworld/web/src/main/webapp/includes/tagCloud/tagCloud.xhtml
===================================================================
--- trunk/test-applications/realworld/web/src/main/webapp/includes/tagCloud/tagCloud.xhtml (rev 0)
+++ trunk/test-applications/realworld/web/src/main/webapp/includes/tagCloud/tagCloud.xhtml 2009-02-24 13:57:56 UTC (rev 12727)
@@ -0,0 +1,17 @@
+<ui:composition xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:ui="http://java.sun.com/jsf/facelets"
+ xmlns:h="http://java.sun.com/jsf/html"
+ xmlns:f="http://java.sun.com/jsf/core"
+ xmlns:a4j="http://richfaces.org/a4j"
+ xmlns:c="http://java.sun.com/jstl/core"
+ xmlns:rich="http://richfaces.org/rich">
+ <a4j:outputPanel layout="block" style="width: 200px">
+ <h:form>
+ <c:forEach items="#{tagCloudBean.tags}" var="tag">
+ <a4j:commandLink value=" #{tag.key}"
+ actionListener="#{tagCloudBean.processTagClick(tag.key)}"
+ styleClass="#{tagCloudBean.getTagCssClass(tag.value)}"></a4j:commandLink>
+ </c:forEach>
+ </h:form>
+ </a4j:outputPanel>
+</ui:composition>
\ No newline at end of file
Modified: trunk/test-applications/realworld/web/src/main/webapp/layout/template.xhtml
===================================================================
(Binary files differ)
Modified: trunk/test-applications/realworld/web/src/main/webapp/stylesheet/realworld.css
===================================================================
--- trunk/test-applications/realworld/web/src/main/webapp/stylesheet/realworld.css 2009-02-24 13:37:54 UTC (rev 12726)
+++ trunk/test-applications/realworld/web/src/main/webapp/stylesheet/realworld.css 2009-02-24 13:57:56 UTC (rev 12727)
@@ -244,4 +244,52 @@
z-index: 3;
left: 50%;
top: 40px;
-}
\ No newline at end of file
+}
+
+.tag-cloud-rank {
+ text-decoration: none;
+}
+
+.tag-cloud-rank1 {
+ text-decoration: none;
+ font-size: 8px;
+ color: gray;
+}
+
+.tag-cloud-rank2 {
+ text-decoration: none;
+ font-size: 9px;
+ color: yellow;
+}
+
+.tag-cloud-rank3 {
+ text-decoration: none;
+ font-size: 10px;
+ color: blue;
+}
+
+.tag-cloud-rank4 {
+ text-decoration: none;
+ font-size: 11px;
+ color: green;
+}
+
+.tag-cloud-rank5 {
+ text-decoration: none;
+ font-size: 12px;
+ color: brown;
+}
+
+.tag-cloud-rank6 {
+ text-decoration: none;
+ font-size: 14px;
+ color: red;
+}
+
+.tag-cloud-rank7 {
+ text-decoration: none;
+ font-size: 18px;
+ color: black;
+}
+
+
15 years, 10 months
JBoss Rich Faces SVN: r12726 - Plan and 1 other directory.
by richfaces-svn-commits@lists.jboss.org
Author: tkuprevich
Date: 2009-02-24 08:37:54 -0500 (Tue, 24 Feb 2009)
New Revision: 12726
Modified:
trunk/test-applications/qa/Test Plan/TestPlan-RF.doc
Log:
Modified: trunk/test-applications/qa/Test Plan/TestPlan-RF.doc
===================================================================
(Binary files differ)
15 years, 10 months
JBoss Rich Faces SVN: r12725 - trunk/ui/componentControl/src/main/java/org/richfaces/component.
by richfaces-svn-commits@lists.jboss.org
Author: Alex.Kolonitsky
Date: 2009-02-24 03:56:34 -0500 (Tue, 24 Feb 2009)
New Revision: 12725
Modified:
trunk/ui/componentControl/src/main/java/org/richfaces/component/UIComponentControl.java
Log:
https://jira.jboss.org/jira/browse/RF-6275
Modified: trunk/ui/componentControl/src/main/java/org/richfaces/component/UIComponentControl.java
===================================================================
--- trunk/ui/componentControl/src/main/java/org/richfaces/component/UIComponentControl.java 2009-02-24 00:18:13 UTC (rev 12724)
+++ trunk/ui/componentControl/src/main/java/org/richfaces/component/UIComponentControl.java 2009-02-24 08:56:34 UTC (rev 12725)
@@ -215,7 +215,7 @@
public boolean isDisableDefault() {
if (this.disableDefaultSet) {
- return getEvent().equalsIgnoreCase(ON_CONTEXT_MENU);
+ return ON_CONTEXT_MENU.equalsIgnoreCase(getEvent());
}
ValueExpression ve = getValueExpression(DISABLE_DEFAULT);
@@ -237,4 +237,21 @@
this.disableDefault = disableDefault;
this.disableDefaultSet = true;
}
+
+ @Override
+ public Object saveState(FacesContext context) {
+ Object[] state = new Object[9];
+ state[0] = super.saveState(context);
+ state[1] = disableDefault;
+ state[2] = disableDefaultSet;
+ return state;
+ }
+
+ @Override
+ public void restoreState(FacesContext context, Object state) {
+ Object[] states = (Object[]) state;
+ super.restoreState(context, states[0]);
+ disableDefault = (Boolean) states[1];
+ disableDefaultSet = (Boolean) states[2];
+ }
}
15 years, 10 months
JBoss Rich Faces SVN: r12724 - in trunk/sandbox/samples/layout-sample/src/main/webapp: WEB-INF and 1 other directory.
by richfaces-svn-commits@lists.jboss.org
Author: SergeySmirnov
Date: 2009-02-23 19:18:13 -0500 (Mon, 23 Feb 2009)
New Revision: 12724
Added:
trunk/sandbox/samples/layout-sample/src/main/webapp/WEB-INF/
trunk/sandbox/samples/layout-sample/src/main/webapp/WEB-INF/faces-config.xml
trunk/sandbox/samples/layout-sample/src/main/webapp/WEB-INF/lib/
trunk/sandbox/samples/layout-sample/src/main/webapp/WEB-INF/web.xml
Log:
Added: trunk/sandbox/samples/layout-sample/src/main/webapp/WEB-INF/faces-config.xml
===================================================================
--- trunk/sandbox/samples/layout-sample/src/main/webapp/WEB-INF/faces-config.xml (rev 0)
+++ trunk/sandbox/samples/layout-sample/src/main/webapp/WEB-INF/faces-config.xml 2009-02-24 00:18:13 UTC (rev 12724)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
+ "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
+<faces-config>
+ <managed-bean>
+ <managed-bean-name>bean</managed-bean-name>
+ <managed-bean-class>org.richfaces.sandbox.samples.Bean</managed-bean-class>
+ <managed-bean-scope>request</managed-bean-scope>
+ </managed-bean>
+</faces-config>
Property changes on: trunk/sandbox/samples/layout-sample/src/main/webapp/WEB-INF/faces-config.xml
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: trunk/sandbox/samples/layout-sample/src/main/webapp/WEB-INF/web.xml
===================================================================
--- trunk/sandbox/samples/layout-sample/src/main/webapp/WEB-INF/web.xml (rev 0)
+++ trunk/sandbox/samples/layout-sample/src/main/webapp/WEB-INF/web.xml 2009-02-24 00:18:13 UTC (rev 12724)
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
+ <display-name>Archetype Created Web Application</display-name>
+ <context-param>
+ <param-name>javax.faces.CONFIG_FILES</param-name>
+ <param-value>/WEB-INF/faces-config.xml</param-value>
+ </context-param>
+ <context-param>
+ <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
+ <param-value>server</param-value>
+ </context-param>
+
+ <context-param>
+ <param-name>org.richfaces.SKIN</param-name>
+ <param-value>blueSky</param-value>
+ </context-param>
+ <context-param>
+ <param-name>org.ajax4jsf.COMPRESS_SCRIPT</param-name>
+ <param-value>false</param-value>
+ </context-param>
+<!--context-param>
+ <param-name>org.richfaces.LoadStyleStrategy</param-name>
+ <param-value>NONE</param-value>
+</context-param-->
+
+ <!--
+ -->
+ <filter>
+ <display-name>Ajax4jsf Filter</display-name>
+ <filter-name>ajax4jsf</filter-name>
+ <filter-class>org.ajax4jsf.Filter</filter-class>
+ </filter>
+ <filter-mapping>
+ <filter-name>ajax4jsf</filter-name>
+ <servlet-name>Faces Servlet</servlet-name>
+ <dispatcher>REQUEST</dispatcher>
+ <dispatcher>FORWARD</dispatcher>
+ <dispatcher>INCLUDE</dispatcher>
+ <dispatcher>ERROR</dispatcher>
+ </filter-mapping>
+ <servlet>
+ <servlet-name>Faces Servlet</servlet-name>
+ <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
+ <load-on-startup>1</load-on-startup>
+ </servlet>
+ <servlet-mapping>
+ <servlet-name>Faces Servlet</servlet-name>
+ <url-pattern>/faces/*</url-pattern>
+ </servlet-mapping>
+ <servlet-mapping>
+ <servlet-name>Faces Servlet</servlet-name>
+ <url-pattern>*.jsf</url-pattern>
+ </servlet-mapping>
+ <login-config>
+ <auth-method>BASIC</auth-method>
+ </login-config>
+</web-app>
Property changes on: trunk/sandbox/samples/layout-sample/src/main/webapp/WEB-INF/web.xml
___________________________________________________________________
Name: svn:mime-type
+ text/xml
15 years, 10 months