Skip to content
Browse files

Fixes problem with working day detection, bumped version to 1.3.4, re…

…moved unneeded files
  • Loading branch information...
1 parent 4e463e0 commit 77289fc6f4a268892b9e615f991ddc4ace451bc8 Timo Haberkern committed Jan 19, 2012
Showing with 9,486 additions and 9,496 deletions.
  1. +10 −10 .gitignore
  2. +24 −24 LICENSE
  3. +40 −40 README.md
  4. +4 −4 apps/frontend/config/app.yml
  5. +664 −664 apps/frontend/i18n/messages.de.xml
  6. +174 −174 apps/frontend/modules/account/actions/actions.class.php
  7. +56 −56 apps/frontend/modules/account/templates/indexSuccess.php
  8. +236 −236 apps/frontend/modules/adminProject/actions/actions.class.php
  9. +167 −167 apps/frontend/modules/adminProject/templates/_projectroles.php
  10. +41 −41 apps/frontend/modules/adminProject/templates/editUserProjectRoleSuccess.php
  11. +77 −77 apps/frontend/modules/adminProject/templates/listSuccess.php
  12. +121 −121 apps/frontend/modules/adminRole/actions/actions.class.php
  13. +52 −52 apps/frontend/modules/adminRole/templates/listSuccess.php
  14. +57 −57 apps/frontend/modules/adminSettings/actions/actions.class.php
  15. +59 −59 apps/frontend/modules/adminSettings/templates/_form.php
  16. +9 −9 apps/frontend/modules/adminSettings/templates/editSuccess.php
  17. +116 −116 apps/frontend/modules/adminTimeItemType/actions/actions.class.php
  18. +61 −61 apps/frontend/modules/adminTimeItemType/templates/listSuccess.php
  19. +193 −193 apps/frontend/modules/adminUser/actions/actions.class.php
  20. +66 −66 apps/frontend/modules/adminUser/templates/_form.php
  21. +36 −36 apps/frontend/modules/adminUser/templates/_welcomeMail.php
  22. +82 −82 apps/frontend/modules/adminUser/templates/listSuccess.php
  23. +48 −48 apps/frontend/modules/dashboard/actions/actions.class.php
  24. +115 −115 apps/frontend/modules/dashboard/templates/indexSuccess.php
  25. +5 −5 apps/frontend/modules/login/templates/.svn/text-base/credentialSuccess.php.svn-base
  26. +42 −42 apps/frontend/modules/login/templates/.svn/text-base/indexSuccess.php.svn-base
  27. +3 −3 apps/frontend/modules/login/templates/credentialSuccess.php
  28. +112 −112 apps/frontend/modules/login/templates/indexSuccess.php
  29. +109 −109 apps/frontend/modules/report/actions/actions.class.php
  30. +65 −65 apps/frontend/modules/report/templates/lastBookingsSuccess.php
  31. +24 −24 apps/frontend/modules/setting/actions/actions.class.php
  32. +23 −23 apps/frontend/modules/share/actions/actions.class.php
  33. +2 −2 apps/frontend/modules/share/templates/secureSuccess.php
  34. +148 −148 apps/frontend/modules/timesheet/actions/actions.class.php
  35. +21 −21 apps/frontend/modules/timesheet/templates/_timeitem.php
  36. +314 −314 apps/frontend/modules/timesheet/templates/indexSuccess.php
  37. +66 −66 apps/frontend/templates/layout.php
  38. +34 −34 apps/frontend/templates/login.php
  39. +17 −17 config/ProjectConfiguration.class.php
  40. +17 −17 config/ProjectConfiguration.class.php.dist
  41. +15 −15 config/app.yml.dist
  42. +140 −140 config/doctrine/schema.yml
  43. +0 −10 config/my_databases.yml
  44. +267 −267 data/fixtures/demo.yml
  45. +43 −43 lib/de/shiftup/timeboxx/AccountConfigWriter.class.php
  46. +44 −44 lib/de/shiftup/timeboxx/TimeItemSelector.php
  47. +16 −16 lib/filter/doctrine/AccountFormFilter.class.php
  48. +16 −16 lib/filter/doctrine/BaseFormFilterDoctrine.class.php
  49. +16 −16 lib/filter/doctrine/CredentialFormFilter.class.php
  50. +16 −16 lib/filter/doctrine/MissingTimeItemEntryFormFilter.class.php
  51. +16 −16 lib/filter/doctrine/ProjectFormFilter.class.php
  52. +16 −16 lib/filter/doctrine/ProjectUserFormFilter.class.php
  53. +16 −16 lib/filter/doctrine/RoleCredentialFormFilter.class.php
  54. +16 −16 lib/filter/doctrine/RoleFormFilter.class.php
  55. +16 −16 lib/filter/doctrine/SettingFormFilter.class.php
  56. +16 −16 lib/filter/doctrine/TimeItemTypeFormFilter.class.php
  57. +16 −16 lib/filter/doctrine/TimeLogItemFormFilter.class.php
  58. +16 −16 lib/filter/doctrine/TokenFormFilter.class.php
  59. +16 −16 lib/filter/doctrine/UserFormFilter.class.php
  60. +36 −36 lib/form/doctrine/AccountForm.class.php
  61. +16 −16 lib/form/doctrine/BaseFormDoctrine.class.php
  62. +16 −16 lib/form/doctrine/CredentialForm.class.php
  63. +16 −16 lib/form/doctrine/MissingTimeItemEntryForm.class.php
  64. +62 −62 lib/form/doctrine/ProjectForm.class.php
  65. +16 −16 lib/form/doctrine/ProjectUserForm.class.php
  66. +16 −16 lib/form/doctrine/RoleCredentialForm.class.php
  67. +26 −26 lib/form/doctrine/RoleForm.class.php
  68. +25 −25 lib/form/doctrine/SettingForm.class.php
  69. +32 −32 lib/form/doctrine/TimeItemTypeForm.class.php
  70. +16 −16 lib/form/doctrine/TimeLogItemForm.class.php
  71. +16 −16 lib/form/doctrine/TokenForm.class.php
  72. +79 −79 lib/form/doctrine/UserForm.class.php
  73. +918 −918 lib/helper/FormHelper.php
  74. +329 −329 lib/helper/ObjectHelper.php
  75. +55 −55 lib/migration/doctrine/1282037675_addtbaccount.php
  76. +46 −46 lib/migration/doctrine/1282037676_addtbproject.php
  77. +41 −41 lib/migration/doctrine/1282037677_addtbprojectuser.php
  78. +36 −36 lib/migration/doctrine/1282037678_addtbsettings.php
  79. +41 −41 lib/migration/doctrine/1282037679_addtbtimeitemtype.php
  80. +63 −63 lib/migration/doctrine/1282037680_addtbtimelogitem.php
  81. +63 −63 lib/migration/doctrine/1282037681_addtbuser.php
  82. +55 −55 lib/migration/doctrine/1282037682_addfks.php
  83. +60 −60 lib/migration/doctrine/1282048885_version9.php
  84. +30 −30 lib/migration/doctrine/1282048886_version10.php
  85. +22 −22 lib/migration/doctrine/1282312900_version11.php
  86. +18 −18 lib/migration/doctrine/1282317580_version12.php
  87. +17 −17 lib/migration/doctrine/1282567474_version13.php
  88. +15 −15 lib/migration/doctrine/1289813440_version14.php
  89. +16 −16 lib/migration/doctrine/1289814130_version15.php
  90. +44 −44 lib/migration/doctrine/1289818433_version16.php
  91. +45 −45 lib/migration/doctrine/1289818434_version17.php
  92. +19 −19 lib/migration/doctrine/1291123202_version18.php
  93. +16 −16 lib/migration/doctrine/1291128496_version19.php
  94. +16 −16 lib/migration/doctrine/1291129643_version20.php
  95. +19 −19 lib/migration/doctrine/1291129953_version21.php
  96. +16 −16 lib/migration/doctrine/1291363984_version22.php
  97. +60 −60 lib/migration/doctrine/1292421897_version23.php
  98. +30 −30 lib/migration/doctrine/1292421898_version24.php
  99. +58 −58 lib/migration/doctrine/1292424450_version25.php
  100. +45 −45 lib/migration/doctrine/1292424451_version26.php
  101. +17 −17 lib/migration/doctrine/1295344340_version27.php
  102. +26 −26 lib/migration/doctrine/1295344606_addbasecredentials.php
  103. +18 −18 lib/migration/doctrine/1295346578_renametstablenames.php
  104. +16 −16 lib/migration/doctrine/1295347621_version30.php
  105. +16 −16 lib/migration/doctrine/1295360214_version31.php
  106. +30 −30 lib/migration/doctrine/1295360215_version32.php
  107. +17 −17 lib/migration/doctrine/1295518085_version33.php
  108. +16 −16 lib/migration/doctrine/1295530117_version34.php
  109. +16 −16 lib/migration/doctrine/1300264610_version35.php
  110. +16 −16 lib/migration/doctrine/1300265404_version36.php
  111. +15 −15 lib/model/doctrine/Credential.class.php
  112. +41 −41 lib/model/doctrine/CredentialTable.class.php
  113. +15 −15 lib/model/doctrine/MissingTimeItemEntry.class.php
  114. +43 −43 lib/model/doctrine/MissingTimeItemEntryTable.class.php
  115. +44 −44 lib/model/doctrine/ProjectUserTable.class.php
  116. +25 −25 lib/model/doctrine/Role.class.php
  117. +15 −15 lib/model/doctrine/RoleCredential.class.php
  118. +18 −18 lib/model/doctrine/RoleCredentialTable.class.php
  119. +30 −30 lib/model/doctrine/RoleTable.class.php
  120. +141 −141 lib/model/doctrine/TimeLogItemTable.class.php
  121. +50 −50 lib/model/doctrine/Token.class.php
  122. +33 −33 lib/model/doctrine/TokenTable.class.php
  123. +53 −53 lib/model/doctrine/UserTable.class.php
  124. +100 −100 lib/task/timehiveCheckmissingbookingsTask.class.php
  125. +112 −112 lib/task/timehiveInstallTask.class.php
  126. +19 −19 test/functional/frontend/accountActionsTest.php
  127. +19 −19 test/functional/frontend/adminActionsTest.php
  128. +19 −19 test/functional/frontend/adminProjectActionsTest.php
  129. +19 −19 test/functional/frontend/adminRoleActionsTest.php
  130. +19 −19 test/functional/frontend/adminSettingsActionsTest.php
  131. +19 −19 test/functional/frontend/adminTimeItemTypeActionsTest.php
  132. +19 −19 test/functional/frontend/adminUserActionsTest.php
  133. +19 −19 test/functional/frontend/dashboardActionsTest.php
  134. +19 −19 test/functional/frontend/reportActionsTest.php
  135. +19 −19 test/functional/frontend/settingActionsTest.php
  136. +19 −19 test/functional/frontend/shareActionsTest.php
  137. +19 −19 test/functional/frontend/testActionsTest.php
  138. +19 −19 test/functional/frontend/timesheetActionsTest.php
  139. +10 −10 timeboxx_reloaded_sf.iml
  140. +6 −6 web/backend_dev.php
  141. +725 −725 web/css/flexigrid/flexigrid.css
  142. +390 −390 web/css/themes/black.css
  143. +393 −393 web/css/themes/blue.css
Sorry, we could not display the entire diff because it was too big.
View
20 .gitignore
@@ -1,11 +1,11 @@
-cache/*
-log/*
-config/app.yml
-config/databases.yml
-nbproject
-web/web.config
-lib/filter/doctrine/base/*
-lib/model/doctrine/base/*
-lib/form/doctrine/base/*
-.idea
+cache/*
+log/*
+config/app.yml
+config/databases.yml
+nbproject
+web/web.config
+lib/filter/doctrine/base/*
+lib/model/doctrine/base/*
+lib/form/doctrine/base/*
+.idea
*.iml
View
48 LICENSE
@@ -1,25 +1,25 @@
-Copyright (c) 2011, Timo Haberkern <Timo.Haberkern@shift-up.de>
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above copyright notice,
- this list of conditions and the following disclaimer in the documentation
- and/or other materials provided with the distribution.
- * Neither the name of the <ORGANIZATION> nor the names of its contributors
- may be used to endorse or promote products derived from this software
- without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
-INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
-OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
+Copyright (c) 2011, Timo Haberkern <Timo.Haberkern@shift-up.de>
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+ * Neither the name of the <ORGANIZATION> nor the names of its contributors
+ may be used to endorse or promote products derived from this software
+ without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
OF THE POSSIBILITY OF SUCH DAMAGE.
View
80 README.md
@@ -1,40 +1,40 @@
-TimeHive
-===========
-TimeHive is a open-source webbased timesheet/time tracking software developed with PHP (Symfony Framework).
-You can follow TimeHive on Twitter if you want to keep up to date: [TimeHive on Twitter](http://www.twitter.com/timehive)
-
-You can find the Issue-Tracker on [Lighthouse](http://timehive.lighthouseapp.com/projects/71615-timehive)
-
-System requirements
--------------------
-Client: The current development version of TimeHive is only tested with Firefox browsers. There is no guarantee that it work with other browsers at the moment.
-Server: Every webserver with PHP 5.2.x or higher should be capable to run TimeHive.
-
-There will be a hosted version of TimeHive in the future.
-
-Language versions
--------------------
-TimeHive is only available in english and german at the moment. Let me know if you want to help with translating to other languages.
-
-Installation
-------------
-At the moment there is no installation automatic process to help you doing a proper installation of Timehive. For now you have to do the following steps manually
-
-1. Get your copy of TimeHive via [GitHub](https://github.com/thaberkern/timehive).
-
- * Please use the official download-package for this. Only these package including the needed Symfony-Libraries! The current release package is [V.1.3.3](https://github.com/downloads/thaberkern/timehive/timehive-1.3.3.zip)
-
-2. Copy the sourcecode to one of your Webservers.
-3. Create a virtual host with the web-directory as the root-folder. If you have an existing Webserver with a given file structure rename the webfolder with the root folder of your webserver. Do not (!!) copy the entire timehive folder to the root folder!
-4. Start running the commanline-installer with the following command. This installer will guide you through some questions to complete you installation
-
- php symfony timehive:install --env=prod
-
-5. If you want to use automatic reminder E-Mails you need to add the following command to a cronjob (Once a day, for example at 22:00 o'clock)
-
- php symfony timehive:check-missing-bookings --env=prod --application=frontend
-
-6. You are done! Open your browser and log in :)
-
-
-
+TimeHive
+===========
+TimeHive is a open-source webbased timesheet/time tracking software developed with PHP (Symfony Framework).
+You can follow TimeHive on Twitter if you want to keep up to date: [TimeHive on Twitter](http://www.twitter.com/timehive)
+
+You can find the Issue-Tracker on [Lighthouse](http://timehive.lighthouseapp.com/projects/71615-timehive)
+
+System requirements
+-------------------
+Client: The current development version of TimeHive is only tested with Firefox browsers. There is no guarantee that it work with other browsers at the moment.
+Server: Every webserver with PHP 5.2.x or higher should be capable to run TimeHive.
+
+There will be a hosted version of TimeHive in the future.
+
+Language versions
+-------------------
+TimeHive is only available in english and german at the moment. Let me know if you want to help with translating to other languages.
+
+Installation
+------------
+At the moment there is no installation automatic process to help you doing a proper installation of Timehive. For now you have to do the following steps manually
+
+1. Get your copy of TimeHive via [GitHub](https://github.com/thaberkern/timehive).
+
+ * Please use the official download-package for this. Only these package including the needed Symfony-Libraries! The current release package is [V.1.3.3](https://github.com/downloads/thaberkern/timehive/timehive-1.3.3.zip)
+
+2. Copy the sourcecode to one of your Webservers.
+3. Create a virtual host with the web-directory as the root-folder. If you have an existing Webserver with a given file structure rename the webfolder with the root folder of your webserver. Do not (!!) copy the entire timehive folder to the root folder!
+4. Start running the commanline-installer with the following command. This installer will guide you through some questions to complete you installation
+
+ php symfony timehive:install --env=prod
+
+5. If you want to use automatic reminder E-Mails you need to add the following command to a cronjob (Once a day, for example at 22:00 o'clock)
+
+ php symfony timehive:check-missing-bookings --env=prod --application=frontend
+
+6. You are done! Open your browser and log in :)
+
+
+
View
8 apps/frontend/config/app.yml
@@ -1,5 +1,5 @@
-all:
- version: 1.3.3
-
- user:
+all:
+ version: 1.3.4
+
+ user:
cultures: [de,en]
View
1,328 apps/frontend/i18n/messages.de.xml
@@ -1,664 +1,664 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE xliff PUBLIC "-//XLIFF//DTD XLIFF//EN" "http://www.oasis-open.org/committees/xliff/documents/xliff.dtd">
-<xliff version="1.0">
- <file source-language="en" target-language="de" datatype="plain" date="2011-01-21T15:06:58Z">
- <body>
- <trans-unit id="1">
- <source>My account</source>
- <target>Mein Konto</target>
- </trans-unit>
- <trans-unit id="2">
- <source>Sign out</source>
- <target>Abmelden</target>
- </trans-unit>
- <trans-unit id="4">
- <source>Dashboard</source>
- <target>Startseite</target>
- </trans-unit>
- <trans-unit id="5">
- <source>Administration</source>
- <target>Administration</target>
- </trans-unit>
- <trans-unit id="6">
- <source>Timesheet</source>
- <target>Zeiterfassung</target>
- </trans-unit>
- <trans-unit id="7">
- <source>Reports</source>
- <target>Auswertungen</target>
- </trans-unit>
- <trans-unit id="8">
- <source>Settings</source>
- <target>Einstellungen</target>
- </trans-unit>
- <trans-unit id="9">
- <source>Credentials missing!</source>
- <target>Fehlende Berechtigung(en)!</target>
- </trans-unit>
- <trans-unit id="10">
- <source>You doesn't have the needed user rights to access this function!</source>
- <target>Sie verfügen nicht über die notwendigen Berechtigungen, um mit dieser Funktion zu arbeiten!</target>
- </trans-unit>
- <trans-unit id="11">
- <source>Login failed!</source>
- <target>Anmeldung fehlgeschlagen!</target>
- </trans-unit>
- <trans-unit id="12">
- <source>Either your password or username was wrong. Please try again!</source>
- <target>Ihr Passwort oder Benutzername war falsch. Bitte versuchen Sie es erneut!</target>
- </trans-unit>
- <trans-unit id="13">
- <source>Username</source>
- <target>Benutzername</target>
- </trans-unit>
- <trans-unit id="14">
- <source>Password</source>
- <target>Passwort</target>
- </trans-unit>
- <trans-unit id="15">
- <source>Keep logged in</source>
- <target>Angemeldet bleiben</target>
- </trans-unit>
- <trans-unit id="16">
- <source>Lost password</source>
- <target>Passwort vergessen</target>
- </trans-unit>
- <trans-unit id="17">
- <source>Login</source>
- <target>Anmelden</target>
- </trans-unit>
- <trans-unit id="18">
- <source>Filter</source>
- <target>Filter</target>
- </trans-unit>
- <trans-unit id="19">
- <source>Name</source>
- <target>Name</target>
- </trans-unit>
- <trans-unit id="20">
- <source>Number</source>
- <target>Nummer</target>
- </trans-unit>
- <trans-unit id="22">
- <source>All</source>
- <target>Alle</target>
- </trans-unit>
- <trans-unit id="23">
- <source>User</source>
- <target>Benutzer</target>
- </trans-unit>
- <trans-unit id="25">
- <source>OK</source>
- <target>OK</target>
- </trans-unit>
- <trans-unit id="26">
- <source>Projects</source>
- <target>Projekte</target>
- </trans-unit>
- <trans-unit id="29">
- <source>Roles</source>
- <target>Rollen</target>
- </trans-unit>
- <trans-unit id="30">
- <source>Time item types</source>
- <target>Zeiterfassungskategorien</target>
- </trans-unit>
- <trans-unit id="31">
- <source>There were errors</source>
- <target>Es sind Fehler aufgetreten</target>
- </trans-unit>
- <trans-unit id="32">
- <source>Message</source>
- <target>Nachricht</target>
- </trans-unit>
- <trans-unit id="33">
- <source>Missing Booking</source>
- <target>Fehlende Buchung</target>
- </trans-unit>
- <trans-unit id="34">
- <source>Hello %1% %2%,</source>
- <target>Hallo %1% %2%,</target>
- </trans-unit>
- <trans-unit id="35">
- <source>you have not entered a time entry for the %1% so far.</source>
- <target>Sie haben noch keine Buchung für den %1% durchgeführt</target>
- </trans-unit>
- <trans-unit id="36">
- <source>You can enter your data under:</source>
- <target>Sie können diese Daten unter der folgenden URL eintragen:</target>
- </trans-unit>
- <trans-unit id="37">
- <source>Something went wrong with your password request. Please try again</source>
- <target>Etwas ist beim Anfordern Ihres Passwortes schief gegangen. Bitte versuchen Sie es erneut</target>
- </trans-unit>
- <trans-unit id="38">
- <source>Password must be at least 6 characters long</source>
- <target>Passwort muss mindestens 6 Zeichen lang sein</target>
- </trans-unit>
- <trans-unit id="39">
- <source>Password and confirmation must be identical</source>
- <target>Passwort und Wiederholung müssen übereinstimmen</target>
- </trans-unit>
- <trans-unit id="40">
- <source>Your password was changed successfully. Please login again.</source>
- <target>Ihr Passwort wurde erfolgreich geändert. Bitte erneut einloggen.</target>
- </trans-unit>
- <trans-unit id="41">
- <source>There is a problem with your token. Password can not be changed</source>
- <target>Es gab ein Problem mit Ihrem Token. Das Passwort konnte nicht geändert werden</target>
- </trans-unit>
- <trans-unit id="42">
- <source>Your TimeHive password</source>
- <target>Ihr TimeHive Passwort</target>
- </trans-unit>
- <trans-unit id="43">
- <source>An email with instructions to choose a new password has been sent to you.</source>
- <target>Eine E-Mail mit Anweisungen zum Ändern des Passwortes wurde per E-Mail an Sie verschickt.</target>
- </trans-unit>
- <trans-unit id="44">
- <source>There is no such e-mail address in the our database!</source>
- <target>Eine solche E-Mail-Addresse existiert nicht in der Datenbank</target>
- </trans-unit>
- <trans-unit id="45">
- <source>My Account Settings</source>
- <target>Meine Konto-Einstellungen</target>
- </trans-unit>
- <trans-unit id="46">
- <source>Saved element successfully</source>
- <target>Eintrag erfolgreich gespeichert</target>
- </trans-unit>
- <trans-unit id="47">
- <source>Save</source>
- <target>Speichern</target>
- </trans-unit>
- <trans-unit id="48">
- <source>Confirm password</source>
- <target>Passwort bestätigen</target>
- </trans-unit>
- <trans-unit id="49">
- <source>Change Password</source>
- <target>Passwort ändern</target>
- </trans-unit>
- <trans-unit id="50">
- <source>To change your password, click on the following link</source>
- <target>Um Ihr Passwort zu ändern klicken Sie bitte den folgenden Link</target>
- </trans-unit>
- <trans-unit id="51">
- <source>New project</source>
- <target>Neues Projekt</target>
- </trans-unit>
- <trans-unit id="52">
- <source>Role(s)</source>
- <target>Rolle(n)</target>
- </trans-unit>
- <trans-unit id="53">
- <source>You have reached the maximum amount of projects for your type of account. Please upgrade if you want to add another project.</source>
- <target>Sie haben das Maximum an Projekten für Ihren Account-Typ erreicht. Bitte upgraden Sie, wenn Sie weitere Projekte anlegen wollen.</target>
- </trans-unit>
- <trans-unit id="54">
- <source>Owner</source>
- <target>Besitzer</target>
- </trans-unit>
- <trans-unit id="55">
- <source>Created at</source>
- <target>Erstellt am</target>
- </trans-unit>
- <trans-unit id="56">
- <source>Locked</source>
- <target>Gesperrt</target>
- </trans-unit>
- <trans-unit id="57">
- <source>Actions</source>
- <target>Aktionen</target>
- </trans-unit>
- <trans-unit id="58">
- <source>with selected do</source>
- <target>Auswahl</target>
- </trans-unit>
- <trans-unit id="59">
- <source>lock</source>
- <target>sperren</target>
- </trans-unit>
- <trans-unit id="60">
- <source>delete</source>
- <target>löschen</target>
- </trans-unit>
- <trans-unit id="61">
- <source>edit</source>
- <target>bearbeiten</target>
- </trans-unit>
- <trans-unit id="62">
- <source>Project</source>
- <target>Projekt</target>
- </trans-unit>
- <trans-unit id="63">
- <source>Userroles</source>
- <target>Benutzerrollen</target>
- </trans-unit>
- <trans-unit id="64">
- <source>You need to save a project before you can add user with their roles</source>
- <target>Sie müssen das Projekt speichern, bevor Sie Benutzer hinzufügen können</target>
- </trans-unit>
- <trans-unit id="65">
- <source>Back to list</source>
- <target>Zurück zur Liste</target>
- </trans-unit>
- <trans-unit id="66">
- <source>Add</source>
- <target>Hinzufügen</target>
- </trans-unit>
- <trans-unit id="67">
- <source>Edit</source>
- <target>Bearbeiten</target>
- </trans-unit>
- <trans-unit id="68">
- <source>Delete</source>
- <target>Löschen</target>
- </trans-unit>
- <trans-unit id="69">
- <source>Really delete this user project role?</source>
- <target>Diese Benutzer-Projekt-Rolle wirklich löschen?</target>
- </trans-unit>
- <trans-unit id="70">
- <source>Loading</source>
- <target>Lade</target>
- </trans-unit>
- <trans-unit id="71">
- <source>Edit project-user-relation</source>
- <target>Benutzer-Projekt-Rolle bearbeiten</target>
- </trans-unit>
- <trans-unit id="72">
- <source>Add project-user-relation</source>
- <target>Benutzer-Projekt-Rolle hinzufügen</target>
- </trans-unit>
- <trans-unit id="73">
- <source>New Role</source>
- <target>Neue Rolle</target>
- </trans-unit>
- <trans-unit id="74">
- <source>Rolename</source>
- <target>Rollenname</target>
- </trans-unit>
- <trans-unit id="75">
- <source>Check all</source>
- <target>Alle auswählen</target>
- </trans-unit>
- <trans-unit id="76">
- <source>Uncheck all</source>
- <target>Auswahl aufheben</target>
- </trans-unit>
- <trans-unit id="77">
- <source>Account-Plan</source>
- <target>Account-Plan</target>
- </trans-unit>
- <trans-unit id="78">
- <source>unlimited</source>
- <target>unbegrenzt</target>
- </trans-unit>
- <trans-unit id="80">
- <source>Workingdays</source>
- <target>Arbeitstage</target>
- </trans-unit>
- <trans-unit id="81">
- <source>Monday</source>
- <target>Montag</target>
- </trans-unit>
- <trans-unit id="82">
- <source>Tuesday</source>
- <target>Dienstag</target>
- </trans-unit>
- <trans-unit id="83">
- <source>Wednesday</source>
- <target>Mittwoch</target>
- </trans-unit>
- <trans-unit id="84">
- <source>Thursday</source>
- <target>Donnerstag</target>
- </trans-unit>
- <trans-unit id="85">
- <source>Friday</source>
- <target>Freitag</target>
- </trans-unit>
- <trans-unit id="86">
- <source>Saturday</source>
- <target>Samstag</target>
- </trans-unit>
- <trans-unit id="87">
- <source>Sunday</source>
- <target>Sonntag</target>
- </trans-unit>
- <trans-unit id="88">
- <source>New Time item type</source>
- <target>Neue Zeiterfassungskategorie</target>
- </trans-unit>
- <trans-unit id="89">
- <source>Default</source>
- <target>Standard</target>
- </trans-unit>
- <trans-unit id="90">
- <source>default</source>
- <target>Standard</target>
- </trans-unit>
- <trans-unit id="91">
- <source>set as default</source>
- <target>als Standard verwenden</target>
- </trans-unit>
- <trans-unit id="92">
- <source>Time item type</source>
- <target>Zeiterfassungskategorie</target>
- </trans-unit>
- <trans-unit id="93">
- <source>New user</source>
- <target>Neuen Benutzer</target>
- </trans-unit>
- <trans-unit id="94">
- <source>You have reached the maximum amount of users for your type of account. Please upgrade if you want to add another user.</source>
- <target>Sie haben die Maximale Anzahl an Benutzern für Ihren Account erreicht. Bitte upgraden Sie, wenn Sie weitere Benutzer hinzufügen wollen.</target>
- </trans-unit>
- <trans-unit id="95">
- <source>Status</source>
- <target>Status</target>
- </trans-unit>
- <trans-unit id="96">
- <source>deactivate</source>
- <target>deaktivieren</target>
- </trans-unit>
- <trans-unit id="97">
- <source>Administrator</source>
- <target>Administrator</target>
- </trans-unit>
- <trans-unit id="98">
- <source>Boss-Mode</source>
- <target>Chef-Modus</target>
- </trans-unit>
- <trans-unit id="99">
- <source>My last time bookings</source>
- <target>Meine letzten Buchungen</target>
- </trans-unit>
- <trans-unit id="100">
- <source>Date</source>
- <target>Datum</target>
- </trans-unit>
- <trans-unit id="101">
- <source>Amount (hours)</source>
- <target>Anzahl (Stunden)</target>
- </trans-unit>
- <trans-unit id="102">
- <source>Type</source>
- <target>Kategorie</target>
- </trans-unit>
- <trans-unit id="103">
- <source>Show</source>
- <target>Anzeigen</target>
- </trans-unit>
- <trans-unit id="104">
- <source>entries</source>
- <target>Einträge</target>
- </trans-unit>
- <trans-unit id="105">
- <source>My total time per project</source>
- <target>Meine Buchungssumme pro Projekt</target>
- </trans-unit>
- <trans-unit id="106">
- <source>Show for</source>
- <target>Anzeigen für</target>
- </trans-unit>
- <trans-unit id="107">
- <source>overall</source>
- <target>Gesamt</target>
- </trans-unit>
- <trans-unit id="108">
- <source>this week</source>
- <target>diese Woche</target>
- </trans-unit>
- <trans-unit id="109">
- <source>last week</source>
- <target>letzte Woche</target>
- </trans-unit>
- <trans-unit id="110">
- <source>this month</source>
- <target>diesen Monat</target>
- </trans-unit>
- <trans-unit id="111">
- <source>last month</source>
- <target>letzten Monat</target>
- </trans-unit>
- <trans-unit id="112">
- <source>Days without bookings</source>
- <target>Tage ohne Buchung</target>
- </trans-unit>
- <trans-unit id="113">
- <source>There is no day without bookings</source>
- <target>Es gibt keine Tage ohne Buchung</target>
- </trans-unit>
- <trans-unit id="114">
- <source>first</source>
- <target>Abfang</target>
- </trans-unit>
- <trans-unit id="115">
- <source>previous</source>
- <target>zurück</target>
- </trans-unit>
- <trans-unit id="116">
- <source>next</source>
- <target>weiter</target>
- </trans-unit>
- <trans-unit id="117">
- <source>last</source>
- <target>Ende</target>
- </trans-unit>
- <trans-unit id="118">
- <source>Your user is locked, you can not use TimeHive anymore!</source>
- <target>Ihr Benutzer ist gesperrt. Sie können TimeHive nicht nutzen!</target>
- </trans-unit>
- <trans-unit id="119">
- <source>Please enter your E-Mail address. You will receive an e-mail with detailed instructions.</source>
- <target>Bitte geben Sie Ihre E-Mail Adresse ein. Sie werden eine Nachricht mit detailierten Anweisungen bekommen.</target>
- </trans-unit>
- <trans-unit id="120">
- <source>E-Mail-Address</source>
- <target>E-Mail-Adresse</target>
- </trans-unit>
- <trans-unit id="121">
- <source>Send Request</source>
- <target>Anfrage senden</target>
- </trans-unit>
- <trans-unit id="122">
- <source>Comment</source>
- <target>Kommentar</target>
- </trans-unit>
- <trans-unit id="123">
- <source>You are not allowed to show other users data</source>
- <target>Sie besitzen nicht die Rechte, um Daten anderer Benutzer anzuzeigen</target>
- </trans-unit>
- <trans-unit id="124">
- <source>There are no bookings for this filter settings</source>
- <target>Es existieren keine Buchungen für diese Filtereinstellungen</target>
- </trans-unit>
- <trans-unit id="125">
- <source>Effort</source>
- <target>Aufwand</target>
- </trans-unit>
- <trans-unit id="126">
- <source>Total hours (days)</source>
- <target>Gesamtstunden (-tage)</target>
- </trans-unit>
- <trans-unit id="127">
- <source>You are not allowed to show this users data in this project</source>
- <target>Sie besitzen nicht die Rechte, um Daten anderer Benutzer in diesem Projekt anzuzeigen</target>
- </trans-unit>
- <trans-unit id="128">
- <source>Total Project</source>
- <target>Projektsumme</target>
- </trans-unit>
- <trans-unit id="129">
- <source>Date from</source>
- <target>Datum von</target>
- </trans-unit>
- <trans-unit id="130">
- <source>to</source>
- <target>bis</target>
- </trans-unit>
- <trans-unit id="131">
- <source>Clear</source>
- <target>Zurücksetzen</target>
- </trans-unit>
- <trans-unit id="132">
- <source>Last Bookings</source>
- <target>Letzte Buchungen</target>
- </trans-unit>
- <trans-unit id="133">
- <source>Missing Bookings</source>
- <target>Fehlende Buchungen</target>
- </trans-unit>
- <trans-unit id="134">
- <source>Project totals</source>
- <target>Projektaufwand</target>
- </trans-unit>
- <trans-unit id="135">
- <source>You are not allowed to perform this operation. Maybe you have not the needed rights.</source>
- <target>Sie können diese Operation nicht ausführen. Wahrscheinlich besitzen Sie nicht die notwendigen Rechte</target>
- </trans-unit>
- <trans-unit id="136">
- <source>Saved element(s) successfully</source>
- <target>Element(e) erfolgreiche gespeichert</target>
- </trans-unit>
- <trans-unit id="137">
- <source>%1 to %2</source>
- <target>%1 bis %2</target>
- </trans-unit>
- <trans-unit id="138">
- <source>Totals</source>
- <target>Gesamt</target>
- </trans-unit>
- <trans-unit id="139">
- <source>hours</source>
- <target>Stunden</target>
- </trans-unit>
- <trans-unit id="140">
- <source>Amount</source>
- <target>Anzahl</target>
- </trans-unit>
- <trans-unit id="141">
- <source>Not a valid decimal number</source>
- <target>Keine gültige Zahl</target>
- </trans-unit>
- <trans-unit id="142">
- <source>Edit Timelog entry</source>
- <target>Buchung bearbeiten</target>
- </trans-unit>
- <trans-unit id="143">
- <source>You can not track time entry for future dates</source>
- <target>Sie können keine Zeiten für die Zukunft erfassen</target>
- </trans-unit>
- <trans-unit id="144">
- <source>Firstname</source>
- <target>Vorname</target>
- </trans-unit>
- <trans-unit id="145">
- <source>Lastname</source>
- <target>Nachname</target>
- </trans-unit>
- <trans-unit id="146">
- <source>Email</source>
- <target>E-Mail</target>
- </trans-unit>
- <trans-unit id="147">
- <source>Layout theme</source>
- <target>Seitendesign</target>
- </trans-unit>
- <trans-unit id="148">
- <source>Interface language</source>
- <target>Sprache Benutzeroberfläche</target>
- </trans-unit>
- <trans-unit id="149">
- <source>Reminder</source>
- <target>Erinnerung</target>
- </trans-unit>
- <trans-unit id="150">
- <source>Send reminder E-Mails once a day if the user has not entered time-data for the day</source>
- <target>Verschickt Erinnerungs-E-Mails, wenn der Benutzer keine Buchung für diesen Tag vorgenommen hat</target>
- </trans-unit>
- <trans-unit id="151">
- <source>green</source>
- <target>grün</target>
- </trans-unit>
- <trans-unit id="152">
- <source>black</source>
- <target>schwarz</target>
- </trans-unit>
- <trans-unit id="153">
- <source>blue</source>
- <target>blau</target>
- </trans-unit>
- <trans-unit id="154">
- <source>orange</source>
- <target>orange</target>
- </trans-unit>
- <trans-unit id="155">
- <source>purple</source>
- <target>lila</target>
- </trans-unit>
- <trans-unit id="156">
- <source>red</source>
- <target>rot</target>
- </trans-unit>
- <trans-unit id="157">
- <source>Account plan type</source>
- <target>Account-Art</target>
- </trans-unit>
- <trans-unit id="158">
- <source>Account valid until</source>
- <target>Account gültig bis</target>
- </trans-unit>
- <trans-unit id="159">
- <source>Send e-mail with account information to the user</source>
- <target>Sende Account-Information per E-Mail an Benutzer</target>
- </trans-unit>
- <trans-unit id="160">
- <source>Your TimeHive account activation</source>
- <target>Ihre TimeHive Account Informationen</target>
- </trans-unit>
- <trans-unit id="10000">
- <source>credential.group.timetracking</source>
- <target>Zeiterfassung</target>
- </trans-unit>
- <trans-unit id="10001">
- <source>credential.group.report</source>
- <target>Auswertungen</target>
- </trans-unit>
- <trans-unit id="10002">
- <source>credential.timetracking.edit</source>
- <target>Buchungen hinzufügen/editieren</target>
- </trans-unit>
- <trans-unit id="10003">
- <source>credential.report.other</source>
- <target>Anzeige Projektgesamtstunden anderer Benutzer</target>
- </trans-unit>
- <trans-unit id="10004">
- <source>credential.report.last_bookings.self</source>
- <target>Anzeige Buchungen (nur eigene)</target>
- </trans-unit>
- <trans-unit id="10005">
- <source>credential.report.project_total.self</source>
- <target>Anzeige Projektgesamtstunden (nur eigene)</target>
- </trans-unit>
- <trans-unit id="10007">
- <source>account.unlimited</source>
- <target>Unlimited</target>
- </trans-unit>
- <trans-unit id="10008">
- <source>account.free</source>
- <target>Free</target>
- </trans-unit>
- <trans-unit id="10009">
- <source>account.small</source>
- <target>Small Business</target>
- </trans-unit>
- <trans-unit id="10010">
- <source>account.pro</source>
- <target>Professional</target>
- </trans-unit>
- </body>
- </file>
-</xliff>
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE xliff PUBLIC "-//XLIFF//DTD XLIFF//EN" "http://www.oasis-open.org/committees/xliff/documents/xliff.dtd">
+<xliff version="1.0">
+ <file source-language="en" target-language="de" datatype="plain" date="2011-01-21T15:06:58Z">
+ <body>
+ <trans-unit id="1">
+ <source>My account</source>
+ <target>Mein Konto</target>
+ </trans-unit>
+ <trans-unit id="2">
+ <source>Sign out</source>
+ <target>Abmelden</target>
+ </trans-unit>
+ <trans-unit id="4">
+ <source>Dashboard</source>
+ <target>Startseite</target>
+ </trans-unit>
+ <trans-unit id="5">
+ <source>Administration</source>
+ <target>Administration</target>
+ </trans-unit>
+ <trans-unit id="6">
+ <source>Timesheet</source>
+ <target>Zeiterfassung</target>
+ </trans-unit>
+ <trans-unit id="7">
+ <source>Reports</source>
+ <target>Auswertungen</target>
+ </trans-unit>
+ <trans-unit id="8">
+ <source>Settings</source>
+ <target>Einstellungen</target>
+ </trans-unit>
+ <trans-unit id="9">
+ <source>Credentials missing!</source>
+ <target>Fehlende Berechtigung(en)!</target>
+ </trans-unit>
+ <trans-unit id="10">
+ <source>You doesn't have the needed user rights to access this function!</source>
+ <target>Sie verfügen nicht über die notwendigen Berechtigungen, um mit dieser Funktion zu arbeiten!</target>
+ </trans-unit>
+ <trans-unit id="11">
+ <source>Login failed!</source>
+ <target>Anmeldung fehlgeschlagen!</target>
+ </trans-unit>
+ <trans-unit id="12">
+ <source>Either your password or username was wrong. Please try again!</source>
+ <target>Ihr Passwort oder Benutzername war falsch. Bitte versuchen Sie es erneut!</target>
+ </trans-unit>
+ <trans-unit id="13">
+ <source>Username</source>
+ <target>Benutzername</target>
+ </trans-unit>
+ <trans-unit id="14">
+ <source>Password</source>
+ <target>Passwort</target>
+ </trans-unit>
+ <trans-unit id="15">
+ <source>Keep logged in</source>
+ <target>Angemeldet bleiben</target>
+ </trans-unit>
+ <trans-unit id="16">
+ <source>Lost password</source>
+ <target>Passwort vergessen</target>
+ </trans-unit>
+ <trans-unit id="17">
+ <source>Login</source>
+ <target>Anmelden</target>
+ </trans-unit>
+ <trans-unit id="18">
+ <source>Filter</source>
+ <target>Filter</target>
+ </trans-unit>
+ <trans-unit id="19">
+ <source>Name</source>
+ <target>Name</target>
+ </trans-unit>
+ <trans-unit id="20">
+ <source>Number</source>
+ <target>Nummer</target>
+ </trans-unit>
+ <trans-unit id="22">
+ <source>All</source>
+ <target>Alle</target>
+ </trans-unit>
+ <trans-unit id="23">
+ <source>User</source>
+ <target>Benutzer</target>
+ </trans-unit>
+ <trans-unit id="25">
+ <source>OK</source>
+ <target>OK</target>
+ </trans-unit>
+ <trans-unit id="26">
+ <source>Projects</source>
+ <target>Projekte</target>
+ </trans-unit>
+ <trans-unit id="29">
+ <source>Roles</source>
+ <target>Rollen</target>
+ </trans-unit>
+ <trans-unit id="30">
+ <source>Time item types</source>
+ <target>Zeiterfassungskategorien</target>
+ </trans-unit>
+ <trans-unit id="31">
+ <source>There were errors</source>
+ <target>Es sind Fehler aufgetreten</target>
+ </trans-unit>
+ <trans-unit id="32">
+ <source>Message</source>
+ <target>Nachricht</target>
+ </trans-unit>
+ <trans-unit id="33">
+ <source>Missing Booking</source>
+ <target>Fehlende Buchung</target>
+ </trans-unit>
+ <trans-unit id="34">
+ <source>Hello %1% %2%,</source>
+ <target>Hallo %1% %2%,</target>
+ </trans-unit>
+ <trans-unit id="35">
+ <source>you have not entered a time entry for the %1% so far.</source>
+ <target>Sie haben noch keine Buchung für den %1% durchgeführt</target>
+ </trans-unit>
+ <trans-unit id="36">
+ <source>You can enter your data under:</source>
+ <target>Sie können diese Daten unter der folgenden URL eintragen:</target>
+ </trans-unit>
+ <trans-unit id="37">
+ <source>Something went wrong with your password request. Please try again</source>
+ <target>Etwas ist beim Anfordern Ihres Passwortes schief gegangen. Bitte versuchen Sie es erneut</target>
+ </trans-unit>
+ <trans-unit id="38">
+ <source>Password must be at least 6 characters long</source>
+ <target>Passwort muss mindestens 6 Zeichen lang sein</target>
+ </trans-unit>
+ <trans-unit id="39">
+ <source>Password and confirmation must be identical</source>
+ <target>Passwort und Wiederholung müssen übereinstimmen</target>
+ </trans-unit>
+ <trans-unit id="40">
+ <source>Your password was changed successfully. Please login again.</source>
+ <target>Ihr Passwort wurde erfolgreich geändert. Bitte erneut einloggen.</target>
+ </trans-unit>
+ <trans-unit id="41">
+ <source>There is a problem with your token. Password can not be changed</source>
+ <target>Es gab ein Problem mit Ihrem Token. Das Passwort konnte nicht geändert werden</target>
+ </trans-unit>
+ <trans-unit id="42">
+ <source>Your TimeHive password</source>
+ <target>Ihr TimeHive Passwort</target>
+ </trans-unit>
+ <trans-unit id="43">
+ <source>An email with instructions to choose a new password has been sent to you.</source>
+ <target>Eine E-Mail mit Anweisungen zum Ändern des Passwortes wurde per E-Mail an Sie verschickt.</target>
+ </trans-unit>
+ <trans-unit id="44">
+ <source>There is no such e-mail address in the our database!</source>
+ <target>Eine solche E-Mail-Addresse existiert nicht in der Datenbank</target>
+ </trans-unit>
+ <trans-unit id="45">
+ <source>My Account Settings</source>
+ <target>Meine Konto-Einstellungen</target>
+ </trans-unit>
+ <trans-unit id="46">
+ <source>Saved element successfully</source>
+ <target>Eintrag erfolgreich gespeichert</target>
+ </trans-unit>
+ <trans-unit id="47">
+ <source>Save</source>
+ <target>Speichern</target>
+ </trans-unit>
+ <trans-unit id="48">
+ <source>Confirm password</source>
+ <target>Passwort bestätigen</target>
+ </trans-unit>
+ <trans-unit id="49">
+ <source>Change Password</source>
+ <target>Passwort ändern</target>
+ </trans-unit>
+ <trans-unit id="50">
+ <source>To change your password, click on the following link</source>
+ <target>Um Ihr Passwort zu ändern klicken Sie bitte den folgenden Link</target>
+ </trans-unit>
+ <trans-unit id="51">
+ <source>New project</source>
+ <target>Neues Projekt</target>
+ </trans-unit>
+ <trans-unit id="52">
+ <source>Role(s)</source>
+ <target>Rolle(n)</target>
+ </trans-unit>
+ <trans-unit id="53">
+ <source>You have reached the maximum amount of projects for your type of account. Please upgrade if you want to add another project.</source>
+ <target>Sie haben das Maximum an Projekten für Ihren Account-Typ erreicht. Bitte upgraden Sie, wenn Sie weitere Projekte anlegen wollen.</target>
+ </trans-unit>
+ <trans-unit id="54">
+ <source>Owner</source>
+ <target>Besitzer</target>
+ </trans-unit>
+ <trans-unit id="55">
+ <source>Created at</source>
+ <target>Erstellt am</target>
+ </trans-unit>
+ <trans-unit id="56">
+ <source>Locked</source>
+ <target>Gesperrt</target>
+ </trans-unit>
+ <trans-unit id="57">
+ <source>Actions</source>
+ <target>Aktionen</target>
+ </trans-unit>
+ <trans-unit id="58">
+ <source>with selected do</source>
+ <target>Auswahl</target>
+ </trans-unit>
+ <trans-unit id="59">
+ <source>lock</source>
+ <target>sperren</target>
+ </trans-unit>
+ <trans-unit id="60">
+ <source>delete</source>
+ <target>löschen</target>
+ </trans-unit>
+ <trans-unit id="61">
+ <source>edit</source>
+ <target>bearbeiten</target>
+ </trans-unit>
+ <trans-unit id="62">
+ <source>Project</source>
+ <target>Projekt</target>
+ </trans-unit>
+ <trans-unit id="63">
+ <source>Userroles</source>
+ <target>Benutzerrollen</target>
+ </trans-unit>
+ <trans-unit id="64">
+ <source>You need to save a project before you can add user with their roles</source>
+ <target>Sie müssen das Projekt speichern, bevor Sie Benutzer hinzufügen können</target>
+ </trans-unit>
+ <trans-unit id="65">
+ <source>Back to list</source>
+ <target>Zurück zur Liste</target>
+ </trans-unit>
+ <trans-unit id="66">
+ <source>Add</source>
+ <target>Hinzufügen</target>
+ </trans-unit>
+ <trans-unit id="67">
+ <source>Edit</source>
+ <target>Bearbeiten</target>
+ </trans-unit>
+ <trans-unit id="68">
+ <source>Delete</source>
+ <target>Löschen</target>
+ </trans-unit>
+ <trans-unit id="69">
+ <source>Really delete this user project role?</source>
+ <target>Diese Benutzer-Projekt-Rolle wirklich löschen?</target>
+ </trans-unit>
+ <trans-unit id="70">
+ <source>Loading</source>
+ <target>Lade</target>
+ </trans-unit>
+ <trans-unit id="71">
+ <source>Edit project-user-relation</source>
+ <target>Benutzer-Projekt-Rolle bearbeiten</target>
+ </trans-unit>
+ <trans-unit id="72">
+ <source>Add project-user-relation</source>
+ <target>Benutzer-Projekt-Rolle hinzufügen</target>
+ </trans-unit>
+ <trans-unit id="73">
+ <source>New Role</source>
+ <target>Neue Rolle</target>
+ </trans-unit>
+ <trans-unit id="74">
+ <source>Rolename</source>
+ <target>Rollenname</target>
+ </trans-unit>
+ <trans-unit id="75">
+ <source>Check all</source>
+ <target>Alle auswählen</target>
+ </trans-unit>
+ <trans-unit id="76">
+ <source>Uncheck all</source>
+ <target>Auswahl aufheben</target>
+ </trans-unit>
+ <trans-unit id="77">
+ <source>Account-Plan</source>
+ <target>Account-Plan</target>
+ </trans-unit>
+ <trans-unit id="78">
+ <source>unlimited</source>
+ <target>unbegrenzt</target>
+ </trans-unit>
+ <trans-unit id="80">
+ <source>Workingdays</source>
+ <target>Arbeitstage</target>
+ </trans-unit>
+ <trans-unit id="81">
+ <source>Monday</source>
+ <target>Montag</target>
+ </trans-unit>
+ <trans-unit id="82">
+ <source>Tuesday</source>
+ <target>Dienstag</target>
+ </trans-unit>
+ <trans-unit id="83">
+ <source>Wednesday</source>
+ <target>Mittwoch</target>
+ </trans-unit>
+ <trans-unit id="84">
+ <source>Thursday</source>
+ <target>Donnerstag</target>
+ </trans-unit>
+ <trans-unit id="85">
+ <source>Friday</source>
+ <target>Freitag</target>
+ </trans-unit>
+ <trans-unit id="86">
+ <source>Saturday</source>
+ <target>Samstag</target>
+ </trans-unit>
+ <trans-unit id="87">
+ <source>Sunday</source>
+ <target>Sonntag</target>
+ </trans-unit>
+ <trans-unit id="88">
+ <source>New Time item type</source>
+ <target>Neue Zeiterfassungskategorie</target>
+ </trans-unit>
+ <trans-unit id="89">
+ <source>Default</source>
+ <target>Standard</target>
+ </trans-unit>
+ <trans-unit id="90">
+ <source>default</source>
+ <target>Standard</target>
+ </trans-unit>
+ <trans-unit id="91">
+ <source>set as default</source>
+ <target>als Standard verwenden</target>
+ </trans-unit>
+ <trans-unit id="92">
+ <source>Time item type</source>
+ <target>Zeiterfassungskategorie</target>
+ </trans-unit>
+ <trans-unit id="93">
+ <source>New user</source>
+ <target>Neuen Benutzer</target>
+ </trans-unit>
+ <trans-unit id="94">
+ <source>You have reached the maximum amount of users for your type of account. Please upgrade if you want to add another user.</source>
+ <target>Sie haben die Maximale Anzahl an Benutzern für Ihren Account erreicht. Bitte upgraden Sie, wenn Sie weitere Benutzer hinzufügen wollen.</target>
+ </trans-unit>
+ <trans-unit id="95">
+ <source>Status</source>
+ <target>Status</target>
+ </trans-unit>
+ <trans-unit id="96">
+ <source>deactivate</source>
+ <target>deaktivieren</target>
+ </trans-unit>
+ <trans-unit id="97">
+ <source>Administrator</source>
+ <target>Administrator</target>
+ </trans-unit>
+ <trans-unit id="98">
+ <source>Boss-Mode</source>
+ <target>Chef-Modus</target>
+ </trans-unit>
+ <trans-unit id="99">
+ <source>My last time bookings</source>
+ <target>Meine letzten Buchungen</target>
+ </trans-unit>
+ <trans-unit id="100">
+ <source>Date</source>
+ <target>Datum</target>
+ </trans-unit>
+ <trans-unit id="101">
+ <source>Amount (hours)</source>
+ <target>Anzahl (Stunden)</target>
+ </trans-unit>
+ <trans-unit id="102">
+ <source>Type</source>
+ <target>Kategorie</target>
+ </trans-unit>
+ <trans-unit id="103">
+ <source>Show</source>
+ <target>Anzeigen</target>
+ </trans-unit>
+ <trans-unit id="104">
+ <source>entries</source>
+ <target>Einträge</target>
+ </trans-unit>
+ <trans-unit id="105">
+ <source>My total time per project</source>
+ <target>Meine Buchungssumme pro Projekt</target>
+ </trans-unit>
+ <trans-unit id="106">
+ <source>Show for</source>
+ <target>Anzeigen für</target>
+ </trans-unit>
+ <trans-unit id="107">
+ <source>overall</source>
+ <target>Gesamt</target>
+ </trans-unit>
+ <trans-unit id="108">
+ <source>this week</source>
+ <target>diese Woche</target>
+ </trans-unit>
+ <trans-unit id="109">
+ <source>last week</source>
+ <target>letzte Woche</target>
+ </trans-unit>
+ <trans-unit id="110">
+ <source>this month</source>
+ <target>diesen Monat</target>
+ </trans-unit>
+ <trans-unit id="111">
+ <source>last month</source>
+ <target>letzten Monat</target>
+ </trans-unit>
+ <trans-unit id="112">
+ <source>Days without bookings</source>
+ <target>Tage ohne Buchung</target>
+ </trans-unit>
+ <trans-unit id="113">
+ <source>There is no day without bookings</source>
+ <target>Es gibt keine Tage ohne Buchung</target>
+ </trans-unit>
+ <trans-unit id="114">
+ <source>first</source>
+ <target>Abfang</target>
+ </trans-unit>
+ <trans-unit id="115">
+ <source>previous</source>
+ <target>zurück</target>
+ </trans-unit>
+ <trans-unit id="116">
+ <source>next</source>
+ <target>weiter</target>
+ </trans-unit>
+ <trans-unit id="117">
+ <source>last</source>
+ <target>Ende</target>
+ </trans-unit>
+ <trans-unit id="118">
+ <source>Your user is locked, you can not use TimeHive anymore!</source>
+ <target>Ihr Benutzer ist gesperrt. Sie können TimeHive nicht nutzen!</target>
+ </trans-unit>
+ <trans-unit id="119">
+ <source>Please enter your E-Mail address. You will receive an e-mail with detailed instructions.</source>
+ <target>Bitte geben Sie Ihre E-Mail Adresse ein. Sie werden eine Nachricht mit detailierten Anweisungen bekommen.</target>
+ </trans-unit>
+ <trans-unit id="120">
+ <source>E-Mail-Address</source>
+ <target>E-Mail-Adresse</target>
+ </trans-unit>
+ <trans-unit id="121">
+ <source>Send Request</source>
+ <target>Anfrage senden</target>
+ </trans-unit>
+ <trans-unit id="122">
+ <source>Comment</source>
+ <target>Kommentar</target>
+ </trans-unit>
+ <trans-unit id="123">
+ <source>You are not allowed to show other users data</source>
+ <target>Sie besitzen nicht die Rechte, um Daten anderer Benutzer anzuzeigen</target>
+ </trans-unit>
+ <trans-unit id="124">
+ <source>There are no bookings for this filter settings</source>
+ <target>Es existieren keine Buchungen für diese Filtereinstellungen</target>
+ </trans-unit>
+ <trans-unit id="125">
+ <source>Effort</source>
+ <target>Aufwand</target>
+ </trans-unit>
+ <trans-unit id="126">
+ <source>Total hours (days)</source>
+ <target>Gesamtstunden (-tage)</target>
+ </trans-unit>
+ <trans-unit id="127">
+ <source>You are not allowed to show this users data in this project</source>
+ <target>Sie besitzen nicht die Rechte, um Daten anderer Benutzer in diesem Projekt anzuzeigen</target>
+ </trans-unit>
+ <trans-unit id="128">
+ <source>Total Project</source>
+ <target>Projektsumme</target>
+ </trans-unit>
+ <trans-unit id="129">
+ <source>Date from</source>
+ <target>Datum von</target>
+ </trans-unit>
+ <trans-unit id="130">
+ <source>to</source>
+ <target>bis</target>
+ </trans-unit>
+ <trans-unit id="131">
+ <source>Clear</source>
+ <target>Zurücksetzen</target>
+ </trans-unit>
+ <trans-unit id="132">
+ <source>Last Bookings</source>
+ <target>Letzte Buchungen</target>
+ </trans-unit>
+ <trans-unit id="133">
+ <source>Missing Bookings</source>
+ <target>Fehlende Buchungen</target>
+ </trans-unit>
+ <trans-unit id="134">
+ <source>Project totals</source>
+ <target>Projektaufwand</target>
+ </trans-unit>
+ <trans-unit id="135">
+ <source>You are not allowed to perform this operation. Maybe you have not the needed rights.</source>
+ <target>Sie können diese Operation nicht ausführen. Wahrscheinlich besitzen Sie nicht die notwendigen Rechte</target>
+ </trans-unit>
+ <trans-unit id="136">
+ <source>Saved element(s) successfully</source>
+ <target>Element(e) erfolgreiche gespeichert</target>
+ </trans-unit>
+ <trans-unit id="137">
+ <source>%1 to %2</source>
+ <target>%1 bis %2</target>
+ </trans-unit>
+ <trans-unit id="138">
+ <source>Totals</source>
+ <target>Gesamt</target>
+ </trans-unit>
+ <trans-unit id="139">
+ <source>hours</source>
+ <target>Stunden</target>
+ </trans-unit>
+ <trans-unit id="140">
+ <source>Amount</source>
+ <target>Anzahl</target>
+ </trans-unit>
+ <trans-unit id="141">
+ <source>Not a valid decimal number</source>
+ <target>Keine gültige Zahl</target>
+ </trans-unit>
+ <trans-unit id="142">
+ <source>Edit Timelog entry</source>
+ <target>Buchung bearbeiten</target>
+ </trans-unit>
+ <trans-unit id="143">
+ <source>You can not track time entry for future dates</source>
+ <target>Sie können keine Zeiten für die Zukunft erfassen</target>
+ </trans-unit>
+ <trans-unit id="144">
+ <source>Firstname</source>
+ <target>Vorname</target>
+ </trans-unit>
+ <trans-unit id="145">
+ <source>Lastname</source>
+ <target>Nachname</target>
+ </trans-unit>
+ <trans-unit id="146">
+ <source>Email</source>
+ <target>E-Mail</target>
+ </trans-unit>
+ <trans-unit id="147">
+ <source>Layout theme</source>
+ <target>Seitendesign</target>
+ </trans-unit>
+ <trans-unit id="148">
+ <source>Interface language</source>
+ <target>Sprache Benutzeroberfläche</target>
+ </trans-unit>
+ <trans-unit id="149">
+ <source>Reminder</source>
+ <target>Erinnerung</target>
+ </trans-unit>
+ <trans-unit id="150">
+ <source>Send reminder E-Mails once a day if the user has not entered time-data for the day</source>
+ <target>Verschickt Erinnerungs-E-Mails, wenn der Benutzer keine Buchung für diesen Tag vorgenommen hat</target>
+ </trans-unit>
+ <trans-unit id="151">
+ <source>green</source>
+ <target>grün</target>
+ </trans-unit>
+ <trans-unit id="152">
+ <source>black</source>
+ <target>schwarz</target>
+ </trans-unit>
+ <trans-unit id="153">
+ <source>blue</source>
+ <target>blau</target>
+ </trans-unit>
+ <trans-unit id="154">
+ <source>orange</source>
+ <target>orange</target>
+ </trans-unit>
+ <trans-unit id="155">
+ <source>purple</source>
+ <target>lila</target>
+ </trans-unit>
+ <trans-unit id="156">
+ <source>red</source>
+ <target>rot</target>
+ </trans-unit>
+ <trans-unit id="157">
+ <source>Account plan type</source>
+ <target>Account-Art</target>
+ </trans-unit>
+ <trans-unit id="158">
+ <source>Account valid until</source>
+ <target>Account gültig bis</target>
+ </trans-unit>
+ <trans-unit id="159">
+ <source>Send e-mail with account information to the user</source>
+ <target>Sende Account-Information per E-Mail an Benutzer</target>
+ </trans-unit>
+ <trans-unit id="160">
+ <source>Your TimeHive account activation</source>
+ <target>Ihre TimeHive Account Informationen</target>
+ </trans-unit>
+ <trans-unit id="10000">
+ <source>credential.group.timetracking</source>
+ <target>Zeiterfassung</target>
+ </trans-unit>
+ <trans-unit id="10001">
+ <source>credential.group.report</source>
+ <target>Auswertungen</target>
+ </trans-unit>
+ <trans-unit id="10002">
+ <source>credential.timetracking.edit</source>
+ <target>Buchungen hinzufügen/editieren</target>
+ </trans-unit>
+ <trans-unit id="10003">
+ <source>credential.report.other</source>
+ <target>Anzeige Projektgesamtstunden anderer Benutzer</target>
+ </trans-unit>
+ <trans-unit id="10004">
+ <source>credential.report.last_bookings.self</source>
+ <target>Anzeige Buchungen (nur eigene)</target>
+ </trans-unit>
+ <trans-unit id="10005">
+ <source>credential.report.project_total.self</source>
+ <target>Anzeige Projektgesamtstunden (nur eigene)</target>
+ </trans-unit>
+ <trans-unit id="10007">
+ <source>account.unlimited</source>
+ <target>Unlimited</target>
+ </trans-unit>
+ <trans-unit id="10008">
+ <source>account.free</source>
+ <target>Free</target>
+ </trans-unit>
+ <trans-unit id="10009">
+ <source>account.small</source>
+ <target>Small Business</target>
+ </trans-unit>
+ <trans-unit id="10010">
+ <source>account.pro</source>
+ <target>Professional</target>
+ </trans-unit>
+ </body>
+ </file>
+</xliff>
View
348 apps/frontend/modules/account/actions/actions.class.php
@@ -1,174 +1,174 @@
-<?php
-
-/**
- * account actions.
- *
- * @package timehive
- * @subpackage account
- * @version SVN: $Id: actions.class.php 23810 2009-11-12 11:07:44Z Kris.Wallsmith $
- */
-class accountActions extends sfActions
-{
-
- /**
- * Executes index action
- *
- * @param sfRequest $request A request object
- */
- public function executeIndex(sfWebRequest $request)
- {
- $user_id = $this->getUser()->getAttribute('uid');
- $this->forward404Unless($user = Doctrine::getTable('User')->find(array($user_id)), sprintf('User does not exist (%s).', $user_id));
- $this->form = new UserForm($user);
- }
-
- public function executeUpdate(sfWebRequest $request)
- {
- $user_id = $this->getUser()->getAttribute('uid');
-
- $this->forward404Unless($request->isMethod(sfRequest::POST) || $request->isMethod(sfRequest::PUT));
- $this->forward404Unless($user = Doctrine::getTable('User')->find(array($user_id)), sprintf('User does not exist (%s).', $user_id));
- $this->form = new UserForm($user);
-
- $this->processForm($request, $this->form);
-
- $this->setTemplate('index');
- }
-
- public function executeNewPassword(sfWebRequest $request)
- {
- $this->errors = "";
- if ($request->hasParameter('token')) {
- $this->token = Doctrine::getTable('Token')
- ->findOneByValue($request->getParameter('token'));
-
- if ($this->token) {
- $this->user = $this->token->getUser();
- $this->setLayout('login');
- $this->setTemplate('newPassword');
- return sfView::SUCCESS;
- }
- }
-
- $this->getUser()->setFlash('send_pwd_failure',
- $this->getContext()->getI18N()->__('Something went wrong with your password request. Please try again'));
-
- $this->redirect('login/index');
- }
-
- public function executeCreatePassword(sfWebRequest $request) {
-
- $this->setLayout('login');
-
- if ($request->hasParameter('token')) {
- $this->token = Doctrine::getTable('Token')
- ->findOneByValue($request->getParameter('token'));
-
- if ($this->token) {
- $this->user = $this->token->getUser();
-
- // doing validation
- if (strlen($request->getParameter('new_password')) < 6) {
- $this->errors = $this->getContext()->getI18N()->__('Password must be at least 6 characters long');
- $this->setTemplate('newPassword');
- return sfView::SUCCESS;
- }
-
- if (strcmp($request->getParameter('new_password'), $request->getParameter('new_password_confirmation')) != 0) {
- $this->errors = $this->getContext()->getI18N()->__('Password and confirmation must be identical');
- $this->setTemplate('newPassword');
- return sfView::SUCCESS;
- }
-
- // save the new user data
- $this->user->setPassword(md5($request->getParameter('new_password')));
- $this->user->save();
-
- $this->token->delete();
-
- // redirect to login page
- $this->getUser()->setFlash('notice_message',
- $this->getContext()->getI18N()->__('Your password was changed successfully. Please login again.'));
- $this->redirect('login/index');
- }
- }
-
- $this->errors = $this->getContext()->getI18N()->__('There is a problem with your token. Password can not be changed');
- $this->setTemplate('newPassword');
- return sfView::SUCCESS;
- }
-
- public function executeSendPassword(sfWebRequest $request) {
- // try to find the user by the given E-Mail-Address
- $user = Doctrine::getTable('User')
- ->findOneByEmail($request->getParameter('email'));
-
- if ($user) {
- // delete all previous recovery tokens
- Doctrine_Query::create()->delete('Token t')
- ->where('t.user_id=? AND action=?',
- array($user->getId(),
- Token::$ACTION_RECOVER))
- ->execute();
-
- // generate recover token
- $token = new Token();
- $token->setUserId($user->getId());
- $token->setAction(Token::$ACTION_RECOVER);
- $token->save();
-
- // sending user email
- $html = $this->getPartial('recoverEmail', array('user'=>$user,
- 'token'=>$token));
- $subject = sfContext::getInstance()->getI18N()
- -> __('Your TimeHive password');
-
- MailSender::createInstance()
- ->send(
- $user['email'],
- $subject,
- $html
- );
-
- $this->getUser()->setFlash('send_pwd_failure',
- $this->getContext()->getI18N()->__('An email with instructions to choose a new password has been sent to you.'));
- $this->redirect('login/index');
- }
- else {
- $this->getUser()->setFlash('send_pwd_failure',
- $this->getContext()->getI18N()->__('There is no such e-mail address in the our database!'));
- $this->redirect('login/index');
- }
- }
-
- protected function processForm(sfWebRequest $request, sfForm $form)
- {
- $form->bind($request->getParameter($form->getName()), $request->getFiles($form->getName()));
- $user_values = $request->getParameter('user');
-
- if ($form->isValid()) {
-
- $user = UserTable::getInstance()->find($user_values['id']);
-
- $user->first_name = $user_values['first_name'];
- $user->last_name = $user_values['last_name'];
- $user->email = $user_values['email'];
-
- $org_password = $user_values['password'];
- if (strlen($user_values['password']) != 32) {
- $user->password = md5($user_values['password']);
- }
-
- $user->Setting->theme = $user_values['settings']['theme'];
- $user->Setting->culture = $user_values['settings']['culture'];
- $user->Setting->reminder = array_key_exists('reminder', $user_values['settings']);
-
- $this->getUser()->setAttribute('theme', $user->Setting->theme);
- $user->save();
-
- $this->getUser()->setFlash('saved.success', 1);
- $this->redirect('account/index');
- }
- }
-
-}
+<?php
+
+/**
+ * account actions.
+ *
+ * @package timehive
+ * @subpackage account
+ * @version SVN: $Id: actions.class.php 23810 2009-11-12 11:07:44Z Kris.Wallsmith $
+ */
+class accountActions extends sfActions
+{
+
+ /**
+ * Executes index action
+ *
+ * @param sfRequest $request A request object
+ */
+ public function executeIndex(sfWebRequest $request)
+ {
+ $user_id = $this->getUser()->getAttribute('uid');
+ $this->forward404Unless($user = Doctrine::getTable('User')->find(array($user_id)), sprintf('User does not exist (%s).', $user_id));
+ $this->form = new UserForm($user);
+ }
+
+ public function executeUpdate(sfWebRequest $request)
+ {
+ $user_id = $this->getUser()->getAttribute('uid');
+
+ $this->forward404Unless($request->isMethod(sfRequest::POST) || $request->isMethod(sfRequest::PUT));
+ $this->forward404Unless($user = Doctrine::getTable('User')->find(array($user_id)), sprintf('User does not exist (%s).', $user_id));
+ $this->form = new UserForm($user);
+
+ $this->processForm($request, $this->form);
+
+ $this->setTemplate('index');
+ }
+
+ public function executeNewPassword(sfWebRequest $request)
+ {
+ $this->errors = "";
+ if ($request->hasParameter('token')) {
+ $this->token = Doctrine::getTable('Token')
+ ->findOneByValue($request->getParameter('token'));
+
+ if ($this->token) {
+ $this->user = $this->token->getUser();
+ $this->setLayout('login');
+ $this->setTemplate('newPassword');
+ return sfView::SUCCESS;
+ }
+ }
+
+ $this->getUser()->setFlash('send_pwd_failure',
+ $this->getContext()->getI18N()->__('Something went wrong with your password request. Please try again'));
+
+ $this->redirect('login/index');
+ }
+
+ public function executeCreatePassword(sfWebRequest $request) {
+
+ $this->setLayout('login');
+
+ if ($request->hasParameter('token')) {
+ $this->token = Doctrine::getTable('Token')
+ ->findOneByValue($request->getParameter('token'));
+
+ if ($this->token) {
+ $this->user = $this->token->getUser();
+
+ // doing validation
+ if (strlen($request->getParameter('new_password')) < 6) {
+ $this->errors = $this->getContext()->getI18N()->__('Password must be at least 6 characters long');
+ $this->setTemplate('newPassword');
+ return sfView::SUCCESS;
+ }
+
+ if (strcmp($request->getParameter('new_password'), $request->getParameter('new_password_confirmation')) != 0) {
+ $this->errors = $this->getContext()->getI18N()->__('Password and confirmation must be identical');
+ $this->setTemplate('newPassword');
+ return sfView::SUCCESS;
+ }
+
+ // save the new user data
+ $this->user->setPassword(md5($request->getParameter('new_password')));
+ $this->user->save();
+
+ $this->token->delete();
+
+ // redirect to login page
+ $this->getUser()->setFlash('notice_message',
+ $this->getContext()->getI18N()->__('Your password was changed successfully. Please login again.'));
+ $this->redirect('login/index');
+ }
+ }
+
+ $this->errors = $this->getContext()->getI18N()->__('There is a problem with your token. Password can not be changed');
+ $this->setTemplate('newPassword');
+ return sfView::SUCCESS;
+ }
+
+ public function executeSendPassword(sfWebRequest $request) {
+ // try to find the user by the given E-Mail-Address
+ $user = Doctrine::getTable('User')
+ ->findOneByEmail($request->getParameter('email'));
+
+ if ($user) {
+ // delete all previous recovery tokens
+ Doctrine_Query::create()->delete('Token t')
+ ->where('t.user_id=? AND action=?',
+ array($user->getId(),
+ Token::$ACTION_RECOVER))
+ ->execute();
+
+ // generate recover token
+ $token = new Token();
+ $token->setUserId($user->getId());
+ $token->setAction(Token::$ACTION_RECOVER);
+ $token->save();
+
+ // sending user email
+ $html = $this->getPartial('recoverEmail', array('user'=>$user,
+ 'token'=>$token));
+ $subject = sfContext::getInstance()->getI18N()
+ -> __('Your TimeHive password');
+
+ MailSender::createInstance()
+ ->send(
+ $user['email'],
+ $subject,
+ $html
+ );
+
+ $this->getUser()->setFlash('send_pwd_failure',
+ $this->getContext()->getI18N()->__('An email with instructions to choose a new password has been sent to you.'));
+ $this->redirect('login/index');
+ }
+ else {
+ $this->getUser()->setFlash('send_pwd_failure',
+ $this->getContext()->getI18N()->__('There is no such e-mail address in the our database!'));
+ $this->redirect('login/index');
+ }
+ }
+
+ protected function processForm(sfWebRequest $request, sfForm $form)
+ {
+ $form->bind($request->getParameter($form->getName()), $request->getFiles($form->getName()));
+ $user_values = $request->getParameter('user');
+
+ if ($form->isValid()) {
+
+ $user = UserTable::getInstance()->find($user_values['id']);
+
+ $user->first_name = $user_values['first_name'];
+ $user->last_name = $user_values['last_name'];
+ $user->email = $user_values['email'];
+
+ $org_password = $user_values['password'];
+ if (strlen($user_values['password']) != 32) {
+ $user->password = md5($user_values['password']);
+ }
+
+ $user->Setting->theme = $user_values['settings']['theme'];
+ $user->Setting->culture = $user_values['settings']['culture'];
+ $user->Setting->reminder = array_key_exists('reminder', $user_values['settings']);
+
+ $this->getUser()->setAttribute('theme', $user->Setting->theme);
+ $user->save();
+
+ $this->getUser()->setFlash('saved.success', 1);
+ $this->redirect('account/index');
+ }
+ }
+
+}
View
112 apps/frontend/modules/account/templates/indexSuccess.php
@@ -1,57 +1,57 @@
-<?php use_stylesheets_for_form($form) ?>
-<?php use_javascripts_for_form($form) ?>
-
-<div class="box box-100">
- <div class="boxin">
- <div class="header">
- <h3><?php echo __('My Account Settings');?></h3>
- </div>
- <div id="box1-tabular" class="content">
- <form class="fields" action="<?php echo url_for('account/update');?>" method="post">
- <?php if ($sf_user->getFlash('saved.success', 0) != 0):?>
- <div class="msg msg-ok">
- <p><?php echo __('Saved element successfully');?>!</p>
- </div>
- <?php endif;?>
-
- <?php include_partial('global/error_message', array('form'=>$form));?>
-
- <input type="hidden" name="sf_method" value="put" />
- <input type="hidden" name="user[username]" value="<?php echo $form->getObject()->username;?>" />
-
- <?php echo $form->renderHiddenFields(false) ?>
-
- <fieldset>
- <legend><strong><?php echo __('User');?></strong></legend>
- <?php echo $form['first_name']->renderLabel() ?>
- <?php echo $form['first_name'] ?>
-
- <?php echo $form['last_name']->renderLabel() ?>
- <?php echo $form['last_name'] ?>
-
- <?php echo $form['password']->renderLabel() ?>
- <?php echo $form['password'] ?>
-
- <?php echo $form['email']->renderLabel() ?>
- <?php echo $form['email'] ?>
- </fieldset>
- <fieldset>
- <legend><strong><?php echo __('Settings');?></strong></legend>
- <?php echo $form['settings']['theme']->renderLabel() ?>
- <?php echo $form['settings']['theme'] ?>
-
- <?php echo $form['settings']['culture']->renderLabel() ?>
- <?php echo $form['settings']['culture'] ?>
-
- <?php echo $form['settings']['reminder']->renderLabel() ?>
- <?php echo $form['settings']['reminder'] ?>
- <small>Send reminder E-Mails once a day if the user has not entered time-data for the day</small>
- </fieldset>
- <div class="sep">
- <input class="button" type="submit" value="<?php echo __('Save');?>" />
- </div>
- </form>
-
- </div>
- </div>
+<?php use_stylesheets_for_form($form) ?>
+<?php use_javascripts_for_form($form) ?>
+
+<div class="box box-100">
+ <div class="boxin">
+ <div class="header">
+ <h3><?php echo __('My Account Settings');?></h3>
+ </div>
+ <div id="box1-tabular" class="content">
+ <form class="fields" action="<?php echo url_for('account/update');?>" method="post">
+ <?php if ($sf_user->getFlash('saved.success', 0) != 0):?>
+ <div class="msg msg-ok">
+ <p><?php echo __('Saved element successfully');?>!</p>
+ </div>
+ <?php endif;?>
+
+ <?php include_partial('global/error_message', array('form'=>$form));?>
+
+ <input type="hidden" name="sf_m