[kune-commits] r1625 - in trunk: . img/screenshots script src/main/java/cc/kune src/main/java/cc/kune/core/client/i18n src/main/java/cc/kune/gspace/client/i18n src/main/resources src/test/java/cc/kune/selenium src/test/java/cc/kune/selenium/chat src/test/java/cc/kune/selenium/login
Vicente J. Ruiz Jurado
vjrj_ at ourproject.org
Thu Nov 24 01:49:46 CET 2011
Author: vjrj_
Date: 2011-11-24 01:49:46 +0100 (Thu, 24 Nov 2011)
New Revision: 1625
Added:
trunk/COPYRIGHT.txt
trunk/img/screenshots/kune-register.png
trunk/src/main/java/cc/kune/core/client/i18n/KuneConstants_fr.properties
Modified:
trunk/CREDITS
trunk/pom.xml
trunk/script/recordScreenCast.sh
trunk/src/main/java/cc/kune/Kune.gwt.xml
trunk/src/main/java/cc/kune/core/client/i18n/KuneConstants.java
trunk/src/main/java/cc/kune/core/client/i18n/KuneConstants.properties
trunk/src/main/java/cc/kune/core/client/i18n/KuneConstants_es.properties
trunk/src/main/java/cc/kune/gspace/client/i18n/I18nTranslatorPanel.java
trunk/src/main/resources/TestConstants_en.properties
trunk/src/main/resources/TestConstants_es.properties
trunk/src/test/java/cc/kune/selenium/CustomWebDriverEventListener.java
trunk/src/test/java/cc/kune/selenium/KuneSeleniumDefaults.java
trunk/src/test/java/cc/kune/selenium/SeleniumConf.java
trunk/src/test/java/cc/kune/selenium/SeleniumConstants.java
trunk/src/test/java/cc/kune/selenium/SeleniumUtils.java
trunk/src/test/java/cc/kune/selenium/chat/ChatPageObject.java
trunk/src/test/java/cc/kune/selenium/login/RegisterPageObject.java
trunk/src/test/java/cc/kune/selenium/login/RegisterSeleniumTests.java
Log:
NEW - # 127: Generate some screencast while doing automate testing
http://kune.ourproject.org/issues/ticket/127
NEW - # 163: Empty messages in Views where not logged shoul be different to logged
http://kune.ourproject.org/issues/ticket/163
Added: trunk/COPYRIGHT.txt
===================================================================
--- trunk/COPYRIGHT.txt (rev 0)
+++ trunk/COPYRIGHT.txt 2011-11-24 00:49:46 UTC (rev 1625)
@@ -0,0 +1 @@
+link COPYRIGHT
\ No newline at end of file
Property changes on: trunk/COPYRIGHT.txt
___________________________________________________________________
Name: svn:special
+ *
Modified: trunk/CREDITS
===================================================================
--- trunk/CREDITS 2011-11-23 21:49:19 UTC (rev 1624)
+++ trunk/CREDITS 2011-11-24 00:49:46 UTC (rev 1625)
@@ -24,6 +24,6 @@
* Daniel Jiménez for the initial help and coordination
* Johnattan Rupire, William Austen Bradbury and Rana Hassan for their web contributions and
translations
-* Bastien Guerry for his French translation and for his ideas, feedback, support, inspiration
+* Bastien Guerry for his French translation and his ideas, feedback, support and inspiration
* and <URL:http://ourproject.org> and again <URL:http://xsto.info> and
<URL:http://iepala.es> for sharing with us their resources
Added: trunk/img/screenshots/kune-register.png
===================================================================
(Binary files differ)
Property changes on: trunk/img/screenshots/kune-register.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2011-11-23 21:49:19 UTC (rev 1624)
+++ trunk/pom.xml 2011-11-24 00:49:46 UTC (rev 1625)
@@ -1171,12 +1171,12 @@
<plugin>
<groupId>org.dstovall</groupId>
<artifactId>onejar-maven-plugin</artifactId>
- <version>1.4.4</version>
+ <version>1.4.4-SNAPSHOT</version>
<executions>
<execution>
<configuration>
<!-- Optional -->
- <!-- <onejarVersion>0.97</onejarVersion> -->
+ <onejarVersion>0.97</onejarVersion>
<!-- Optional, use only if you need to include native libraries
(dll's) -->
<!-- <binlibs> -->
Modified: trunk/script/recordScreenCast.sh
===================================================================
--- trunk/script/recordScreenCast.sh 2011-11-23 21:49:19 UTC (rev 1624)
+++ trunk/script/recordScreenCast.sh 2011-11-24 00:49:46 UTC (rev 1625)
@@ -6,21 +6,15 @@
RHEIGHT=649
#SEARCH=Eurosur
#SEARCH=Jane
-SEARCH=Firefox
-xdotool search --sync --onlyvisible "$SEARCH" windowactivate
-xdotool key --clearmodifiers alt+F5
-xdotool search --sync --onlyvisible "$SEARCH" windowsize %@ $WIDTH $HEIGHT
-xdotool search --onlyvisible --name "$SEARCH" windowmove %@ 0 0
+
+# Not needed, now firefox webdriver can be resized
+#SEARCH=Firefox
+#xdotool search --sync --onlyvisible "$SEARCH" windowactivate
+#xdotool key --clearmodifiers alt+F5
+#xdotool search --sync --onlyvisible "$SEARCH" windowsize %@ $WIDTH $HEIGHT
+#xdotool search --onlyvisible --name "$SEARCH" windowmove %@ 0 0
+
if [[ $? -eq 0 ]]
then
recordmydesktop -x 0 -y 83 --width $RWIDTH --height $RHEIGHT --fps 25 --no-sound -o kune-screencast.ogv
fi
-
-#WID=`xdotool search --onlyvisible --name "$1" | head -1`
-#xdotool search --onlyvisible --name "Firefox" windowmove %@ 0 0
-#recordmydesktop --windowid $WID --fps 25 --no-sound -o foo.ogv
-#xdotool search --onlyvisible "gtk-recordMyDesktop" windowmove %@ 1000 1000
-#WID=`xdotool search --class "$1" | head -1`
-#WID=`xdotool search --onlyvisible --maxdepth 2 --class "$1 "`
-#xdotool windowmove $WID 0 0
-#xdotool windowsize $WID 806 707
Modified: trunk/src/main/java/cc/kune/Kune.gwt.xml
===================================================================
--- trunk/src/main/java/cc/kune/Kune.gwt.xml 2011-11-23 21:49:19 UTC (rev 1624)
+++ trunk/src/main/java/cc/kune/Kune.gwt.xml 2011-11-24 00:49:46 UTC (rev 1625)
@@ -58,6 +58,7 @@
<!-- I18n ===================================================== -->
<extend-property name="locale" values="en" />
<extend-property name="locale" values="es" />
+ <extend-property name="locale" values="fr" />
<!-- Hardcoded locale (to override emite italian support) ===== -->
<!-- <set-property name="locale" value="en" /> -->
<!-- Hardcoded log level ====================================== -->
Modified: trunk/src/main/java/cc/kune/core/client/i18n/KuneConstants.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/i18n/KuneConstants.java 2011-11-23 21:49:19 UTC (rev 1624)
+++ trunk/src/main/java/cc/kune/core/client/i18n/KuneConstants.java 2011-11-24 00:49:46 UTC (rev 1625)
@@ -32,6 +32,8 @@
String addGadget();
+ String addNewMember();
+
String aDecentralizedWayToOfferOrAskForServicesAndGoodsToYourGroupsOrToAnyoneBarteringMeansTheExchangeOfGoo();
String administrators();
@@ -216,6 +218,12 @@
String doubleClickToOpen();
+ String doubleClickToOpenDragAndDropToMoveThisToAnotherPlace();
+
+ String doYouWantToAddParamAsAMemberOfParam();
+
+ String doYouWantToAddParamToYourContacts();
+
String doYouWantToJoinThisGroup();
String doYouWantToWriteAMessageToTheAdministratorsOfThisGroup();
@@ -244,6 +252,8 @@
String error();
+ String errorConfiguringTheTool();
+
String errorSettingTheLogo();
String errorsInfo();
@@ -346,6 +356,8 @@
String memberAccepted();
+ String memberAddedAsCollaborator();
+
String memberRemoved();
String membershipRequestedWaitingForAdminsDecision();
@@ -366,6 +378,10 @@
String name();
+ String nameOfTheNewChatroom();
+
+ String nameOfTheNewList();
+
String nConversationsUnread();
String newAdvancedPoll();
@@ -434,6 +450,8 @@
String notTranslated();
+ String nowadaysTheGadgetsMapsPollsEtcAreExperimentalInSomeBrowsersYouMightExperienceProblemsWithCertainGadg();
+
String nRecentConversationsUnread();
String nSubscribedNPosts();
@@ -498,12 +516,16 @@
String pleaseCopyPasteThisInfoToReportProblems();
+ String pleaseSignInOrRegisterToCreateAGroup();
+
String pleaseSignInOrRegisterToGetFullAccessToParamToolsAndContents();
String pleaseSupport();
String post();
+ String postCreatedEditIt();
+
String preview();
String processing();
@@ -584,6 +606,8 @@
String selectTheLicenseYouPreferUsingForSharingYourGroupContentsWithOtherPeople();
+ String serverErrorSavingTheTranslation();
+
String setYourChatStatus();
String setYourGroupPreferencesHere();
@@ -596,12 +620,20 @@
String signIn();
+ String signInOrCreateAnAccountToAccessToYourInbox();
+
+ String signInOrCreateAnAccountToParticipateInThisGroup();
+
+ String signInOrRegisterToHelpWithTheTranslation();
+
String signInToCollaborate();
String signOut();
String signOutOfChat();
+ String sorryThisGadgetHasProblemsWithItsnHeightWeHopeThisWillBeFixedSoonn();
+
String startACollaborativeDocumentForTheMeetingMinutes();
String startAPublicAssemblyWithMembers();
@@ -612,6 +644,8 @@
String subscribe();
+ String subscribed();
+
String subscribeToThisList();
String successUploading();
@@ -654,10 +688,14 @@
String theSocialNetworkOfThisUserIsNotPublic();
+ String theUsernamePasswordIsIncorrect();
+
String thisBlogHasnTAnyPostCreateOne();
String thisDemoOfKune();
+ String thisEmailAddressIsBeingUsedByAnotherUserPleaseTryWithAnotherOne();
+
String thisFolderIsEmpty();
String thisIsACopyleftLicense();
@@ -692,6 +730,10 @@
String thisListIsNowRestrictedToThePublic();
+ String thisNameAlreadyExistsItIsUsedWhenAFileOrAFolderWithTheSameNameAlreadyExists();
+
+ String thisNameInAlreadyInUsePleaseTryWithADifferentName();
+
String thisNameIsAlreadyInUsePleaseTryWithADifferentName();
String thisSite();
@@ -714,6 +756,8 @@
String tip();
+ String titleOfTheNewPost();
+
String to();
String toHelpWithTheTranslationOfThisSoftwarePleaseContactBeforeWithThisSiteAdministrators();
@@ -734,6 +778,16 @@
String typeSomethingToSearchForUsersAndGroupsInParam();
+ String typeSomethingToSearchForUsersInParam();
+
+ String typeTheNameOfTheUserAndSelectHimHer();
+
+ String unsubscribe();
+
+ String unsubscribed();
+
+ String unsubscribeToThisList();
+
String useACopyleftLicenseRecommended();
String useAnotherKindOfLicenseAdvanced();
@@ -802,6 +856,8 @@
String youAreNowMemberOfThisGroup();
+ String youAreTryingToMoveThisToTheSameLocation();
+
String youCanAlsoUploadABackground();
String youCanChangeThisLicenseLater();
@@ -810,8 +866,12 @@
String youCannotDisableThisToolBecauseItSWhereYourHomePageIsLocatedToDoThatYouHaveToSelectOtherContentAsThe();
+ String youCannotWriteToNonBuddies();
+
String youDidNotSignInSoYouCanJustSeeSomePublicContentsInParamButNotEditOrCollaborateWithOthersPleaseParamO();
+ String youDoNotHaveRightsToPerformThatAction();
+
String yourGroups();
String yourHomepage();
Modified: trunk/src/main/java/cc/kune/core/client/i18n/KuneConstants.properties
===================================================================
--- trunk/src/main/java/cc/kune/core/client/i18n/KuneConstants.properties 2011-11-23 21:49:19 UTC (rev 1624)
+++ trunk/src/main/java/cc/kune/core/client/i18n/KuneConstants.properties 2011-11-24 00:49:46 UTC (rev 1625)
@@ -410,4 +410,37 @@
aCalendarToScheduleActivitiesAndEvents = A calendar to schedule activities and events
aRoomWhereYouCanHaveAGroupChatWithManyUsersAtOnceRoomsCanBePublicOrPrivateUsersCanBeFromParamOrOther = A 'room' where you can have a group-chat with many users at once. Rooms can be public or private. Users can be from [%s] or other sites (compatible with gmail chat)
wikiPagesAreDocumentsThatCanBeEditedByAnyVisitorInParamInsteadOfOnlyByTheGroupThisAcceleratesUpdatin = Wiki-pages are Documents that can be edited by any visitor (in [%s]), instead of only by the group. This accelerates updating and construction
-errorSettingTheLogo = Error setting the logo
\ No newline at end of file
+errorSettingTheLogo = Error setting the logo
+signInOrCreateAnAccountToAccessToYourInbox = Sign in or create an account to access to your inbox
+sorryThisGadgetHasProblemsWithItsnHeightWeHopeThisWillBeFixedSoonn = Sorry, this gadget has problems with its
+ height. We hope this will be fixed soon
+
+addNewMember = Add new member
+typeTheNameOfTheUserAndSelectHimHer = Type the name of the user and select him/her:
+typeSomethingToSearchForUsersInParam = Type something to search for users in [%s]
+doubleClickToOpenDragAndDropToMoveThisToAnotherPlace = Double click to open. Drag and drop to move this to another place
+theUsernamePasswordIsIncorrect = The username/password is incorrect
+subscribed = Subscribed
+unsubscribe = Unsubscribe
+unsubscribeToThisList = Unsubscribe to this list
+unsubscribed = Unsubscribed
+doYouWantToAddParamToYourContacts = Do you want to add '[%s]' to your contacts?
+youAreTryingToMoveThisToTheSameLocation = You are trying to move this to the same location
+postCreatedEditIt = Post created. Edit it
+pleaseSignInOrRegisterToCreateAGroup = Please, sign in or register to create a group
+signInOrCreateAnAccountToParticipateInThisGroup = Sign in or create an account to participate in this group
+thisNameInAlreadyInUsePleaseTryWithADifferentName = This name in already in use. Please try with a different name
+nowadaysTheGadgetsMapsPollsEtcAreExperimentalInSomeBrowsersYouMightExperienceProblemsWithCertainGadg = Nowadays the gadgets (maps, polls, etc) are experimental. In some browsers you might experience problems with certain gadgets
+errorConfiguringTheTool = Error configuring the tool
+youDoNotHaveRightsToPerformThatAction = You do not have rights to perform that action
+0 = 0
+signInOrRegisterToHelpWithTheTranslation = Sign in or register to help with the translation
+thisNameAlreadyExistsItIsUsedWhenAFileOrAFolderWithTheSameNameAlreadyExists = This name already exists
+doYouWantToAddParamAsAMemberOfParam = Do you want to add '[%s]' as a member of '[%s]'?
+memberAddedAsCollaborator = Member added as collaborator
+thisEmailAddressIsBeingUsedByAnotherUserPleaseTryWithAnotherOne = This email address is being used by another user. Please, try with another one
+youCannotWriteToNonBuddies = You cannot write to non buddies
+nameOfTheNewChatroom = Name of the new chatroom?
+nameOfTheNewList = Name of the new list?
+titleOfTheNewPost = Title of the new post?
+serverErrorSavingTheTranslation = Server error saving the translation
\ No newline at end of file
Modified: trunk/src/main/java/cc/kune/core/client/i18n/KuneConstants_es.properties
===================================================================
--- trunk/src/main/java/cc/kune/core/client/i18n/KuneConstants_es.properties 2011-11-23 21:49:19 UTC (rev 1624)
+++ trunk/src/main/java/cc/kune/core/client/i18n/KuneConstants_es.properties 2011-11-24 00:49:46 UTC (rev 1625)
@@ -411,4 +411,10 @@
aCalendarToScheduleActivitiesAndEvents = Un calendario para programar actividades y eventos
aRoomWhereYouCanHaveAGroupChatWithManyUsersAtOnceRoomsCanBePublicOrPrivateUsersCanBeFromParamOrOther = Una 'sala' donde puedes tener una conversación en grupo con muchos/as usuarios/as al mismo tiempo. Las salas pueden ser privadas o públicas. Los/as usuarios/as pueden ser de [%s] o de otros sitios (es compatible con el chat de gmail).
wikiPagesAreDocumentsThatCanBeEditedByAnyVisitorInParamInsteadOfOnlyByTheGroupThisAcceleratesUpdatin = Las páginas Wiki son documentos que pueden ser editados por cualquier usuario/a (de [%s]) en vez de solo por el grupo. Este acelera su actualización y construcción
-errorSettingTheLogo = Error configurando el logo
\ No newline at end of file
+errorSettingTheLogo = Error configurando el logo
+signInOrCreateAnAccountToAccessToYourInbox = Entra o créate una cuenta para acceder a tu carpeta de entrada
+addNewMember = Añadir un nuevo miembro
+unsubscribe = Desubscrito
+unsubscribeToThisList = Desuscribirse de esta lista
+errorConfiguringTheTool = Error de configuración de la herramienta
+doYouWantToAddParamAsAMemberOfParam = ¿Quieres añadir '[%s]' como miembro de '[%s]'?
\ No newline at end of file
Added: trunk/src/main/java/cc/kune/core/client/i18n/KuneConstants_fr.properties
===================================================================
--- trunk/src/main/java/cc/kune/core/client/i18n/KuneConstants_fr.properties (rev 0)
+++ trunk/src/main/java/cc/kune/core/client/i18n/KuneConstants_fr.properties 2011-11-24 00:49:46 UTC (rev 1625)
@@ -0,0 +1,444 @@
+#
+# Autogenerated by trunk/bin/i18n-db2gwt.sh, please not edit directly
+#
+
+writeToYourBuddy = Ecrivez à votre contact
+chatWithThisGroupMember = Discuter avec ce membre du groupe
+chatWithYourBuddy = Discuter avec votre copain
+addAsABuddy = Ajouter comme contact
+chat = Discuter ;)
+oopsSomethingHasGoneWrongWithOurServersRetryLaterPlease = Oops ! Quelque chose s'est mal passé avec nos serveurs. Merci de réessayer plus tard.
+loading = Chargement
+join = Rejoindre
+requestToJoinInThisGroup = Requête pour rejoindre ce groupe
+writeToTheMembersOfThisGroup = Ecrire aux membres de ce groupe
+writeToTheAdministratorsOfThisGroup = Ecrire aux administrateurs de ce groupe
+leaveThisGroup = Quitter ce groupe
+usersWhoCanViewThisMemberList = Utilisateurs qui peuvent voir cette liste de membres
+options = Options
+newMembersPolicy = Nouvelles conditions pour les membres
+anyone = n'importe qui
+onlyMembers = seulement les membres
+moderateRequestToJoin = Modérer la requête d'inscription
+addANewBuddy = Ajouter un nouveau contact
+closedForNewMembers = fermé pour les nouveaux membres
+autoAcceptRequestToJoin = accepter automatiquement les demandes d'inscription
+onlyAdministrators = Seulement les administrateurs
+onlyYourBuddies = seulement vos contacts
+usersWhoCanViewYourNetwork = Utilisateurs qui peuvent voir votre réseau
+onlyYou = seulement vous
+groupMembers = Membres du groupe
+usersAndGroupsCollaboratingInThisGroup = Utilisateurs et groupes qui collaborent à ce groupe
+administrators = Administrateurs
+usersWhoCanAdministrateThisGroup = Utilisateurs qui peuvent administrer ce groupe
+collaborators = Collaborateurs
+othersWhoCollaborateWithThisGroup = Autres qui collaborent avec ce groupe
+thisIsAnOrphanedProjectIfYouAreInterestedInContributingPleaseRequestToJoin = Ceci est un projet orphelin, si vous désirez contribuer merci de demander à le rejoindre
+pending = En attente
+theMembersOfThisGroupAreNotPublic = Les membres de ce groupe ne sont pas publics
+usersPendingToBeAcceptedInThisGroupByTheAdministrators = Utilisateurs en attente d'être acceptés dans ce groupe par les administrateurs
+changeToCollaborator = Changer vers collaborateur
+changeToAdministrator = Changer vers administrateur
+removeThisMember = Retirer ce membre
+visitThisGroupSHomepage = Visiter la page d'accueil de ce groupe
+visitThisMemberSHomepage = Visiter la page d'accueil de ce membre
+acceptThisMember = Accepter ce membre
+rejectAsMember = Rejeter comme membre
+visitYourHomepage = Visiter votre page d'accueil
+visitHisHerHomepage = Visiter sa page d'accueil
+hisHerNetwork = Son réseau :
+thisUserSGroupsAndBuddies = Les groupes et les contacts de cet utilisateur
+buddies = Contacts
+thisUserSBuddies = Les contacts de cet utilisateur
+joinsIn = Rejoint dans
+groupsWhichThisUserJoined = Groupes rejoints par cet utilisateur
+yourGroups = Vos groupes
+yourHomepage = Votre page d'accueil
+thisSite = ce site
+yourHomePageInParam = Votre page d'accueil dans [%s]
+userSpaceItShowsAListOfAllDocumentsAndContentsInWhichYouParticipate = Espace utilisateur : il montre une liste de tous les documents et contenus auxquels vous participez
+groupAndPersonalSpaceWhereYouCanCreateAndPublishContentsForYourPersonalOrGroupWebSpaces = Groupe et espace personnel : là où vous pouvez créer et publier les contenus pour vos espaces web personnel ou de groupe
+publicSpaceWhereYouCanSeeAPreviewOfHowYourPersonalOrGroupSpaceLooksLikeOnTheWeb = Espace public : où vous pouvez avoir un aperçu de la manière dont vos espaces personnels ou groupe apparaîtront sur le web
+latestPublications = Dernières publications
+stats = Stats
+registeredUsers = Utilisateurs enregistrés :
+hostedGroups = Groupes hébergés :
+latestCreatedGroups = Derniers groupes créés
+latestActivityInYourGroups = Dernières activités dans votre groupe
+tags = Tags
+keywordsOrTermsAssociatedWithThisGroup = Mots-clefs ou termes associés à ce groupe
+typeSomethingToSearchForUsersAndGroupsInParam = Tapez quelque chose pour chercher des utilisateurs et des groupes dans [%s]
+search = Recherche
+close = Fermer
+groupOptions = Options du groupe
+setYourGroupPreferencesHere = Définissez vos préférences de groupe ici
+userOptions = Options utilisateur
+helpWithTheTranslation = Participez à la traduction
+yourPreferences = Vos préférences
+giveUsFeedback = Envoyez-nous vos impressions !
+writeUsWithSomeFeedbackForHelpUsToImproveTheseServices = Envoyez-nous des retours pour nous aider à améliorer ces services
+showHideTheChatWindow = Montrer/cacher la fenêtre de discussion
+setYourChatStatus = Indiquez votre statut pour la discussion
+available = Disponible
+availableForChat = Disponible pour discuter
+away = Indisponible
+busy = Occupé
+signOutOfChat = Se déconnecter de la discussion
+groupSPublicChatRoom = Salle de discussion publique du groupe
+enterToThisGroupPublicChatRoom = Entrez dans la salle de discussion publique de ce groupe
+startAPublicAssemblyWithMembers = Démarrer une assemblée publique avec les membres
+enterToThisGroupPublicChatRoomAndInviteMembers = Entrez dans la salle de discussion publique de ce groupe et invitez des membres
+reportKuneIssuesProblems = Rapporter des problèmes au sujet de Kune
+apacheWavePowered = Propulsé par Apache Wave
+aboutKune = Ã propos de kune
+errorsInfo = Informations sur l'erreur
+signInToCollaborate = Connectez-vous pour collaborer
+pleaseSignInOrRegisterToGetFullAccessToParamToolsAndContents = Merci de vous connecter ou de vous inscrire pour avoir un accès complet aux outils et contenus de [%s]
+signOut = Se déconnecter
+createNewGroup = Créer un Nouveau Groupe
+createANewGroupForYourInitiativeOrOrganizationNgoCollectiveAcademicGroup = Créer un nouveau groupe pour votre initiative ou organisation (ONG, collectif, groupe académique, ...)
+chatWithThisPerson = Discuter avec cette personne
+kuneDevelopmentSite = site du développement de Kune
+andNExternalUser = ajouter [%d] utilisateur externe
+thisIsOnlyAPreviewOfHowThisPageWouldLookLikeToTheGeneralPublicOnTheInternet = Ceci n'est qu'un aperçu de ce à quoi la page ressemblera pour le public sur internet.
+preview = Prévisualisation
+paramUnderLicenseParam = © [%s], sous licence: [%s]
+clickToRename = Cliquez pour renommer
+createANewDocumentIfYouChooseToPublishItThisDocumentWillAppearAsANewPageInThePublicWeb = Créer un Nouveau Document. Si vous choisissez de le publier, ce document apparaîtra comme une nouvelle "Page" sur le web public
+reloadCurrentPage = Recharger la page actuelle
+newDocument = Nouveau document
+goUpOpenTheContainerFolder = Monter d'un niveau : ouvrir le dossier supérieur
+edit = Modifier
+chatAbout = Discuter à propos de
+chatAndCommentOnThis = Discuter et commenter cela
+nConversationsUnread = [%d]Â conversations non lues
+memberAccepted = Membre accepté
+general = Général
+changeThisValues = Changer ces valeurs :
+theNameMustBeBetween3And15LowercaseWesternCharactersAndOrNumbers = Le nom doit comprendre entre 3 et 15 caractères européens en bas de casse et/ou des chiffres
+shortName = Nom court
+longName = Nom long
+tools = Outils
+hereYouCanSelectTheToolsUsed = Ici vous pouvez choisir les outils utilisés :
+thisToolCannotBeDisabledAsLongAsItsWhereTheGroupsHomePageIsLocatedChangeTheDefaultHomePageToAnotherT = Cet outil ne peut pas être désactivé tant qu'il est dans la page d'accueil du groupe. Changez la page d'accueil par défaut pour un autre outil et essayez de nouveau.
+choose = Choisir
+changeThisWorkspaceTheme = Changer le thème de cet espace de travail :
+selectAnImageFromYourComputerAsTheLogoForThisGroupForBestResultsUseANxnPixelImageBiggerImagesWillBeA = Choisissez une image de votre ordinateur comme logo de ce groupe. Pour de meilleurs résultats, utilisez une image de [%d]x[%d] pixels. Les images plus grandes seront automatiquement retaillées
+style = Style
+currentBackgroundImage = image de fond actuelle :
+youCanAlsoUploadABackground = Vous pouvez aussi téléverser un arrière-plan :
+change = Changer
+clear = Effacer
+removeCurrentBackgroundImage = Enlever l'image de fond actuelle
+selectAndConfigureThePublicSpaceThemeOfThisGroup = Choisir et configurer le thème de l'espace public de ce groupe :
+clickToSelectAndConfigureThisTheme = Cliquez pour choisir et configurer ce thème
+redblackAThemeName = rougenoir
+purpleAThemeName = pourpre
+greenAThemeName = vert
+highcontrastAThemeName = contraste fort
+blackwhiteAThemeName = noirblanc
+eurosurAThemeName = eurosur
+campAThemeName = camp
+defaultAThemeName = par défaut
+blueAThemeName = bleu
+redAThemeName = rouge
+greyAThemeName = gris
+saharaAThemeName = sahara
+pinkAThemeName = rose
+transparentAThemeName = transparent
+whiteblackAThemeName = blancnoir
+license = Licence
+thisIsTheDefaultLicenseForAllTheContentsOfThisGroupAlthoughYouCanChooseADifferentLicenseForSpecificC = Ceci est la licence par défaut pour tous les contenus de ce groupe (même si vous pouvez choisir une licence différente pour des contenus particuliers)
+enterLanguage = Indiquez la langue
+searching = Recherche...
+yourLanguage = Votre langue
+name = Nom
+security = Sécurité
+changeYourPassword = Changer votre mot de passe :
+currentPassword = Mot de passe actuel
+thePasswordMustBeBetween6And40Characters = Le mot de passe doit faire entre 6 et 40 caractères
+newPassword = Nouveau mot de passe
+newPasswordRepeatIt = Nouveau mot de passe (répéter)
+changeIt = Changer cela
+youCannotDisableThisToolBecauseItSWhereYourHomePageIsLocatedToDoThatYouHaveToSelectOtherContentAsThe = Vous ne pouvez pas désactiver cet outil parce que c'est là qu'est située votre page d'accueil. Pour faire cela, vous devez sélectionner un autre contenu comme contenu d'accueil par défaut, mais avec un autre outil.
+selectAnImageFromYourComputerAsYourAvatarForBestResultsUseANxnPixelImageBiggerImagesWillBeAutomatica = Choisissez une image de votre ordinateur pour votre avatar. Pour de meilleurs résultats, utilisez une image de [%d]x[%d] pixels. Les images plus grandes seront automatiquement retaillées
+passwordChangedSuccessfully = Mot de passe modifié avec succès
+newGadget = Nouveau Gadget
+voting = Vote
+media = Média
+calendar = Calendrier
+others = Autres
+thisDemoOfKune = cette démonstration de kune
+paramBio = [%s] Bio
+thisUserHasNotWrittenItsBiographyYet = Cet utilisateur n'a pas encore écrit sa biographie
+longTermTasks = Tâches à long terme
+midTermTasks = Tâches à moyen terme
+shortTermUrgentTasks = Tâches à court terme (urgentes)
+aLongTermTaskSample = Un exemple de tâche à long terme
+thisIsOnlyATaskSampleYouCanEditItRenameIt = Ceci n'est qu'un exemple de tâche. Vous pouvez la modifier, la renommer
+aMidTermTaskSample = Un exemple de tâche à moyen terme
+aShortTermTaskSample = Un exemple de tâche à court terme
+wikiPageSample = Exemple de page wiki
+thisIsOnlyAWikiPageSampleYouCanEditOrRenameItButAlsoAnyOtherUser = Ceci n'est qu'un exemple de page wiki. Vous pouvez la modifier ou la renommer, aussi bien que n'importe quel autre utilisateur.
+blogSample = Exemple de blog
+aPostSample = Un exemple de post
+thisIsOnlyAPostSampleYouCanEditItRenameThePostAndThisBlog = Ceci est seulement un exemple d'article. Vous pouvez le modifier, renommer l'article et ce blog
+welcome = Bienvenue
+thanksForJoiningParamNowYouCanActivelyParticipateInParamYouCanAlsoUseYourPersonalSpaceToPublishConte = Merci de rejoindre [%s]. Vous pouvez désormais participer activement à [%s]. Vous pouvez aussi utiliser votre espace personnel pour publier des contenus. Note :
+thisUserHasNoBuddiesYet = Cet utilisateur n'a pas encore de contact
+newTask = Nouvelle tâche
+createANewTask = Créer une nouvelle tâche
+doubleClickToOpen = Double-cliquez pour ouvrir
+createANewFolder = Créer un nouveau dossier
+newTaskFolder = Nouveau dossier de tâches
+open = Ouvrir
+delete = Effacer
+actions = Actions
+connecting = Connexion
+offline = Hors-ligne
+newList = Nouvelle liste
+reloadThis = Recharger ceci
+createANewList = Créer une nouvelle liste
+yes = Oui
+confirmPlease = Confirmez, s'il vous plaît :
+thisWillOpenASpecificChatroomToChatAboutThisPageOrDocumentItSUsefulToChatWithOthersAboutSomethingWhi = Ceci ouvrira une salle de discussion spécifique au sujet de cette page ou document (c'est utile de discuter avec les autres au sujet de ce qu'on est en train de lire ou d'écrire). Etes-vous sûr ?
+no = Non
+chatAboutParam = Discuter à propos de : [%s]
+barterSample = example de troc
+thisIsOnlyABarterSampleYouCanInviteOtherParticipantsToThisBarterButAlsoPublishToTheGeneralPublicAllo = Ceci n'est qu'un exemple de troc. Vous pouvez inviter d'autres participants à ce troc, mais aussi publier publiquement pour partager des services, des biens, etc.
+newBarter = Nouveau troc
+newFolder = Nouveau dossier
+createANewBarterHere = Créer un nouveau troc ici
+newWikipage = Nouvelle page wiki
+createANewFolderAFolderWillBeASectionInThePublicWeb = Créer un nouveau dossier. Un dossier sera une "section" sur le web public
+createANewWikipageHereIfYouChooseToPublishItThisDocumentWillAppearAsANewPageInThePublicWeb = Créer une nouvelle wikipage ici. Si vous choisissez de la publier, ce document apparaîtra comme une nouvelle "Page" publiquement sur le web
+selectAsTheHomepage = Choisir comme page d'accueil
+registerANewGroup = Inscrire un nouveau groupe
+register = S'inscrire
+cancel = Annuler
+publicDescription = Description publique
+groupTags = Tags du groupe
+typeSomeKeywordThatDefineYourGroup = tapez quelques mots-clefs qui définissent votre groupe
+groupType = Type du groupe
+project = Projet
+organization = Organisation
+aProjectIsAKindOfGroupInWhichTheJoiningOfNewMembersIsModeratedByTheProjectAdministrators = Un projet est un genre de groupe dans lequel l'inscription de nouveaux membres est modérée par les administrateurs du projet.
+anOrganizationWorksTheSameWayAsAProjectExceptThatItMustBeALegalEntity = Une organisation fonctionne de la même manière qu'un projet, mais doit être une entité légale.
+closed = Fermé
+aClosedGroupIsAPrivateProjectWhichContentsAreOnlyAccessibleToItsMembersByDefault = Un groupe fermé est un projet privé, dont les contenus ne sont accessibles qu'à ses membres (par défaut)
+community = Communauté
+aCommunityIsAGroupOfUsersWithSharedInterestsForInstanceTheEnvironmentalCommunityOrTheLgbtCommunityIt = Une communauté est un groupe d'utilisateurs partageant les mêmes intérêts (par exemple la communauté des écologistes ou la communauté LGBT). Elle est ouverte à tout nouveau membre qui peut la rejoindre librement sans que les administrateurs modèrent.
+paramCreatedNewContentCreatedForInstance = [%s] créé
+notPublishedYet = Pas encore publié
+thisIsOnlyAPreviewOfHowThisWebpageWouldLookLikeToTheGeneralPublicOnTheInternet = Ceci n'est qu'un aperçu de ce à quoi cette page web ressemblera pour le public sur internet.
+createANewDocumentHereIfYouChooseToPublishItThisDocumentWillAppearAsANewPageInThePublicWeb = Créer un Nouveau Document ici. Si vous choisissez de le publier, ce document apparaîtra comme une nouvelle "Page" sur le web public
+newPoll = Nouveau sondage
+newYesNoMaybeVoting = Nouveau vote Oui/Non/Peut-être/+
+newAdvancedPoll = Nouveau Sondage Avancé
+newMeeting = Nouvelle réunion
+newYesNoMiniVoting = Nouveau vote Oui/Non/Mini
+newMeetCoordination = Nouvelle coordination de réunion
+newMap = Nouvelle Carte
+newImageAndLetsAnnotate = Nouvelle image (et annotons)
+newYoutubeVideo = Nouvelle vidéo Youtube
+newAlbum = Nouvel Album
+newTwitterSearch = Nouvelle recherche twitter
+newMindmap = Nouvelle Carte Heuristique
+newBarter = Nouveau Troc
+newImagePainter = Dessiner une nouvelle image
+signIn = Se connecter
+password = Mot de passe
+donTHaveAnAccount = Vous n'avez pas de compte ?
+username = Nom d'utilisateur
+email = Email
+createOne = En créer un.
+thisIsNotAValidEmail = Ceci n'est pas une adresse email valide
+newBlog = Nouveau blog
+createANewBlog = Créer un nouveau blog
+newPost = Nouvel article
+createANewBlogPost = Créer un nouvel article de blog
+thisBlogHasnTAnyPostCreateOne = Ce blog ne contient aucun article, en créer un
+renaming = Renommer
+doYouWantToWriteUsWithSomePositiveOrNegativeFeedbackThisCanHelpUsToImproveTheseServices = Voulez-vous nous écrire pour des retours positifs ou négatifs ? Cela peut nous aider à améliorer ces services
+doYouWantToJoinThisGroup = Voulez-vous rejoindre ce groupe ?
+youAreNowMemberOfThisGroup = Vous êtes désormais un membre de ce groupe
+newRoom = Nouvelle salle
+createANewChatRoom = Créer une nouvelle salle de discussion
+enterToThisRoom = Entrez dans cette salle
+openTheConversationsArchiveOfThisRoom = Ouvrir les archives des conversations pour cette salle
+openArchive = Ouvrir archive
+aboutKuneTitleOfDialog = Ã propos de Kune
+ok = OK
+processing = Traitement
+aboutParam = Ã propos de [%s]
+meetingSample = Exemple de réunion
+thisIsOnlyAMeetSampleYouCanInviteOtherParticipantsToThisMeetingButAlsoPublishToTheGeneralPublicAllow = Ceci n'est qu'un exemple de réunion. Vous pouvez inviter d'autres participants à cette réunion, mais aussi publier publiquement pour aider dans l'organisation, l'appel ou l'accélération d'événements.
+markAsDone = Marqué comme "fait"
+createANewPost = Créer un nouvel article
+makeThisListNotPublic = Rendre cette liste non-publique
+subscribeToThisList = S'inscrire à cette liste
+subscribe = S'inscrire
+nSubscribedNPosts = [%d] inscrit(s), [%d] article(s)
+confirmNewBuddy = Confirmer le nouveau camarade
+paramHadAddedYouAsABuddyDoYouWantToAddHimHerAlso = [%s] vous a ajouté comme contact. Voulez-vous aussi l'ajouter ?
+paramCreatedSuccesfully = [%s] créé avec succès
+nRecentConversationsUnread = [%d] conversations récentes non lues
+writeUsWithSomeFeedbackForHelpUsToImproveTheServicesOnParam = Envoyez-nous des retours pour nous aider à améliorer les services de [%s]
+oneRecentConversationUnread = Une conversation récente non lue
+pleaseConfirm = Merci de confirmer
+startACollaborativeDocumentForTheMeetingMinutes = Démarrer un document collaboratif pour les minutes de la réunion ?
+meetingMinutesOfParamOnParam = Minutes de la réunion de [%s] sur [%s]
+youCanCollaborativelyEditThisDocumentWithTheMeetingMinutes = Vous pouvez modifier collaborativement ce document contenant les minutes de la réunion
+createANewMeetingHere = Créer une nouvelle réunion ici
+thereIsnTAnyListCreateOne = Il n'y a aucune liste, en créer une
+create = Créer
+areYouSure = Ãtes-vous certain ?
+welcomeToTheParamPublicChatRoom = Bienvenue dans la salle de discussion publique de [%s]
+doYouWantToWriteUsWithSomePositiveOrNegativeFeedbackAboutParamThisCanHelpUsToImproveTheseServices = Voulez-vous nous écrire pour des retours positifs ou négatifs au sujet de '[%s]' ? Cela peut nous aider à améliorer ces services
+feedbackOfParam = Retours de [%s]
+editAndWriteHereYourFeedback = Modifiez et écrivez ici vos retours
+copyTheTextToTranslate = Copiez le texte à traduire
+translateThis = traduire ceci :
+notes = Notes :
+tip = Astuces :
+clickAltpageupOrAltpagedownToMoveUpDownInTheListWhileTranslatingAndAltVToCopyTheOriginalTextTheTrans = Cliquez sur Alt + PageUp ou Alt+PageDown pour vous déplacer vers le haut/bas dans la liste pendant que vous traduisez, et Alt-V pour copier le texte original. Les traductions sont sauvegardées automatiquement.
+notTranslated = Pas traduit
+recommendations = Recommandations
+translated = Traduit
+helpToTranslateKune = Aidez-nous à traduire Kune
+to = Ã
+toParamForExampleToSpanish = pour [%s] :
+saving = Sauvegarde
+successUploading = Téléversement effectué avec succès
+thereIsnTAnyTaskCreateOne = Il n'y a aucune tâche, en créer une
+searchTheUserYouWantToAddAndInHisHerHomepageClickAddAsABuddy = Recherchez l'utilisateur que vous voulez ajouter et dans sa page d'accueil cliquez sur "Ajouter comme contact"
+doYouWantToWriteAMessageToTheMembersOfThisGroup = Voulez-vous écrire un message aux membres de ce groupe ?
+post = Article
+thisIsEmpty = Ceci est vide.
+documents = documents
+thisFolderIsEmpty = Ce dossier est vide
+barters = trocs
+blogs = blogs
+thereIsnTAnyBarter = Il n'y a aucun troc
+thereIsnTAnyBlogCreateOne = Il n'y a aucun blog, en créer un
+infoAboutErrors = Informations sur les erreurs
+chatrooms = salles de discussions
+events = événements
+pleaseCopyPasteThisInfoToReportProblems = Merci de copier-coller cette information pour rendre compte de problèmes
+seeTheArchiveOfOldConversationsInDevelopment = Voir les archives d'anciennes conversations (en développement)
+thereIsNothingPostedYetPostSomething = Il n'y rien de posté pour l'instant. Postez quelque chose
+lists = listes
+thisWikiIsEmpty = Ce wiki est vide
+thereIsnTAnyMeeting = Il n'y a aucune réunion
+wiki = wiki
+tasks = tâches
+rightNowThePublicWebSpaceOfThisGroupItSUnderConstruction = L'espace public de ce groupe est actuellement en construction
+paramTheDevelopment = [%s] le développement
+pleaseSupport = Merci de nous soutenir
+inDevelopment = (en développement)
+chats = discussions
+theNameMustContainOnlyCharactersNumbersAndDashes = Le nom ne doit contenir que des caractères, des chiffres et des tirets
+chatroomCreated = Salle de discussion créée
+doYouWantToWriteAMessageToYourBuddy = Voulez-vous écrire un message à votre copain ?
+error = Erreur
+toJoinAChatroomYouNeedToBeOnline = Pour rejoindre une salle de discussion, vous devez d'abord être "en ligne"
+licenseWizard = Assistant Licence
+backUsedInButton = « Retour
+nextUsedInButton = Suivant »
+select = Choisir
+finishUsedInButton = Finir
+selectTheLicenseYouPreferUsingForSharingYourGroupContentsWithOtherPeople = Choisissez la licence que vous préférez utiliser pour partager les contenus de votre groupe avec les autres personnes :
+useACopyleftLicenseRecommended = Utiliser une licence copyleft (recommandé)
+useAnotherKindOfLicenseAdvanced = Utiliser un autre type de licence (avancé)
+copyleft = copyleft
+weRecommendParamLicensesSpeciallyForPracticalWorks = Nous recommandons les licences [%s], en particulier pour les oeuvres pratiques
+whyDoWeNeedALicense = Pourquoi avons-nous besoin d'une licence ?
+youCanChangeThisLicenseLater = Vous pouvez changer cette licence plus tard
+selectTheLicenseType = Choisir le type de licence :
+commonLicensesForCulturalWorks = Licences courantes pour les oeuvres culturelles
+otherKindOfLicenses = Autre genre de licence
+selectACreativeCommonsLicenseRecommendedForCulturalWorks = Choisir une licence Creative Commons (recommandé pour les oeuvres culturelles)
+useTheGnuLicensesRecommendedForFreeSoftwareWorksAndOtherKindOfLicenses = Utiliser les licences GNU (recommandé pour les logiciels libres) et d'autres types de licences
+withACreativeCommonsLicenseYouKeepYourCopyrightButAllowPeopleToCopyAndDistributeYourWorkProvidedThey = Avec une licence Creative Commons, vous gardez vos droits d'auteur mais vous autorisez en plus à d'autres de copier et de distribuer votre travail à condition qu'ils vous créditent
+allowAnyUsesOfYourWorkIncludingCommercial = Autoriser toute usage de votre travail, y compris commercial ?
+allowModificationsOfYourWork = Autoriser les modifications de votre travail ?
+theLicensorPermitsOthersToCopyDistributeDisplayAndPerformTheWorkIncludingForCommercialPurposes = La détenteur des droits permet aux autres de copiers, de distribuer, d'afficher et d'utiliser l'oeuvre, y compris à des fins commerciales
+theLicensorPermitsOthersToCopyDistributeDisplayAndPerformTheWorkForNonCommercialPurposesOnly = La détenteur des droits permet aux autres de copiers, de distribuer, d'afficher et d'utiliser l'oeuvre seulement à des fins non commerciales
+theLicensorPermitsOthersToCopyDistributeDisplayAndPerformTheWorkAsWellAsToMakeDerivativeWorksBasedOn = La détenteur des droits permet aux autres de copiers, de distribuer, d'afficher et d'utiliser l'oeuvre, ainsi que de s'en servir pour faire des oeuvres dérivées
+yesAsLongAsOtherShareAlike = Oui, à condition que les autres partagent de la même manière
+theLicensorPermitsOthersToDistributeDerivativeWorksOnlyUnderTheSameLicenseOrOneCompatibleWithTheOneT = Le détenteur des droits permet aux autres de distribuer des oeuvres dérivées seulement sous la même licence ou une licence compatible avec celle qui vaut pour le travail de l'ayant droits
+theLicensorPermitsOthersToCopyDistributeDisplayAndPerformOnlyUnalteredCopiesOfTheWork8212NotDerivati = La détenteur des droits permet aux autres de copiers, de distribuer, d'afficher et d'utiliser seulement des copies verbatim de l'oeuvre &#8212; pas d'oeuvres dérivées à partir d'elle
+thisIsACopyleftLicense = C'est une licence copyleft
+thisIsNotACopyleftLicense = Ceci n'est pas une licence copyleft.
+thisIsAppropriateForFreeCulturalWorks = Ceci est approprié pour des oeuvres culturelles libres
+thisIsNotAppropriateForFreeCulturalWorks = Ceci n'est pas approprié pour des oeuvres culturelles libres.
+reasonsNotToUseANonCommercialLicense = Raisons de ne pas utiliser une licence non-commerciale
+selectOtherKindOfLicenses = Choisir un autre genre de licence :
+selectLicense = Choisir une licence
+membershipRequestedWaitingForAdminsDecision = Demande d'inscription faite. En attente de la décision des admins
+memberTypeChanged = Type du membre modifié
+memberRemoved = Membre retiré
+contentNotFound = Contenu non trouvé
+onlyToAuthorizedTranslators = Seulement les traducteurs autorisés
+toHelpWithTheTranslationOfThisSoftwarePleaseContactBeforeWithThisSiteAdministrators = Pour aider à la traduction de ce logiciel, merci de contacter d'abord les administrateurs de ce site
+visibilityOfYourNetworkChanged = La visibilité de votre réseau a été modifiée
+areYouSureYouWantThisItWillBeDeletedWithAllItsContents = Ãtes-vous sûr de vouloir faire ça ? Ce sera effacé avec tout son contenu.
+thisNameIsAlreadyInUsePleaseTryWithADifferentName = Ce nom est déjà utilisé. Merci d'essayer avec un nom différent
+doYouWantToWriteAMessageToTheAdministratorsOfThisGroup = Voulez-vous écrire un message aux administrateurs de ce groupe ?
+listCreated = Liste créée
+thisListIsNowRestrictedToThePublic = Cette liste est désormais restreinte au public
+makeThisListPublic = Rendre cette liste publique
+membersVisibilityChanged = Visibilité des membres changée
+membersJoiningPolicyChanged = Les conditions d'inscription des membres ont été modifiées
+moving = Déplacer
+aContentWithTheSameNameAlreadyExistPleaseRenameIt = A contenu portant le même nom existe déjà . Merci de renommer celui-ci
+removedAsMember = Retiré comme membre
+addGadget = Ajouter un gadget
+theSocialNetworkOfThisUserIsNotPublic = The réseau social de cet utilisateur n'est pas public
+newDoc = Nouveau doc
+clickToGoHereOrDropContentsHereToMoveThem = Cliquez pour aller ici ou déposez des contenus ici pour les déplacer
+thisUserIsAlreadyAGroupMember = Cet utilisateur est déjà membre du groupe
+markAsNotDone = Marquer comme "non fait"
+more = Plus
+youDidNotSignInSoYouCanJustSeeSomePublicContentsInParamButNotEditOrCollaborateWithOthersPleaseParamO = Vous ne vous êtes pas inscrit, donc vous ne pouvez voir que quelques contenus publics de [%s], mais pas modifier ou collaborer avec d'autres. Merci de [%s] ou de [%s] pour avoir un accès complet aux outils et aux contenus de [%s]
+onlyForAuthorizedTranslators = Seulement pour les traducteurs autorisés
+hereYouCanCreateOrUploadYourPersonalGroupOrPublicDocumentsTheseDocumentsCanBeEditedAndCommentedColla = Ici vous pouvez créer ou mettre en ligne vos documents personnels, de groupe ou publics. Ces documents peuvent être édités et commentés de manière collaborative et simultanément. Ces docs peuvent être des pages statiques
+blogsAreAChronologicalListOfPostsOrderedByDateAboutASpecificTopicEachPostCanBeCommentedByTheVisitors = Les blogs sont des listes chronologiques d'articles (rangé par date) sur un thème spécifique. Chaque article peut être commenté par les visiteurs
+aDecentralizedWayToOfferOrAskForServicesAndGoodsToYourGroupsOrToAnyoneBarteringMeansTheExchangeOfGoo = Une manière décentralisée d'offrir (ou de demander) des biens et des services à vos groupes ou à n'importe qui. "Troc" signifie l'échange de biens ou de services par l'accord de deux personnes.
+listsBehaveLikeAMailingListOrAForumYouCanSubscribeAndDiscussAboutSpecificTopics = Les listes fonctionnent comme une liste de discussion ou un forum. Vous pouvez vous inscrire et discuter à propos de sujets particuliers
+aCollaborativeToDoListForTheGroupAnyGroupMemberCanParticipateInAnyProposedTaskAddOthersToATaskCommen = Une liste de TODOs collaborative pour le groupe. Tout membre du groupe peut participer à toute tâche proposée, ajouter d'autres membres pour une tâche, les commenter, ajouter des infos, etc.
+aCalendarToScheduleActivitiesAndEvents = Un calendrier pour planifier les activités et les événements
+aRoomWhereYouCanHaveAGroupChatWithManyUsersAtOnceRoomsCanBePublicOrPrivateUsersCanBeFromParamOrOther = Une 'salle' où vous pouvez tenir une discussion collective avec plusieurs utilisateurs à la fois. Les salles peuvent être publiques ou privées. Les utilisateurs peuvent être de [%s] ou d'autres sites (compatible avec le chat gmail)
+wikiPagesAreDocumentsThatCanBeEditedByAnyVisitorInParamInsteadOfOnlyByTheGroupThisAcceleratesUpdatin = Les pages wiki sont des Documents qui peuvent être édité par tout visiteur (de [%s]), au lieu seulement du groupe. Cela accélère la mise à jour et la construction
+errorSettingTheLogo = Erreur lors de la définition du logo
+signInOrCreateAnAccountToAccessToYourInbox = Connectez-vous ou créez un compte pour accéder à votre messagerie
+sorryThisGadgetHasProblemsWithItsnHeightWeHopeThisWillBeFixedSoonn = Désolé, ce gadget a des problèmes avec sa hauteur. Nous espérons que ce sera réparé bientôt
+addNewMember = Ajouter un nouveau membre
+typeTheNameOfTheUserAndSelectHimHer = Tapez le nom de l'utilisateur et choisissez le :
+typeSomethingToSearchForUsersInParam = Tapez quelque chose pour chercher des utilisateurs dans [%s]
+doubleClickToOpenDragAndDropToMoveThisToAnotherPlace = Double-cliquez pour ouvrir. Glissez-déposez pour déplacer ceci à une autre place
+theUsernamePasswordIsIncorrect = Le nom d'utilisateur/mot de passe est incorrect
+subscribed = Inscrit
+unsubscribe = Se désinscrire
+unsubscribeToThisList = Se désinscrire de cette liste
+unsubscribed = Désinscrit
+doYouWantToAddParamToYourContacts = Voulez-vous ajouter '[%s]' Ã vos contacts ?
+youAreTryingToMoveThisToTheSameLocation = Vous essayez de déplacer ceci au même endroit
+postCreatedEditIt = Article créé. Modifiez-le
+pleaseSignInOrRegisterToCreateAGroup = S'il vous plaît, connectez-vous ou enregistrez-vous pour créer un groupe
+signInOrCreateAnAccountToParticipateInThisGroup = Connectez-vous ou créez un compte pour participer à ce groupe
+thisNameInAlreadyInUsePleaseTryWithADifferentName = Ce nom est déjà utilisé. Merci d'essayer avec un nom différent
+nowadaysTheGadgetsMapsPollsEtcAreExperimentalInSomeBrowsersYouMightExperienceProblemsWithCertainGadg = Les gadgets (cartes, sondages, etc) sont encore expérimentaux. Dans certains navigateurs, vous pourrez avoir des problèmes avec certains gadgets
+errorConfiguringTheTool = Erreur lors de la configuration de l'outil
+youDoNotHaveRightsToPerformThatAction = Vous n'avez pas les permissions suffisantes pour accomplir cette action
+0 = 0
+signInOrRegisterToHelpWithTheTranslation = Connectez-vous ou créez un compte pour aider à la traduction
+thisNameAlreadyExistsItIsUsedWhenAFileOrAFolderWithTheSameNameAlreadyExists = Ce nom existe déjÃ
+doYouWantToAddParamAsAMemberOfParam = Voulez-vous ajouter '[%s]' comme membre de '[%s]' ?
+memberAddedAsCollaborator = Membre ajouté comme collaborateur
+thisEmailAddressIsBeingUsedByAnotherUserPleaseTryWithAnotherOne = Cette adresse email est utilisée par un autre utilisateur. Merci d'essayer avec une autre
+youCannotWriteToNonBuddies = Vous ne pouvez pas écrire à des utilisateurs qui ne sont pas dans vos contacts
+nameOfTheNewChatroom = Nom de la nouvelle salle de discussion ?
+nameOfTheNewList = Nom de cette nouvelle liste ?
+titleOfTheNewPost = Titre du nouvel article ?
+serverErrorSavingTheTranslation = Erreur du serveur lors de la sauvegarde de la traduction
\ No newline at end of file
Modified: trunk/src/main/java/cc/kune/gspace/client/i18n/I18nTranslatorPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/gspace/client/i18n/I18nTranslatorPanel.java 2011-11-23 21:49:19 UTC (rev 1624)
+++ trunk/src/main/java/cc/kune/gspace/client/i18n/I18nTranslatorPanel.java 2011-11-24 00:49:46 UTC (rev 1625)
@@ -47,7 +47,7 @@
final LanguageSelectorWithoutEnglishPanel lanSelectorPanel,
final I18nToTranslateGridPanel toTranslateGrid, final I18nTranslatedGridPanel translatedGrid,
final I18nTranslateRecomendPanel transRecommend, final CoreResources res) {
- super(TRANSLATOR_PANEL_ID, "", false, false, images, TRANSLATOR_ERROR_ID, i18n.t("Close"), null,
+ super(TRANSLATOR_PANEL_ID, "", true, false, images, TRANSLATOR_ERROR_ID, i18n.t("Close"), null,
null, null, transGroup, i18n.getDirection());
setIcon(res.language());
this.lanSelectorPanel = lanSelectorPanel;
Modified: trunk/src/main/resources/TestConstants_en.properties
===================================================================
--- trunk/src/main/resources/TestConstants_en.properties 2011-11-23 21:49:19 UTC (rev 1624)
+++ trunk/src/main/resources/TestConstants_en.properties 2011-11-24 00:49:46 UTC (rev 1625)
@@ -38,4 +38,5 @@
thankYou = Thank you
andYesFeedbackWelcome = and yes, feedback welcome
yourPersonalPublicSpace = Your personal public space
-hereYouCanHaveYourBlogEtc = here you can have your blog, etc
\ No newline at end of file
+hereYouCanHaveYourBlogEtc = here you can have your blog, etc
+letSStartAddingSomeBuddieToOurSocialNetwork = Let's start adding some buddie to our social network
\ No newline at end of file
Modified: trunk/src/main/resources/TestConstants_es.properties
===================================================================
--- trunk/src/main/resources/TestConstants_es.properties 2011-11-23 21:49:19 UTC (rev 1624)
+++ trunk/src/main/resources/TestConstants_es.properties 2011-11-24 00:49:46 UTC (rev 1625)
@@ -32,4 +32,5 @@
thankYou = Gracias
andYesFeedbackWelcome = y sí, tu feedback es muy bienvenido
yourPersonalPublicSpace = Tu espacio público personal
-hereYouCanHaveYourBlogEtc = aquí puedes tener tu blog, etc
\ No newline at end of file
+hereYouCanHaveYourBlogEtc = aquí puedes tener tu blog, etc
+letSStartAddingSomeBuddieToOurSocialNetwork = Empecemos añadiendo algún/a colega (un contacto) a nuestra red social
\ No newline at end of file
Modified: trunk/src/test/java/cc/kune/selenium/CustomWebDriverEventListener.java
===================================================================
--- trunk/src/test/java/cc/kune/selenium/CustomWebDriverEventListener.java 2011-11-23 21:49:19 UTC (rev 1624)
+++ trunk/src/test/java/cc/kune/selenium/CustomWebDriverEventListener.java 2011-11-24 00:49:46 UTC (rev 1625)
@@ -30,7 +30,7 @@
@Override
public void afterChangeValueOf(final WebElement element, final WebDriver driver) {
// SeleniumUtils.showCursor(driver);
- sleep(600);
+ sleep(400);
}
@Override
@@ -65,7 +65,7 @@
@Override
public void beforeChangeValueOf(final WebElement element, final WebDriver driver) {
SeleniumUtils.hightlight(element, driver);
- sleep(300);
+ sleep(150);
// SeleniumUtils.hideCursor(driver);
}
@@ -108,6 +108,6 @@
}
private void slow() {
- sleep(1000);
+ sleep(700);
}
}
\ No newline at end of file
Modified: trunk/src/test/java/cc/kune/selenium/KuneSeleniumDefaults.java
===================================================================
--- trunk/src/test/java/cc/kune/selenium/KuneSeleniumDefaults.java 2011-11-23 21:49:19 UTC (rev 1624)
+++ trunk/src/test/java/cc/kune/selenium/KuneSeleniumDefaults.java 2011-11-24 00:49:46 UTC (rev 1625)
@@ -60,7 +60,7 @@
private static final Log LOG = LogFactory.getLog(KuneSeleniumDefaults.class);
public static boolean mustCloseFinally = false;
- private String baseUrl;
+ private final String baseUrl;
protected final ChatPageObject chat;
protected final EntityHeaderPageObject entityHeader;
protected final GroupSpacePageObject groupSpace;
@@ -74,23 +74,7 @@
private final WebDriver webdriver;
public KuneSeleniumDefaults() {
- final String localeParam = "?locale=" + SeleniumConf.LANG;
- switch (SeleniumConf.SITE) {
- case demo:
- baseUrl = "http://kune.beta.iepala.es/" + localeParam + "#";
- break;
- case localhost:
- baseUrl = "http://127.0.0.1:8888/" + localeParam + "&log_level=INFO&gwt.codesvr=127.0.0.1:9997#";
- break;
- case eurosur:
- baseUrl = "http://beta.eurosur.org/" + localeParam + "#";
- break;
- case kunecc:
- baseUrl = "http://kune.cc/" + localeParam + "#";
- break;
- default:
- break;
- }
+ baseUrl = "http://" + SeleniumConf.SITE.getDomain() + "/" + SeleniumConf.SITE.getParams() + "#";
injector = INJECTOR;
webdriver = injector.getInstance(WebDriver.class);
login = injector.getInstance(LoginPageObject.class);
@@ -173,6 +157,10 @@
{ "test1 at localhost", "test" }, { "", "" } };
}
+ public void doScreenshot(final String filename) {
+ SeleniumUtils.doScreenshot(webdriver, filename);
+ }
+
public void get(final String url) {
webdriver.get(url);
}
Modified: trunk/src/test/java/cc/kune/selenium/SeleniumConf.java
===================================================================
--- trunk/src/test/java/cc/kune/selenium/SeleniumConf.java 2011-11-23 21:49:19 UTC (rev 1624)
+++ trunk/src/test/java/cc/kune/selenium/SeleniumConf.java 2011-11-24 00:49:46 UTC (rev 1625)
@@ -30,13 +30,34 @@
}
public enum Site {
- demo, eurosur, kunecc, localhost
+ demo("kune.beta.iepala.es"), eurosur("beta.eurosur.org"), kunecc("kune.cc"), localhost("localhost",
+ "&log_level=INFO&gwt.codesvr=127.0.0.1:9997");
+
+ private String domain;
+ private String params;
+
+ Site(final String domain) {
+ this(domain, "");
+ }
+
+ Site(final String domain, final String params) {
+ this.domain = domain;
+ this.params = "?locale=" + SeleniumConf.LANG + params;
+ }
+
+ public String getDomain() {
+ return domain;
+ }
+
+ public String getParams() {
+ return params;
+ }
}
public static final Driver DRIVER = Driver.firefox;
/* Configure this for use other lang, site, or driver */
- public static final Lang LANG = Lang.en;
- public static final Site SITE = Site.localhost;
+ public static final Lang LANG = Lang.es;
+ public static final Site SITE = Site.eurosur;
public static final int TIMEOUT = 25;
SeleniumConf() {
Modified: trunk/src/test/java/cc/kune/selenium/SeleniumConstants.java
===================================================================
--- trunk/src/test/java/cc/kune/selenium/SeleniumConstants.java 2011-11-23 21:49:19 UTC (rev 1624)
+++ trunk/src/test/java/cc/kune/selenium/SeleniumConstants.java 2011-11-24 00:49:46 UTC (rev 1625)
@@ -19,12 +19,15 @@
*/
package cc.kune.selenium;
+import java.io.File;
+
public final class SeleniumConstants {
public static final String FIREFOX_PROFILE_NAME = "selenium";
public static final String GWTDEV = "gwt-debug-";
public static final String INPUT = "-input";
+ public static final String SCREENSHOTS_DIR = "img" + File.separator + "screenshots" + File.separator;
/* Configure this for use other lang, site, or driver */
public static final String USER_EMAIL = "admin at example.org";
public static final String USER_LONGNAME = "Administrator";
Modified: trunk/src/test/java/cc/kune/selenium/SeleniumUtils.java
===================================================================
--- trunk/src/test/java/cc/kune/selenium/SeleniumUtils.java 2011-11-23 21:49:19 UTC (rev 1624)
+++ trunk/src/test/java/cc/kune/selenium/SeleniumUtils.java 2011-11-24 00:49:46 UTC (rev 1625)
@@ -19,10 +19,16 @@
*/
package cc.kune.selenium;
+import java.io.File;
+import java.io.IOException;
+
+import org.apache.commons.io.FileUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.openqa.selenium.JavascriptExecutor;
+import org.openqa.selenium.OutputType;
import org.openqa.selenium.Point;
+import org.openqa.selenium.TakesScreenshot;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.interactions.Actions;
@@ -35,6 +41,16 @@
private static boolean fastSpeed = true;
private static final Log LOG = LogFactory.getLog(SeleniumUtils.class);
+ public static void doScreenshot(final WebDriver webdriver, final String filename) {
+ final File scrFile = ((TakesScreenshot) webdriver).getScreenshotAs(OutputType.FILE);
+ try {
+ FileUtils.copyFile(scrFile, new File(SeleniumConstants.SCREENSHOTS_DIR + "kune-" + filename
+ + ".png"));
+ } catch (final IOException e) {
+ LOG.info("Cannot take the screen shot", e);
+ }
+ }
+
public static void fastSpeed(final boolean fastSpeed) {
SeleniumUtils.fastSpeed = fastSpeed;
}
@@ -99,7 +115,7 @@
public static void sleep(final int milliseconds) {
try {
- Thread.sleep(fastSpeed ? milliseconds / 10 : milliseconds);
+ Thread.sleep(fastSpeed ? milliseconds / 2 : milliseconds);
} catch (final InterruptedException e) {
Assert.fail("Exception in sleep method", e);
}
Modified: trunk/src/test/java/cc/kune/selenium/chat/ChatPageObject.java
===================================================================
--- trunk/src/test/java/cc/kune/selenium/chat/ChatPageObject.java 2011-11-23 21:49:19 UTC (rev 1624)
+++ trunk/src/test/java/cc/kune/selenium/chat/ChatPageObject.java 2011-11-24 00:49:46 UTC (rev 1625)
@@ -39,6 +39,8 @@
private WebElement chatIcon;
@FindBy(xpath = "//div[14]/div/div/div/div/div/table/tbody/tr/td[2]/div")
private WebElement closeChat;
+ @FindBy(id = "//div[3]/div/div[3]/div/div/div/div[2]/div/div/div/div/div/div")
+ public WebElement firstContact;
@FindBy(id = SeleniumConstants.GWTDEV + "OpenChatWidget-jabberId")
private WebElement jid;
@FindBy(id = SeleniumConstants.GWTDEV + "HablarOpenChat-openAction")
@@ -57,6 +59,11 @@
return findElement(new ByIdOrName(headerId));
}
+ public WebElement getItemMenu(final String groupId, final String jid) {
+ final String id = Idify.id("RosterItemWidget", groupId, Idify.uriId(jid), "roster-menu");
+ return findElement(new ByIdOrName("gwt-debug-" + id));
+ }
+
public WebElement getList(final String uri) {
final String pageId = Idify.uriId(uri);
final String id = "gwt-debug-ChatWidget-list-Chat-" + pageId;
@@ -69,6 +76,11 @@
return findElement(new ByIdOrName(headerId));
}
+ public WebElement getRosterItem(final String groupId, final String jid) {
+ final String id = Idify.id("RosterItemWidget", groupId, Idify.uriId(jid));
+ return findElement(new ByIdOrName("gwt-debug-" + id));
+ }
+
public WebElement getSend(final String uri) {
final String pageId = Idify.uriId(uri);
final String id = "gwt-debug-ChatWidget-send-Chat-" + pageId;
Modified: trunk/src/test/java/cc/kune/selenium/login/RegisterPageObject.java
===================================================================
--- trunk/src/test/java/cc/kune/selenium/login/RegisterPageObject.java 2011-11-23 21:49:19 UTC (rev 1624)
+++ trunk/src/test/java/cc/kune/selenium/login/RegisterPageObject.java 2011-11-24 00:49:46 UTC (rev 1625)
@@ -27,6 +27,7 @@
import cc.kune.core.client.auth.RegisterForm;
import cc.kune.core.client.auth.RegisterPanel;
import cc.kune.selenium.SeleniumConstants;
+import cc.kune.selenium.SeleniumUtils;
public class RegisterPageObject extends AbstractLoginObject {
@@ -48,7 +49,7 @@
}
public void fillRegisterForm(final String nick, final String name, final String pass, final String em,
- final boolean withReturn) {
+ final boolean withReturn, final boolean doScreenshot) {
clearField(shortName);
hightlight(shortName);
shortName.sendKeys(nick);
@@ -62,6 +63,10 @@
hightlight(email);
email.sendKeys(em);
hightlight(registerButton);
+ if (doScreenshot) {
+ SeleniumUtils.doScreenshot(getWebDriver(), "register");
+ sleep(4000);
+ }
if (withReturn) {
email.sendKeys(Keys.RETURN);
} else {
Modified: trunk/src/test/java/cc/kune/selenium/login/RegisterSeleniumTests.java
===================================================================
--- trunk/src/test/java/cc/kune/selenium/login/RegisterSeleniumTests.java 2011-11-23 21:49:19 UTC (rev 1624)
+++ trunk/src/test/java/cc/kune/selenium/login/RegisterSeleniumTests.java 2011-11-24 00:49:46 UTC (rev 1625)
@@ -24,6 +24,7 @@
import cc.kune.core.client.state.SiteTokens;
import cc.kune.selenium.KuneSeleniumTest;
+import cc.kune.selenium.SeleniumConf;
import cc.kune.selenium.SeleniumConstants;
import cc.kune.selenium.SeleniumUtils;
@@ -42,51 +43,55 @@
final String prefix = getTempString();
showTitleSlide(t("User registration"), t("to get full access to this site tools/contents"));
login.createOne();
- register.fillRegisterForm(shortName + prefix, longName + prefix, passwd, prefix + email, false);
+ register.fillRegisterForm(shortName + prefix, longName + prefix, passwd, prefix + email, false, true);
+ doScreenshot("register");
sleep(1000);
login.assertIsConnectedAs(prefix);
entityHeader.waitForEntityTitle(longName + prefix);
register.getWelcomeMsg().click();
- // // home space
- // showTitleSlide(t("Home space (your welcome page)"),
- // t("Here you can see a summary of your activity in this site"));
- // spaces.homeBtn().click();
- // sleep(2000);
- // homeSpace.getSndStats().click();
- // sleep(2000);
- // homeSpace.getTrdStats().click();
- // sleep(2000);
- //
- // // user space
- // showTitleSlide(t("User space (your Inbox)"),
- // t("contents in which you participate"));
- // showTooltip(spaces.userBtn());
- // spaces.userBtn().click();
- // showMsg(t("You can see this like an advanced email system..."));
- // userSpace.getFirstWave().click();
- // sleep(2000);
- // userSpace.getNewWave().click();
- // showMsg(t("where you can compose personal messages..."));
- // showMsg(t("but also create contents to publish later"));
- // userSpace.rootBlipText().sendKeys(t("Congratulations for your report\n\n"));
- // sleep(1000);
- // userSpace.getCursive().click();
- // userSpace.rootBlipText().sendKeys(
- // t("Hi there, Just to say that I like") +
- // t("a lot your last report\n\n"));
- // sleep(1000);
- // userSpace.getCursive().click();
- // userSpace.rootBlipText().sendKeys(t("Best\n\nJane"));
- // sleep(3000);
- // userSpace.getRootEdit().click();
- // userSpace.getAddParcipant().click();
- // answerOnNextPrompt("admin");
- // sleep(5000);
+ // home space
+ showTitleSlide(t("Home space (your welcome page)"),
+ t("Here you can see a summary of your activity in this site"));
+ site.homeBtn().click();
+ sleep(2000);
+ homeSpace.getSndStats().click();
+ sleep(2000);
+ homeSpace.getTrdStats().click();
+ sleep(2000);
+ // user space
+ showTitleSlide(t("User space (your Inbox)"), t("contents in which you participate"));
+ showTooltip(site.userBtn());
+ site.userBtn().click();
+ showMsg(t("You can see this like an advanced email system..."));
+ userSpace.getFirstWave().click();
+ sleep(2000);
+ userSpace.getNewWave().click();
+ showMsg(t("where you can compose personal messages..."));
+ showMsg(t("but also create contents to publish later"));
+ userSpace.rootBlipText().sendKeys(t("Congratulations for your report\n\n"));
+ sleep(1000);
+ userSpace.getCursive().click();
+ userSpace.rootBlipText().sendKeys(
+ t("Hi there, Just to say that I like") + t("a lot your last report\n\n"));
+ sleep(1000);
+ userSpace.getCursive().click();
+ userSpace.rootBlipText().sendKeys(t("Best\n\nJane"));
+ sleep(3000);
+ userSpace.getRootEdit().click();
+ userSpace.getAddParcipant().click();
+ sleep(1000);
+ answerOnNextPrompt("admin");
+ sleep(5000);
+
// group space
showTitleSlide(t("Your personal public space"), t("here you can have your blog, etc"));
+ sleep(500);
site.groupBtn().click();
+ site.groupBtn().click();
+ showMsg(t("Let's start adding some buddie to our social network"));
+ sleep(1000);
groupSpace.addBuddieBtn().click();
groupSpace.addNewBuddieTextBox.click();
groupSpace.addNewBuddieTextBox.sendKeys("admin");
@@ -94,22 +99,24 @@
sleep(500);
groupSpace.firstFromSuggestionBox.click();
site.confirmationOk.click();
+ sleep(500);
groupSpace.searchEntitiesOk().click();
- groupSpace.firstAvatarOfGroup().click();
+ // groupSpace.firstAvatarOfGroup().click();
sleep(2000);
- // chat
showTitleSlide(t("Chat with your buddies"), t("compatible with gmail and similars"),
SiteTokens.WAVEINBOX);
// showTooltip(chat.icon());
chat.show();
- sleep(3000);
+ sleep(2000);
- final XmppURI jid = XmppURI.jid(SeleniumConstants.USER_EMAIL);
+ final XmppURI jid = XmppURI.jid(SeleniumConstants.USER_SHORNAME + "@"
+ + SeleniumConf.SITE.getDomain());
final String jids = jid.toString();
- showMsg(t("We need to add buddies (contacts) before chat with them"));
- chat.openChat(jid);
+ chat.getRosterItem("", jids).click();
+ // chat.openChat(jid);
+
// chat.getPage(jids).click();
chat.getTalkBox(jids).sendKeys(t("Helloo... ;)"));
chat.getSend(jids).click();
@@ -129,6 +136,9 @@
sleep(2000);
showMsg(t("Browser history forward"));
browserForward();
+ sleep(1000);
+ showMsg(t("And more options for your contacts"));
+ chat.getItemMenu("", jids).click();
chat.getTalkBox(jids).sendKeys(t("goodbye!"));
chat.getSend(jids).click();
sleep(1000);
More information about the kune-commits
mailing list