diff --git a/app/views/layouts/base.rhtml b/app/views/layouts/base.rhtml
index 2daae7c..0393815 100644
--- a/app/views/layouts/base.rhtml
+++ b/app/views/layouts/base.rhtml
@@ -7,6 +7,7 @@
 <meta name="keywords" content="issue,bug,tracker" />
 <%= favicon %>
 <%= stylesheet_link_tag 'application', :media => 'all' %>
+<%= stylesheet_link_tag 'rtl', :media => 'all' if l(:direction) == 'rtl' %>
 <%= javascript_include_tag :defaults %>
 <%= heads_for_wiki_formatter %>
 <!--[if IE]>
diff --git a/config/locales/bg.yml b/config/locales/bg.yml
index 8b2b237..4e463ec 100644
--- a/config/locales/bg.yml
+++ b/config/locales/bg.yml
@@ -1,4 +1,5 @@
 bg:
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/bs.yml b/config/locales/bs.yml
index 3d476ae..fbc0c28 100644
--- a/config/locales/bs.yml
+++ b/config/locales/bs.yml
@@ -1,6 +1,7 @@
 #Ernad Husremovic hernad@bring.out.ba
 
 bs:
+  direction: ltr
   date:
     formats:
       default: "%d.%m.%Y"
diff --git a/config/locales/ca.yml b/config/locales/ca.yml
index 1e47d3d..d6165ad 100644
--- a/config/locales/ca.yml
+++ b/config/locales/ca.yml
@@ -1,4 +1,5 @@
 ca:
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/cs.yml b/config/locales/cs.yml
index de4ad44..fecc33f 100644
--- a/config/locales/cs.yml
+++ b/config/locales/cs.yml
@@ -1,4 +1,5 @@
 cs:
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/da.yml b/config/locales/da.yml
index b241a52..f70deb0 100644
--- a/config/locales/da.yml
+++ b/config/locales/da.yml
@@ -3,6 +3,7 @@
 # updated and upgraded to 0.9 by Morten Krogh Andersen (http://www.krogh.net)
 
 da:
+  direction: ltr
   date:
     formats:
       default: "%d.%m.%Y"
diff --git a/config/locales/de.yml b/config/locales/de.yml
index f7f9043..b30fda3 100644
--- a/config/locales/de.yml
+++ b/config/locales/de.yml
@@ -2,6 +2,7 @@
 # by Clemens Kofler (clemens@railway.at)
 
 de:
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/el.yml b/config/locales/el.yml
index a9146a6..7aa2522 100644
--- a/config/locales/el.yml
+++ b/config/locales/el.yml
@@ -2,6 +2,7 @@
 # by Vaggelis Typaldos (vtypal@gmail.com),  Spyros Raptis (spirosrap@gmail.com)
 
 el:
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/en-GB.yml b/config/locales/en-GB.yml
index 2872df1..b4ea78a 100644
--- a/config/locales/en-GB.yml
+++ b/config/locales/en-GB.yml
@@ -1,4 +1,5 @@
 en-GB:
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/en.yml b/config/locales/en.yml
index b3d8751..7972184 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -1,4 +1,5 @@
 en:
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/es.yml b/config/locales/es.yml
index bc345dc..a775e08 100644
--- a/config/locales/es.yml
+++ b/config/locales/es.yml
@@ -141,6 +141,7 @@ es:
       attributes:
         # Overrides model and default messages.
 
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/eu.yml b/config/locales/eu.yml
index 741d329..4c76091 100644
--- a/config/locales/eu.yml
+++ b/config/locales/eu.yml
@@ -3,6 +3,7 @@
 # 2010-01-25
 # Distributed under the same terms as the Redmine itself.
 eu:
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/fi.yml b/config/locales/fi.yml
index b6b48ba..4645b69 100644
--- a/config/locales/fi.yml
+++ b/config/locales/fi.yml
@@ -2,6 +2,7 @@
 # by Marko Seppä (marko.seppa@gmail.com)
 
 fi:
+  direction: ltr
   date:
     formats:
       default: "%e. %Bta %Y"
diff --git a/config/locales/fr.yml b/config/locales/fr.yml
index 8eb82ad..ff3be75 100644
--- a/config/locales/fr.yml
+++ b/config/locales/fr.yml
@@ -4,6 +4,7 @@
 # contributor: Thibaut Cuvelier - Developpez.com
 
 fr:
+  direction: ltr
   date:
     formats:
       default: "%d/%m/%Y"
diff --git a/config/locales/gl.yml b/config/locales/gl.yml
index 2a1d97e..68d26ba 100644
--- a/config/locales/gl.yml
+++ b/config/locales/gl.yml
@@ -45,6 +45,7 @@ gl:
           tb: "TB"
   
   
+  direction: ltr
   date:
     formats:
       default:  "%e/%m/%Y"
diff --git a/config/locales/he.yml b/config/locales/he.yml
index 532c601..053776c 100644
--- a/config/locales/he.yml
+++ b/config/locales/he.yml
@@ -3,6 +3,7 @@
 # Jul 2010 - Updated by Orgad Shaneh (orgads@gmail.com)
 
 he:
+  direction: rtl
   date:
     formats:
       default: "%d/%m/%Y"
diff --git a/config/locales/hr.yml b/config/locales/hr.yml
index 728a6d8..b460a79 100644
--- a/config/locales/hr.yml
+++ b/config/locales/hr.yml
@@ -2,6 +2,7 @@
 # by Helix d.o.o. (info@helix.hr)
 
 hr:
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/hu.yml b/config/locales/hu.yml
index 088027f..8c1a1bb 100644
--- a/config/locales/hu.yml
+++ b/config/locales/hu.yml
@@ -6,6 +6,7 @@
 # updated by Gábor Takács (taky77@gmail.com)
 
 "hu":
+  direction: ltr
   date:
     formats:
       default: "%Y.%m.%d."
diff --git a/config/locales/id.yml b/config/locales/id.yml
index ec6688e..7ea96f5 100644
--- a/config/locales/id.yml
+++ b/config/locales/id.yml
@@ -2,6 +2,7 @@
 # by Raden Prabowo (cakbowo@gmail.com)
 
 id:
+  direction: ltr
   date:
     formats:
       default: "%d-%m-%Y"
diff --git a/config/locales/it.yml b/config/locales/it.yml
index bab1c6a..201a57d 100644
--- a/config/locales/it.yml
+++ b/config/locales/it.yml
@@ -2,6 +2,7 @@
 # by Claudio Poli (masterkain@gmail.com)
 
 it:
+  direction: ltr
   date:
     formats:
       default: "%d-%m-%Y"
diff --git a/config/locales/ja.yml b/config/locales/ja.yml
index c82155b..4211190 100644
--- a/config/locales/ja.yml
+++ b/config/locales/ja.yml
@@ -3,6 +3,7 @@
 # AR error messages are basically taken from Ruby-GetText-Package. Thanks to Masao Mutoh.
 
 ja:
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/ko.yml b/config/locales/ko.yml
index d79c86c..1998e76 100644
--- a/config/locales/ko.yml
+++ b/config/locales/ko.yml
@@ -4,6 +4,7 @@
 # by Yonghwan SO(please insert your email), last update at 2009-09-11
 # last update at 2010-01-23 by Kihyun Yoon
 ko:
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/lt.yml b/config/locales/lt.yml
index 9bcafc7..1aad337 100644
--- a/config/locales/lt.yml
+++ b/config/locales/lt.yml
@@ -4,6 +4,7 @@
 #                      and Sergej Jegorov sergej.jegorov@gmail.com
 #					   and Gytis Gurklys gytis.gurklys@gmail.com
 lt:
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/lv.yml b/config/locales/lv.yml
index 351f852..ae13dc6 100644
--- a/config/locales/lv.yml
+++ b/config/locales/lv.yml
@@ -1,6 +1,7 @@
 # translated by Dzintars Bergs (dzintars.bergs@gmail.com)
 
 lv:
+  direction: ltr
   date:
     formats:
       default: "%d.%m.%Y"
diff --git a/config/locales/mn.yml b/config/locales/mn.yml
index 568e1f3..1e16472 100644
--- a/config/locales/mn.yml
+++ b/config/locales/mn.yml
@@ -1,4 +1,5 @@
 mn:
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/nl.yml b/config/locales/nl.yml
index 4472a19..c1c349d 100644
--- a/config/locales/nl.yml
+++ b/config/locales/nl.yml
@@ -1,4 +1,5 @@
 nl:
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/no.yml b/config/locales/no.yml
index 7d49537..9603c92 100644
--- a/config/locales/no.yml
+++ b/config/locales/no.yml
@@ -3,6 +3,7 @@
   support:
     array:
       sentence_connector: "og"
+  direction: ltr
   date:
     formats:
       default: "%d.%m.%Y"
diff --git a/config/locales/pl.yml b/config/locales/pl.yml
index 2dadc84..2deeb9e 100644
--- a/config/locales/pl.yml
+++ b/config/locales/pl.yml
@@ -33,6 +33,7 @@ pl:
           gb: "GB"
           tb: "TB"
 
+  direction: ltr
   date:
     formats:
       default: "%Y-%m-%d"
diff --git a/config/locales/pt-BR.yml b/config/locales/pt-BR.yml
index a66f237..1cb7f25 100644
--- a/config/locales/pt-BR.yml
+++ b/config/locales/pt-BR.yml
@@ -1,5 +1,6 @@
 pt-BR:
   # formatos de data e hora
+  direction: ltr
   date:
     formats:
       default: "%d/%m/%Y"
diff --git a/config/locales/pt.yml b/config/locales/pt.yml
index 615f316..c7bbe5b 100644
--- a/config/locales/pt.yml
+++ b/config/locales/pt.yml
@@ -6,6 +6,7 @@ pt:
       sentence_connector: "e"
       skip_last_comma: true
     
+  direction: ltr
   date:
     formats:
       default: "%d/%m/%Y"
diff --git a/config/locales/ro.yml b/config/locales/ro.yml
index 45fdd1e..9d4ae11 100644
--- a/config/locales/ro.yml
+++ b/config/locales/ro.yml
@@ -1,4 +1,5 @@
 ro:
+  direction: ltr
   date:
     formats:
       default: "%d-%m-%Y"
diff --git a/config/locales/ru.yml b/config/locales/ru.yml
index ee9ee37..2a2d1e4 100644
--- a/config/locales/ru.yml
+++ b/config/locales/ru.yml
@@ -11,6 +11,7 @@
 # была возможность минимальной локализации приложения на русский язык.
 
 ru:
+  direction: ltr
   date:
     formats:
       default: "%d.%m.%Y"
diff --git a/config/locales/sk.yml b/config/locales/sk.yml
index 0b2351e..1ea796f 100644
--- a/config/locales/sk.yml
+++ b/config/locales/sk.yml
@@ -1,4 +1,5 @@
 sk:
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/sl.yml b/config/locales/sl.yml
index aac2e43..12be9e3 100644
--- a/config/locales/sl.yml
+++ b/config/locales/sl.yml
@@ -1,4 +1,5 @@
 sl:
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/sr-CY.yml b/config/locales/sr-CY.yml
index 39cc5dc..6d5360e 100644
--- a/config/locales/sr-CY.yml
+++ b/config/locales/sr-CY.yml
@@ -1,6 +1,7 @@
 # Serbian translations for Redmine
 # by Vladimir Medarović (vlada@medarovic.com)
 sr-CY:
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/sr.yml b/config/locales/sr.yml
index f52d9e0..60c4f1b 100644
--- a/config/locales/sr.yml
+++ b/config/locales/sr.yml
@@ -1,6 +1,7 @@
 # Serbian translations for Redmine
 # by Vladimir Medarović (vlada@medarovic.com)
 sr:
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/sv.yml b/config/locales/sv.yml
index 35ebc10..b353ca6 100644
--- a/config/locales/sv.yml
+++ b/config/locales/sv.yml
@@ -131,6 +131,7 @@ sv:
         not_same_project: "tillhör inte samma projekt"
         circular_dependency: "Denna relation skulle skapa ett cirkulärt beroende"
 
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/th.yml b/config/locales/th.yml
index 2c127f3..e138bfc 100644
--- a/config/locales/th.yml
+++ b/config/locales/th.yml
@@ -1,4 +1,5 @@
 th:
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/tr.yml b/config/locales/tr.yml
index db43309..d91cfcf 100644
--- a/config/locales/tr.yml
+++ b/config/locales/tr.yml
@@ -5,6 +5,7 @@ tr:
   locale:
     native_name: Türkçe
     address_separator: " "
+  direction: ltr
   date:
     formats:
       default: "%d.%m.%Y"
diff --git a/config/locales/uk.yml b/config/locales/uk.yml
index 1a590dc..dedb180 100644
--- a/config/locales/uk.yml
+++ b/config/locales/uk.yml
@@ -1,4 +1,5 @@
 uk:
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/vi.yml b/config/locales/vi.yml
index f8ca507..1b5d435 100644
--- a/config/locales/vi.yml
+++ b/config/locales/vi.yml
@@ -140,6 +140,7 @@ vi:
         not_same_project: "không thuộc cùng dự án"
         circular_dependency: "quan hệ có thể gây ra lặp vô tận"
 
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/zh-TW.yml b/config/locales/zh-TW.yml
index 5a08041..55b54bd 100644
--- a/config/locales/zh-TW.yml
+++ b/config/locales/zh-TW.yml
@@ -3,6 +3,7 @@
 # See http://github.com/svenfuchs/rails-i18n/ for details.
 
 "zh-TW":
+  direction: ltr
   date:
     formats:
       # Use the strftime parameters for formats.
diff --git a/config/locales/zh.yml b/config/locales/zh.yml
index eeac629..ddee001 100644
--- a/config/locales/zh.yml
+++ b/config/locales/zh.yml
@@ -2,6 +2,7 @@
 # by tsechingho (http://github.com/tsechingho)
 
 zh:
+  direction: ltr
   date:
     formats:
       default: "%Y-%m-%d"
diff --git a/public/stylesheets/rtl.css b/public/stylesheets/rtl.css
new file mode 100644
index 0000000..906730c
--- /dev/null
+++ b/public/stylesheets/rtl.css
@@ -0,0 +1,53 @@
+body, #wrapper { direction: rtl;}
+
+#quick-search { float: left; }
+#main-menu { margin-left: -500px; left: auto; right: 6px; margin-right: 0px;}
+#main-menu li { float: right; }
+#top-menu ul { float: right; }
+#account { float: left; }
+#top-menu #loggedas { float: left; }
+#top-menu li { float: right; }
+.tabular label.floating
+{
+	margin-right: 0;
+	margin-left: auto;
+	text-align: right;
+}
+.tabular label 
+{
+	float: right;
+	margin-left: auto;
+}
+.tabular p { clear: right; }
+.tabular label.block { text-align: right; }
+
+.icon { background-position: 100% 40%; padding-right: 20px; padding-left: 0px; }
+div#activity dt, #search-results dt { background-position: 100% 50%; padding-right: 20px; padding-left: 0px; }
+#content .tabs ul li { float: right; }
+#content .tabs ul { padding-left: auto; padding-right: 1em; }
+table.progress { float: right; }
+.contextual { float: left; }
+.icon22 { background-position: 100% 40%; padding-right: 26px; padding-left: auto; }
+h3, .wiki h2 { padding: 10px 2px 1px 0; }
+.tooltip span.tip { text-align: right; }
+tr.issue td.subject { text-align: right; }
+tr.time-entry td.subject, tr.time-entry td.comments { text-align: right; }
+#sidebar { float: left; }
+#main.nosidebar #content { border-width: 1px; border-style: solid; border-color: #D7D7D7 #BBBBBB #BBBBBB #D7D7D7;}
+.tabular.settings label { margin-left: auto; }
+.splitcontentleft { float: right; }
+.splitcontentright { float: left; }
+p.progress-info { clear: right; }
+table.list td.buttons a { padding-right: 20px; }
+.filecontent { direction: ltr; }
+.entries { direction: ltr; }
+.changeset-changes { direction: ltr; padding-left: 2em }
+.changesets { direction: ltr; }
+div#issue-changesets { float: left; margin-right: 1em; margin-left: 0 }
+#activity dt, .journal { clear: right; }
+.journal-link { float: left; }
+
+#context-menu li.folder ul { left:auto; right:168px; }
+#context-menu li.folder>ul { left:auto; right:148px; }
+
+#context-menu li a.submenu { background:url("../images/bullet_arrow_left.png") left no-repeat; }
