:onclick => "showTab('#{tab[:name]}'); this.blur(); return false;" %></li>
<% end -%>
</ul>
+ <div class="tabs-buttons" style="display:none;">
+ <button class="tab-left" onclick="moveTabLeft(this);"></button>
+ <button class="tab-right" onclick="moveTabRight(this);"></button>
+ </div>
</div>
+<script>
+ Event.observe(window, 'load', function() { displayTabsButtons(); });
+ Event.observe(window, 'resize', function() { displayTabsButtons(); });
+</script>
+
<% tabs.each do |tab| -%>
<%= content_tag('div', render(:partial => tab[:partial], :locals => {:tab => tab} ),
:id => "tab-content-#{tab[:name]}",
return false;
}
+function moveTabRight(el) {
+ var lis = Element.up(el, 'div.tabs').down('ul').childElements();
+ var tabsWidth = 0;
+ var i;
+ for (i=0; i<lis.length; i++) {
+ if (lis[i].visible()) {
+ tabsWidth += lis[i].getWidth() + 6;
+ }
+ }
+ if (tabsWidth < Element.up(el, 'div.tabs').getWidth() - 60) {
+ return;
+ }
+ i=0;
+ while (i<lis.length && !lis[i].visible()) {
+ i++;
+ }
+ lis[i].hide();
+}
+
+function moveTabLeft(el) {
+ var lis = Element.up(el, 'div.tabs').down('ul').childElements();
+ var i = 0;
+ while (i<lis.length && !lis[i].visible()) {
+ i++;
+ }
+ if (i>0) {
+ lis[i-1].show();
+ }
+}
+
+function displayTabsButtons() {
+ var lis;
+ var tabsWidth = 0;
+ var i;
+ $$('div.tabs').each(function(el) {
+ lis = el.down('ul').childElements();
+ for (i=0; i<lis.length; i++) {
+ if (lis[i].visible()) {
+ tabsWidth += lis[i].getWidth() + 6;
+ }
+ }
+ if (tabsWidth < el.getWidth() - 60) {
+ el.down('div.tabs-buttons').hide();
+ } else {
+ el.down('div.tabs-buttons').show();
+ }
+ });
+}
+
function setPredecessorFieldsVisibility() {
relationType = $('relation_relation_type');
if (relationType && relationType.value == "precedes") {
p.progress-info {clear: left; font-style: italic; font-size: 80%;}
/***** Tabs *****/
-#content .tabs {height: 2.6em; border-bottom: 1px solid #bbbbbb; margin-bottom:1.2em; position:relative;}
-#content .tabs ul {margin:0; position:absolute; bottom:-2px; padding-left:1em;}
+#content .tabs {height: 2.6em; border-bottom: 1px solid #bbbbbb; margin-bottom:1.2em; position:relative; overflow:hidden;}
+#content .tabs ul {margin:0; position:absolute; bottom:-2px; padding-left:1em; width: 2000px;}
#content .tabs>ul { bottom:-1px; } /* others */
#content .tabs ul li {
float:left;
background-color: #fff;
}
+div.tabs-buttons { position:absolute; right: 0; width: 48px; height: 24px; background: white; bottom: -1px; }
+
+button.tab-left, button.tab-right {
+ font-size: 0.9em;
+ cursor: pointer;
+ height:24px;
+ border: 1px solid #ccc;
+ border-bottom: 1px solid #bbbbbb;
+ position:absolute;
+ padding:4px;
+ width: 20px;
+}
+
+button.tab-left {
+ right: 20px;
+ bottom: 0;
+ background: #eeeeee url(../images/bullet_arrow_left.png) no-repeat 50% 50%;
+}
+
+button.tab-right {
+ right: 0;
+ bottom: 0;
+ background: #eeeeee url(../images/bullet_arrow_right.png) no-repeat 50% 50%;}
+}
+
/***** Auto-complete *****/
div.autocomplete {
position:absolute;