diff --git a/blocks/messages/styles.css b/blocks/messages/styles.css
index bbdc1f5ca64..aaa2baa57c0 100644
--- a/blocks/messages/styles.css
+++ b/blocks/messages/styles.css
@@ -1,5 +1,9 @@
.block_messages .content {text-align:left;padding-top:5px;}
.block_messages .content .list li.listentry {clear:both;}
-.block_messages .content .list li.listentry div.user {float:left;position:relative;}
-.block_messages .content .list li.listentry div.message {float:right;}
-.block_messages .content .footer {clear:both;}
\ No newline at end of file
+.block_messages .content .list li.listentry .user {float:left;position:relative;}
+.block_messages .content .list li.listentry .message {float:right;}
+.block_messages .content .info {text-align:center;}
+.block_messages .content .footer {clear:both;}
+
+.dir-rtl .block_messages .content .list li.listentry .user {float:right;}
+.dir-rtl .block_messages .content .list li.listentry .message {float:left;}
\ No newline at end of file
diff --git a/blocks/navigation/styles.css b/blocks/navigation/styles.css
index 63763ebf89f..6da90532f8b 100644
--- a/blocks/navigation/styles.css
+++ b/blocks/navigation/styles.css
@@ -35,16 +35,18 @@
.ie6 .block_navigation .block_tree .tree_item {width:100%;}
/** Overide for RTL layout **/
-.dir-rtl .block_navigation .block_tree {padding-right:0px;}
-.dir-rtl .block_navigation .block_tree li.item_with_icon > p img {right:0;}
-
-.dir-rtl .block_navigation .block_tree li ul {padding-right:0;}
-.dir-rtl .block_navigation .block_tree li.depth_2 ul {padding-right:16px;}
+.dir-rtl .block_navigation .block_tree li.depth_2 ul {padding-left:0;padding-right: 7px;}
.dir-rtl .block_navigation .block_tree .tree_item {padding-right: 18px;text-align:right;}
.dir-rtl .block_navigation .block_tree .tree_item.branch {background-position: center right;}
-.dir-rtl .block_navigation .block_tree .navigation_node.tree_item.branch {padding-right:0;}
-.dir-rtl .block_navigation .block_tree .root_node.leaf {padding-right:0px;}
+
+.dir-rtl .block_navigation .block_tree,
+.dir-rtl .block_navigation .block_tree li ul,
+.dir-rtl .block_navigation .block_tree .navigation_node.tree_item.branch,
+.dir-rtl .block_navigation .block_tree .root_node.leaf {padding-right:0;}
+
+.dir-rtl .block_navigation .block_tree li.item_with_icon > p img,
+.dir-rtl .block_navigation .block_tree .type_activity > .tree_item.branch img {right:0;left:auto;}
.jsenabled.dir-rtl .block_navigation .block_tree .tree_item.emptybranch {background-image: url([[pix:t/collapsed_empty_rtl]]);background-position: center right;}
.jsenabled.dir-rtl .block_navigation .block_tree .collapsed .tree_item.branch {background-image: url([[pix:t/collapsed_rtl]]);}
diff --git a/blocks/online_users/styles.css b/blocks/online_users/styles.css
index 4a6763b1bdb..baa80f3c431 100644
--- a/blocks/online_users/styles.css
+++ b/blocks/online_users/styles.css
@@ -1,3 +1,7 @@
.block_online_users .content .list li.listentry {clear:both;}
-.block_online_users .content .list li.listentry div.user {float:left;position:relative;}
-.block_online_users .content .list li.listentry div.message {float:right;}
\ No newline at end of file
+.block_online_users .content .list li.listentry .user {float:left;position:relative;}
+.block_online_users .content .list li.listentry .message {float:right;}
+.block_online_users .content .info {text-align:center;}
+
+.dir-rtl .block_online_users .content .list li.listentry .user {float:right;}
+.dir-rtl .block_online_users .content .list li.listentry .message {float:left;}
\ No newline at end of file
diff --git a/blocks/recent_activity/styles.css b/blocks/recent_activity/styles.css
index aa415d1bb68..8ac042598e2 100644
--- a/blocks/recent_activity/styles.css
+++ b/blocks/recent_activity/styles.css
@@ -1,4 +1,6 @@
.block_recent_activity .activitydate,
.block_recent_activity .activityhead {text-align:center;}
.block_recent_activity .unlist li {margin-bottom:1em;}
-.block_recent_activity li .head .date {float:right;}
\ No newline at end of file
+.block_recent_activity li .head .date {float:right;}
+
+.dir-rtl .block_recent_activity .content h3 {text-align: right;}
\ No newline at end of file
diff --git a/blocks/settings/styles.css b/blocks/settings/styles.css
index abe00c53aea..959309a985d 100644
--- a/blocks/settings/styles.css
+++ b/blocks/settings/styles.css
@@ -26,8 +26,9 @@
/** Overide for RTL layout **/
.dir-rtl .block_settings .block_tree {padding-right:0px;}
-.dir-rtl .block_settings .block_tree li ul {padding-right:16px;}
-.dir-rtl .block_settings .block_tree li.item_with_icon > p img {right:0;}
+.dir-rtl .block_settings .block_tree li ul {padding-left:0;padding-right: 7px;}
+.dir-rtl .block_settings .block_tree li.item_with_icon > p img,
+.dir-rtl .block_navigation .block_tree .type_activity > .tree_item.branch img {left:auto;right:0;}
.dir-rtl .block_settings .block_tree .tree_item {padding-right: 18px;text-align:right;}
.dir-rtl .block_settings .block_tree .tree_item.branch {background-position: center right;}
.dir-rtl .block_settings .block_tree .root_node.leaf {padding-right:0px;}
diff --git a/enrol/yui/enrolmentmanager/assets/skins/sam/enrolmentmanager.css b/enrol/yui/enrolmentmanager/assets/skins/sam/enrolmentmanager.css
index 72be3ff785e..29d09bc2b75 100644
--- a/enrol/yui/enrolmentmanager/assets/skins/sam/enrolmentmanager.css
+++ b/enrol/yui/enrolmentmanager/assets/skins/sam/enrolmentmanager.css
@@ -70,3 +70,7 @@ Structure of the user enroller panel
.user-enroller-panel .collapsiblearea {border:1px solid #bbb;background-color:#f6f6f6;}
.user-enroller-panel .collapsiblearea.hidden {display:none;}
.user-enroller-panel .collapsiblearea .uep-enrolment-option {margin:5px 1em;}
+
+.dir-rtl .user-enroller-panel .uep-header .close {right: auto;left:1em;}
+.dir-rtl .user-enroller-panel .uep-search-results .user { text-align: right;}
+.dir-rtl .user-enroller-panel .uep-content .uep-controls { text-align: right;}
\ No newline at end of file
diff --git a/mod/assignment/styles.css b/mod/assignment/styles.css
index 3d948982062..62a660e5183 100644
--- a/mod/assignment/styles.css
+++ b/mod/assignment/styles.css
@@ -37,3 +37,9 @@
#page-mod-assignment-submissions .optionspref {width: 50%;}
#page-mod-assignment-submissions .fastgbutton {text-align: center;}
+
+#page-mod-assignment-submissions.dir-rtl .fullname,
+#page-mod-assignment-submissions.dir-rtl .timemodified,
+#page-mod-assignment-submissions.dir-rtl .timemarked {text-align:right;}
+#page-mod-assignment-submissions.dir-rtl .mform.optionspref .fitem .fitemtitle {text-align:left;}
+#page-mod-assignment-type-uploadsingle-upload.dir-rtl .mdl-left {text-align:right;}
\ No newline at end of file
diff --git a/mod/chat/gui_ajax/theme/bubble/chat.css b/mod/chat/gui_ajax/theme/bubble/chat.css
index 11b098273d5..163cbcb1c29 100644
--- a/mod/chat/gui_ajax/theme/bubble/chat.css
+++ b/mod/chat/gui_ajax/theme/bubble/chat.css
@@ -1,5 +1,5 @@
.yui-skin-sam .yui-layout .yui-layout-hd { border:0; }
-.yui-skin-sam .yui-layout .yui-layout-unit div.yui-layout-bd-nohd { border:0; }
+.yui-skin-sam .yui-layout .yui-layout-unit div.yui-layout-bd-nohd { border:0; }
.yui-skin-sam .yui-layout .yui-layout-unit div.yui-layout-bd { border:0; }
.yui-skin-sam .yui-layout .yui-layout-unit div.yui-layout-unit-right { background: white; }
.yui-skin-sam .yui-layout-unit-bottom { background: #F2F2F2; }
@@ -8,44 +8,46 @@
.yui-skin-sam .yui-layout-unit-top { background: #FFE39D; }
.yui-skin-sam .yui-layout .yui-layout-unit div.yui-layout-bd { background: transparent; }
-#input-message {
- background:#FFFFFF url(input.png) repeat-x scroll 0 0;
- padding:0 9px;
- border: 1px solid #999;
- border-radius: 9px;
- -moz-border-radius: 9px;
-}
-.mdl-chat-entry, .mdl-chat-my-entry {
- clear:both;
-}
-.chat-message td {
- padding: 0;
-}
+#input-message {background:#FFFFFF url(input.png) repeat-x scroll 0 0;padding:0 9px;border: 1px solid #999;border-radius: 9px;-moz-border-radius: 9px;}
+.mdl-chat-entry,
+.mdl-chat-my-entry {clear:both;}
+.chat-message td {padding: 0;}
-.mdl-chat-entry .topleft { background:transparent url(bubbles.png) no-repeat scroll left top; height:9px; width:18px; }
-.mdl-chat-entry .top { background:transparent url(horizontal.png) repeat-x scroll center top; font-size:1px; height:9px; }
-.mdl-chat-entry .topright { background:transparent url(bubbles.png) no-repeat scroll -18px top; height:9px; width:11px; }
-.mdl-chat-entry .left { background:transparent url(vertical.png) repeat-y scroll left center; width:18px; }
-.mdl-chat-entry .conmts { background:#DCDCDC none repeat scroll 0 0; color:#000000; text-shadow:0 1px 0 #EEEEEE; }
-.mdl-chat-entry .right { background:transparent url(vertical.png) repeat-y scroll -18px 0; width:11px; }
-.mdl-chat-entry .bottomleft { background:transparent url(bubbles.png) no-repeat scroll left -9px; height:12px; width:18px; }
-.mdl-chat-entry .bottomright { background:transparent url(bubbles.png) no-repeat scroll right -9px; height:12px; width:11px; }
-.mdl-chat-entry .bottom { background:transparent url(horizontal.png) repeat-x scroll 0 -9px; height:12px; }
+.mdl-chat-entry .topleft {background:transparent url(bubbles.png) no-repeat scroll left top; height:9px; width:18px;}
+.mdl-chat-entry .top {background:transparent url(horizontal.png) repeat-x scroll center top; font-size:1px; height:9px;}
+.mdl-chat-entry .topright {background:transparent url(bubbles.png) no-repeat scroll -18px top; height:9px; width:11px;}
+.mdl-chat-entry .left {background:transparent url(vertical.png) repeat-y scroll left center; width:18px;}
+.mdl-chat-entry .conmts {background:#DCDCDC none repeat scroll 0 0; color:#000000; text-shadow:0 1px 0 #EEEEEE;}
+.mdl-chat-entry .right {background:transparent url(vertical.png) repeat-y scroll -18px 0; width:11px;}
+.mdl-chat-entry .bottomleft {background:transparent url(bubbles.png) no-repeat scroll left -9px; height:12px; width:18px;}
+.mdl-chat-entry .bottomright {background:transparent url(bubbles.png) no-repeat scroll right -9px; height:12px; width:11px;}
+.mdl-chat-entry .bottom {background:transparent url(horizontal.png) repeat-x scroll 0 -9px; height:12px;}
-.mdl-chat-my-entry .topleft{background:url(bubbles.png) no-repeat 0 -21px;height:9px;width:11px;}
-.mdl-chat-my-entry .topright{background:url(bubbles.png) no-repeat -11px -21px;height:9px;width:18px;}
-.mdl-chat-my-entry .bottomleft{background:url(bubbles.png) no-repeat 0 bottom;width:11px;height:12px;}
-.mdl-chat-my-entry .bottomright{background:url(bubbles.png) no-repeat right bottom;width:18px;height:12px;}
-.mdl-chat-my-entry .top{background:url(horizontal.png) repeat-x 0 -21px;font-size:1px;height:9px;}
-.mdl-chat-my-entry .bottom{background:url(horizontal.png) repeat-x bottom;height:12px;}
-.mdl-chat-my-entry .left{background:url(vertical.png) repeat-y -29px 0;width:11px;}
-.mdl-chat-my-entry .right{background:url(vertical.png) repeat-y right;width:18px;}
-.mdl-chat-my-entry .conmts{background:#C0E668;color:#000;}
-#chat-input-area ,#chat-input-area table.generaltable, #chat-input-area table.generaltable td.cell {
- background: #92B3E8;
- border: 0;
-}
-#chat-userlist {
- background: #E3E8F0;
- height: 100%;
-}
+.mdl-chat-my-entry .topleft {background:url(bubbles.png) no-repeat 0 -21px;height:9px;width:11px;}
+.mdl-chat-my-entry .topright {background:url(bubbles.png) no-repeat -11px -21px;height:9px;width:18px;}
+.mdl-chat-my-entry .bottomleft {background:url(bubbles.png) no-repeat 0 bottom;width:11px;height:12px;}
+.mdl-chat-my-entry .bottomright {background:url(bubbles.png) no-repeat right bottom;width:18px;height:12px;}
+.mdl-chat-my-entry .top {background:url(horizontal.png) repeat-x 0 -21px;font-size:1px;height:9px;}
+.mdl-chat-my-entry .bottom {background:url(horizontal.png) repeat-x bottom;height:12px;}
+.mdl-chat-my-entry .left {background:url(vertical.png) repeat-y -29px 0;width:11px;}
+.mdl-chat-my-entry .right {background:url(vertical.png) repeat-y right;width:18px;}
+.mdl-chat-my-entry .conmts {background:#C0E668;color:#000;}
+
+#chat-input-area,
+#chat-input-area table.generaltable,
+#chat-input-area table.generaltable td.cell {background: #92B3E8;border: 0;}
+#chat-userlist {background: #E3E8F0;height: 100%;}
+
+.dir-rtl .mdl-chat-entry .topleft {background-position: -18px 0;width:11px;}
+.dir-rtl .mdl-chat-entry .topright {background-position: 0 0;width:18px;}
+.dir-rtl .mdl-chat-entry .bottomleft {background-position: -18px -9px;width:11px;}
+.dir-rtl .mdl-chat-entry .bottomright {background-position: 0 -9px;width:18px;}
+.dir-rtl .mdl-chat-entry .right {background-position: 0 0;width:18px;}
+.dir-rtl .mdl-chat-entry .left {background-position: -18px 0;width:11px;}
+
+.dir-rtl .mdl-chat-my-entry .topleft {background-position: -13px -21px;width:18px;}
+.dir-rtl .mdl-chat-my-entry .topright {background-position: 0 -21px;width:11px;}
+.dir-rtl .mdl-chat-my-entry .bottomleft {background-position: -13px -30px;width:18px;}
+.dir-rtl .mdl-chat-my-entry .bottomright {background-position: 0 -30px;width:11px;}
+.dir-rtl .mdl-chat-my-entry .right {background-position: -29px 0;width:11px;}
+.dir-rtl .mdl-chat-my-entry .left {background-position: -42px 0;width:18px;}
\ No newline at end of file
diff --git a/mod/chat/gui_ajax/theme/compact/chat.css b/mod/chat/gui_ajax/theme/compact/chat.css
index e2518297900..1f431bf29f3 100644
--- a/mod/chat/gui_ajax/theme/compact/chat.css
+++ b/mod/chat/gui_ajax/theme/compact/chat.css
@@ -1,5 +1,5 @@
.yui-skin-sam .yui-layout .yui-layout-hd { border:0; }
-.yui-skin-sam .yui-layout .yui-layout-unit div.yui-layout-bd-nohd { border:0; }
+.yui-skin-sam .yui-layout .yui-layout-unit div.yui-layout-bd-nohd { border:0; }
.yui-skin-sam .yui-layout .yui-layout-unit div.yui-layout-bd { border:0; }
.yui-skin-sam .yui-layout .yui-layout-unit div.yui-layout-unit-right { background: white; }
.yui-skin-sam .yui-layout-unit-bottom { background: #F2F2F2; }
@@ -59,3 +59,6 @@
background: #E3E8F0;
height: 100%;
}
+
+.dir-rtl .chat-message {text-align:right;}
+.dir-rtl .mdl-chat-my-entry .chat-message .text {text-align:right;}
\ No newline at end of file
diff --git a/mod/data/lib.php b/mod/data/lib.php
index 8351cebe419..ec767b76945 100644
--- a/mod/data/lib.php
+++ b/mod/data/lib.php
@@ -500,50 +500,46 @@ function data_generate_default_template(&$data, $template, $recordid=0, $form=fa
// get all the fields for that database
if ($fields = $DB->get_records('data_fields', array('dataid'=>$data->id), 'id')) {
- $str = '
';
- $str .= '
';
-
+ $table = new html_table();
+ $table->attributes['class'] = 'mod-data-default-template';
+ $table->colclasses = array('template-field', 'template-token');
+ $table->data = array();
foreach ($fields as $field) {
-
- $str .= '';
- // Yu: commenting this out, the id was wrong and will fix later
- //if ($template == 'addtemplate') {
- //$str .= '';
-
- //} else {
- $str .= $field->name.': ';
- //}
- $str .= ' | ';
-
- $str .='';
if ($form) { // Print forms instead of data
$fieldobj = data_get_field($field, $data);
- $str .= $fieldobj->display_add_field($recordid);
-
+ $token = $fieldobj->display_add_field($recordid);
} else { // Just print the tag
- $str .= '[['.$field->name.']]';
+ $token = '[['.$field->name.']]';
}
- $str .= ' |
';
-
+ $table->data[] = array(
+ $field->name.': ',
+ $token
+ );
}
if ($template == 'listtemplate') {
- $str .= '##edit## ##more## ##delete## ##approve## ##export## |
';
+ $cell = new html_table_cell('##edit## ##more## ##delete## ##approve## ##export##');
+ $cell->colspan = 2;
+ $cell->attributes['class'] = 'controls';
+ $table->data[] = new html_table_row(array($cell));
} else if ($template == 'singletemplate') {
- $str .= '##edit## ##delete## ##approve## ##export## |
';
+ $cell = new html_table_cell('##edit## ##delete## ##approve## ##export##');
+ $cell->colspan = 2;
+ $cell->attributes['class'] = 'controls';
+ $table->data[] = new html_table_row(array($cell));
} else if ($template == 'asearchtemplate') {
- $str .= ''.get_string('authorfirstname', 'data').': | ##firstname## |
';
- $str .= ''.get_string('authorlastname', 'data').': | ##lastname## |
';
+ $row = new html_table_row(get_string('authorfirstname', 'data').': ', '##firstname##');
+ $row->attributes['class'] = 'searchcontrols';
+ $table->data[] = $row;
+ $row = new html_table_row(get_string('authorlastname', 'data').': ', '##lastname##');
+ $row->attributes['class'] = 'searchcontrols';
+ $table->data[] = $row;
}
- $str .= '
';
- $str .= '
';
-
+ $str = html_writer::start_tag('div', array('class' => 'defaulttemplate'));
+ $str .= html_writer::table($table);
+ $str .= html_writer::end_tag('div');
if ($template == 'listtemplate'){
- $str .= '
';
+ $str .= html_writer::empty_tag('hr');
}
if ($update) {
diff --git a/mod/data/styles.css b/mod/data/styles.css
index 33c672065d5..4f6846540c8 100644
--- a/mod/data/styles.css
+++ b/mod/data/styles.css
@@ -19,4 +19,18 @@
.path-mod-data-field .fieldadd select,
.path-mod-data-field .sortdefault select {margin-left: 1em;}
.path-mod-data-field .fieldname,
-.path-mod-data-field .fielddescription {width:300px;}
\ No newline at end of file
+.path-mod-data-field .fielddescription {width:300px;}
+
+/** UI Usability Hacks **/
+#page-mod-data-export #notice span {padding:0 10px;}
+#page-mod-data-edit input[id*="url"] {text-align:left;direction:ltr;}
+
+.mod-data-default-template td {vertical-align:top;}
+.mod-data-default-template .template-field {text-align:right;}
+.mod-data-default-template .template-token {text-align:left;}
+.mod-data-default-template .controls {text-align:center;}
+.mod-data-default-template searchcontrols {text-align:right;}
+
+.dir-rtl .mod-data-default-template .template-field {text-align:left;}
+.dir-rtl .mod-data-default-template .template-token {text-align:right;}
+.dir-rtl .mod-data-default-template searchcontrols {text-align:left;}
\ No newline at end of file
diff --git a/mod/wiki/styles.css b/mod/wiki/styles.css
index 497c3299e51..badfdb37933 100644
--- a/mod/wiki/styles.css
+++ b/mod/wiki/styles.css
@@ -314,6 +314,10 @@ a.wiki_edit_section {
text-align: left;
}
+.dir-rtl #wiki_printable_content {
+ text-align: right;
+}
+
#wiki_printable_content a {
color: black;
}
diff --git a/theme/base/pix/yui2-treeview-sprite-rtl.gif b/theme/base/pix/yui2-treeview-sprite-rtl.gif
new file mode 100644
index 00000000000..5198c1b8664
Binary files /dev/null and b/theme/base/pix/yui2-treeview-sprite-rtl.gif differ
diff --git a/theme/base/style/admin.css b/theme/base/style/admin.css
index 447ff464d69..b7194c78b2d 100644
--- a/theme/base/style/admin.css
+++ b/theme/base/style/admin.css
@@ -8,16 +8,16 @@
#page-admin-index .c0 {vertical-align: top;}
#page-admin-index .c1 {vertical-align: middle;}
-#page-admin-blocks table.generaltable th,
-#page-admin-filters table.generaltable th,
-#page-admin-auth table.generaltable th,
-#page-admin-modules table.generaltable th,
-#page-admin-modules table.generaltable td.c0 {white-space: nowrap;padding: 4px;}
+#page-admin-blocks .generaltable th,
+#page-admin-filters .generaltable th,
+#page-admin-auth .generaltable th,
+#page-admin-modules .generaltable th,
+#page-admin-modules .generaltable td.c0 {white-space: nowrap;padding: 4px;}
-#page-admin-blocks table.generaltable td.cell,
-#page-admin-filters table.generaltable td.cell,
-#page-admin-modules table.generaltable td.cell,
-#page-admin-auth table.generaltable td.cell{padding: 4px;}
+#page-admin-blocks .generaltable td.cell,
+#page-admin-filters .generaltable td.cell,
+#page-admin-modules .generaltable td.cell,
+#page-admin-auth .generaltable td.cell{padding: 4px;}
.path-admin .incompatibleblockstable td.c0 {font-weight: bold;}
@@ -111,6 +111,7 @@
.path-admin table.rolecap {margin-left: auto;margin-right: auto;}
.path-admin table.rolecap tr.rolecap th {text-align: left;font-weight: normal;}
+.path-admin.dir-rtl table.rolecap tr.rolecap th {text-align: right;}
.path-admin .rolecap .hiddenrow {display: none;}
.path-admin .rolecap .inherit,
.path-admin .rolecap .allow,
@@ -169,6 +170,7 @@
.dir-rtl #adminsettings .form-item .form-setting,
.dir-rtl #adminsettings .form-item .form-label,
.dir-rtl #adminsettings .form-item .form-description { float: right;text-align: right}
+.dir-rtl.path-admin .roleassigntable p {text-align: right;}
/** Plugins check */
#page-admin-index #plugins-check-info {text-align:center;margin:1em;}
diff --git a/theme/base/style/blocks.css b/theme/base/style/blocks.css
index b6ee0a1129d..3984fbd8dc2 100644
--- a/theme/base/style/blocks.css
+++ b/theme/base/style/blocks.css
@@ -27,5 +27,6 @@
.block.hidden .block-hider-show {display:inline;}
/** Overide for RTL layout **/
-.dir-rtl .block .header .block_action {float:left;}
+.dir-rtl .block .header,
+.dir-rtl .block h2.header {text-align:right;}
.dir-rtl .block .header .commands { text-align: right;}
\ No newline at end of file
diff --git a/theme/base/style/core.css b/theme/base/style/core.css
index 4a9552fd4be..269857b4b21 100644
--- a/theme/base/style/core.css
+++ b/theme/base/style/core.css
@@ -12,9 +12,11 @@ a img {border-width:0;}
acronym,
abbr {cursor: help;}
.dir-ltr,
-.mdl-left {text-align: left;}
+.mdl-left,
+.dir-rtl .mdl-right {text-align: left;}
.dir-rtl,
-.mdl-right {text-align: right;}
+.mdl-right,
+.dir-rtl .mdl-left {text-align: right;}
#add,
#remove,
.centerpara,
@@ -247,6 +249,7 @@ a.skip:active {position: static;display: block;}
.groupmanagementtable #addselect_wrapper {width: 100%;}
.groupmanagementtable #removeselect_wrapper label,
.groupmanagementtable #addselect_wrapper label {font-weight: normal;}
+.dir-rtl .groupmanagementtable p {text-align: right;}
#group-usersummary {width: 14em;}
.groupselector {margin-top: 3px;margin-bottom: 3px;}
@@ -474,6 +477,7 @@ body.tag .managelink {padding: 5px;}
.file-picker .fp-toolbar {padding: .8em;background: #FFFFCC;text-align:center;margin: 3px;}
.file-picker .fp-toolbar a {padding: 0 .5em;}
.file-picker .fp-list {list-style-type:none;padding:0;float:left;width:100%;margin:0;}
+.dir-rtl .file-picker .fp-list {text-align:right;}
.file-picker .fp-list li {border-bottom:1px dotted gray;margin-bottom: 1em;}
.file-picker .fp-repo-name {display:block;padding: .5em;margin-bottom: .5em;}
.file-picker .fp-pathbar {margin: .4em;border-bottom: 1px dotted gray;}
@@ -697,11 +701,74 @@ body.tag .managelink {padding: 5px;}
.mod-indent-15,
.mod-indent-huge {margin-left:300px;}
+.dir-rtl .felement.feditor select {margin-right:18.75%;}
+
/* Resourcelib mp3 player size: only width could be changed here, height hardcoded in JS */
.resourcecontent .resourcemediaplugin_mp3 object {height:25px; width: 600px}
/*
Fix for SubScript & SuperScript
------------------------------*/
-sub { vertical-align: sub;}
-sup { vertical-align: super;}
+sub {vertical-align: sub;}
+sup {vertical-align: super;}
+
+/** Fix YUI 2 Treeview for Right to left languages **/
+.dir-rtl .ygtvtn,
+.dir-rtl .ygtvtm,
+.dir-rtl .ygtvtmh,
+.dir-rtl .ygtvtmhh,
+.dir-rtl .ygtvtp,
+.dir-rtl .ygtvtph,
+.dir-rtl .ygtvtphh,
+.dir-rtl .ygtvln,
+.dir-rtl .ygtvlm,
+.dir-rtl .ygtvlmh,
+.dir-rtl .ygtvlmhh,
+.dir-rtl .ygtvlp,
+.dir-rtl .ygtvlph,
+.dir-rtl .ygtvlphh,
+.dir-rtl .ygtvdepthcell,
+.dir-rtl .ygtvok,
+.dir-rtl .ygtvok:hover,
+.dir-rtl .ygtvcancel,
+.dir-rtl .ygtvcancel:hover {width:18px; height:22px; background-image:url([[pix:theme|yui2-treeview-sprite-rtl]]); background-repeat: no-repeat; cursor:pointer;}
+
+.dir-rtl .ygtvtn {background-position: 0 -5600px;}
+.dir-rtl .ygtvtm {background-position: 0 -4000px;}
+.dir-rtl .ygtvtmh,
+.dir-rtl .ygtvtmhh {background-position: 0 -4800px;}
+.dir-rtl .ygtvtp {background-position: 0 -6400px;}
+.dir-rtl .ygtvtph,
+.dir-rtl .ygtvtphh {background-position: 0 -7200px;}
+.dir-rtl .ygtvln {background-position: 0 -1600px;}
+.dir-rtl .ygtvlm {background-position: 0 0;}
+.dir-rtl .ygtvlmh,
+.dir-rtl .ygtvlmhh {background-position: 0 -800px;}
+.dir-rtl .ygtvlp {background-position: 0 -2400px;}
+.dir-rtl .ygtvlph,
+.dir-rtl .ygtvlphh {background-position: 0 -3200px}
+.dir-rtl .ygtvdepthcell {background-position: 0 -8000px;}
+.dir-rtl .ygtvok {background-position: 0 -8800px;}
+.dir-rtl .ygtvok:hover {background-position: 0 -8844px;}
+.dir-rtl .ygtvcancel {background-position: 0 -8822px;}
+.dir-rtl .ygtvcancel:hover {background-position: 0 -8866px;}
+
+.dir-rtl #yui-gen4.yui-layout-unit-left {left:500px !important;}
+.dir-rtl #yui-gen6.yui-layout-unit-center {left:0px !important;}
+.dir-rtl.yui-skin-sam .yui-panel .hd {text-align:left;}
+.dir-rtl .yui-skin-sam .yui-layout .yui-layout-unit div.yui-layout-bd {text-align:right;}
+
+/** Fix TinyMCE editor right to left **/
+.dir-rtl .clearlooks2.ie9 .mceAlert .mceMiddle span,.dir-rtl .clearlooks2 .mceConfirm .mceMiddle span {top: 44px;}
+.dir-rtl .o2k7Skin table,
+.dir-rtl .o2k7Skin tbody,
+.dir-rtl .o2k7Skin a,
+.dir-rtl .o2k7Skin img,
+.dir-rtl .o2k7Skin tr,
+.dir-rtl .o2k7Skin div,
+.dir-rtl .o2k7Skin td,
+.dir-rtl .o2k7Skin iframe,
+.dir-rtl .o2k7Skin span,
+.dir-rtl .o2k7Skin *,
+.dir-rtl .o2k7Skin .mceText,
+.dir-rtl .o2k7Skin .mceListBox .mceText {text-align:right;}
\ No newline at end of file
diff --git a/theme/base/style/pagelayout.css b/theme/base/style/pagelayout.css
index bedb4c6d1cb..89a5e14da8a 100644
--- a/theme/base/style/pagelayout.css
+++ b/theme/base/style/pagelayout.css
@@ -90,4 +90,4 @@ body {margin:auto 0px;width:auto;}
.ie6.pagelayout-report #report-main-content {float:none;width:auto;}
.ie6.pagelayout-report #report-region-wrap {float:none;width:200px;left:auto;position:absolute;top:0;}
.ie6.pagelayout-report #report-region-pre,
-.ie6.pagelayout-report #report-region-pre .block {width:100%;}
+.ie6.pagelayout-report #report-region-pre .block {width:100%;}
\ No newline at end of file
diff --git a/theme/base/style/question.css b/theme/base/style/question.css
index 437e9a7adb0..14086eaa2eb 100644
--- a/theme/base/style/question.css
+++ b/theme/base/style/question.css
@@ -32,19 +32,25 @@ body.jsenabled #qtypechoicecontainer {display: block;}
.questionbank .singleselect { margin: 0; }
.que {text-align: left;margin: 0 auto 1.8em auto;border: 1px solid;}
+.dir-rtl .que {text-align: right;}
.que .info {float: left;margin: 0.5em 0;width: 11.9%;}
+.dir-rtl .que .info {float: right;}
.que .info h2 {margin: 0 0 0 0.64em;}
.que .info div {margin-left: 1em;}
.que .info .questionflag {margin-top: 1em;margin-right: 1em;text-align: center;}
.que .ablock {margin: 0.7em 0 0.3em 0;}
.que .answer {float: left;width: 83%;margin-bottom: 0.5em;}
+.dir-rtl .que .answer {float: right;}
.que .content {float: left;margin: 0.5em 0;width: 88%;}
+.dir-rtl .que .content {float: right;}
.que .control {width: 5%;}
.que .feedback {clear: both;padding: 0 0 0.3em 0.3em;margin-bottom: 0.5em;border: 1px solid;}
.que .prompt {float: left;width: 15%;height: 2em;padding-top: 0.3em;}
+.dir-rtl .que .prompt {float: right;}
.que .qtext {margin-bottom: 1.5em;}
.que .submit {position: relative;clear: both;float: left;}
+.dir-rtl .que .submit {float: right;}
.que .grading,
.que .comment,
diff --git a/theme/base/style/user.css b/theme/base/style/user.css
index 213615124fc..4466bbf6d47 100644
--- a/theme/base/style/user.css
+++ b/theme/base/style/user.css
@@ -40,6 +40,7 @@
.userselector div label {margin-right: 0.3em;}
#userselector_options .collapsibleregioncaption {font-weight: bold;}
#userselector_options p {margin:0.2em 0;text-align:left;}
+.dir-rtl #userselector_options p {text-align:right;}
/** user full profile */
#page-user-profile .messagebox {text-align:center;margin-left:auto;margin-right:auto;}
/** user course profile */
@@ -48,4 +49,6 @@
/** Overide for RTL layout **/
.dir-rtl .userprofile .profilepicture {float:right; margin-left:20px;margin-right:0px;}
.dir-rtl .descriptionbox {margin-right: 110px;margin-left: 0px; }
-
+.dir-rtl .userlist table#participants td,
+.dir-rtl .userlist table#participants th {text-align: right;}
+.dir-rtl .userlist table#participants {margin: 0 auto;}
\ No newline at end of file
diff --git a/theme/standard/style/admin.css b/theme/standard/style/admin.css
index 39cf0fe3b82..331183ce7e3 100644
--- a/theme/standard/style/admin.css
+++ b/theme/standard/style/admin.css
@@ -143,3 +143,15 @@ table.flexible .r1 {background-color: #FAFAFA;}
#page-admin-webservice-service_users .missingcaps {color: #ff6600;font-size: 90%;}
#page-admin-setting-webservicetokens .missingcaps {color: #ff6600;font-size: 90%;}
#page-admin-webservice-service_functions .functiondesc {font-size: 90%;}
+
+/**
+ * Right to left fixes
+ */
+#page-admin-blocks.dir-rtl .generaltable th.c0,
+#page-admin-blocks.dir-rtl .generaltable td.c0,
+#page-admin-filters.dir-rtl .generaltable th.c0,
+#page-admin-filters.dir-rtl .generaltable td.c0,
+#page-admin-modules.dir-rtl .generaltable th.c0,
+#page-admin-modules.dir-rtl .generaltable td.c0,
+#page-admin-auth.dir-rtl .generaltable th.c0,
+#page-admin-auth.dir-rtl .generaltable td.c0 {text-align: right;}
\ No newline at end of file
diff --git a/theme/standard/style/blocks.css b/theme/standard/style/blocks.css
index 0a8abec1dbc..20e52ed2f2a 100644
--- a/theme/standard/style/blocks.css
+++ b/theme/standard/style/blocks.css
@@ -16,6 +16,7 @@
.block h2.header {text-align: left;margin:0;padding:4px;padding-top:0;border-bottom-width: 0;}
.block .content h2 {text-align: left;margin:1.5em 0 0;padding:0;}
.block .content h3 {text-align: left;}
+.dir-rtl .block .content h3 {text-align: right;}
.block .content hr {height:1px;margin-top:4px;margin-bottom:4px;border:none;border-top:1px solid;padding:0;}
.block .content .head {margin-top: 10px;}
.block .header .icon.hide,
diff --git a/theme/standard/style/modules.css b/theme/standard/style/modules.css
index b16a98d6385..e19bfdd0891 100644
--- a/theme/standard/style/modules.css
+++ b/theme/standard/style/modules.css
@@ -103,12 +103,16 @@ table.mod_index {width:90%;margin:1em auto;}
#page-mod-forum-view .forumheaderlist {border-color:#DDDDDD;} /** border around posts in */
#email .unsubscribelink {border-width: 0px 1px 0px 0px;border-style: solid;text-align:center;}
#page-mod-forum-view .highlight2 {color:#AA0000;}
+#page-mod-forum-view.dir-rtl .forumheaderlist .discussion .starter {text-align:right;}
/** Glossary **/
.path-mod-glossary .glossarypost {border:1px solid #DDD;}
+#page-mod-glossary-view.dir-rtl .glossarypost {text-align: right;}
.path-mod-glossary .glossarypost .entry {padding: 3px;}
.path-mod-glossary .glossarypost .concept h3 {font-size: 1em;margin: 0;font-weight: normal;text-align: left;}
+#page-mod-glossary-view.dir-rtl .glossarypost .concept h3 {text-align: right;}
.path-mod-glossary .glossarypost .entryheader {font-weight: normal;text-align: left;}
+#page-mod-glossary-view.dir-rtl .glossarypost .entryheader {text-align:right;}
.path-mod-glossary .glossarypost .entryheader h3 {display:inline;}
.path-mod-glossary .glossarypost .entryheader,
.path-mod-glossary .glossarypost .entryapproval,
@@ -131,6 +135,7 @@ table.mod_index {width:90%;margin:1em auto;}
#page-mod-glossary-report table tr.teacher {background: #F0F0F0;}
#page-mod-glossary-view table.glossarycategoryheader {background-color: #DDD;}
#page-mod-glossary-view table.glossarycategoryheader h2 {font-size: 1em;margin: 0;}
+#page-mod-glossary-view .tabtree {margin-bottom: -12px;}
/** Lesson **/
.path-mod-lesson .compacttable,