From 51ecb2a6e64c8bdb27c5cd2dae05c8630fd25af9 Mon Sep 17 00:00:00 2001 From: Quinella Date: Mon, 23 Sep 2013 18:43:55 +0200 Subject: [PATCH] Adds the possibility to put sections (of formats) in other columns by changing it serverside --- js/client-mainmenu.js | 28 ++++++++++++++++++++++------ js/client.js | 15 ++++++++++++++- 2 files changed, 36 insertions(+), 7 deletions(-) diff --git a/js/client-mainmenu.js b/js/client-mainmenu.js index 15ccef913..87e6082f7 100644 --- a/js/client-mainmenu.js +++ b/js/client-mainmenu.js @@ -609,7 +609,7 @@ initialize: function(data) { var curFormat = data.format; var selectType = (this.sourceEl.closest('form').data('search') ? 'search' : 'challenge'); - var bufs = ['','']; + var bufs = []; var curBuf = 0; var curSection = ''; for (var i in BattleFormats) { @@ -620,17 +620,33 @@ if (format.section && format.section !== curSection) { curSection = format.section; - curBuf = (curSection === 'Doubles' || curSection === 'Past Generations') ? 1 : 0; + if (!BattleFormats._supportsColumns) { + curBuf = (curSection === 'Doubles' || curSection === 'Past Generations') ? 1 : 0; + } else { + curBuf = format.column || 0; + } + if (!bufs[curBuf]) { + bufs[curBuf] = ''; + } bufs[curBuf] += '
  • '+Tools.escapeHTML(curSection)+'

  • '; } bufs[curBuf] += '
  • '; } - if (bufs[1]) { - this.$el.html('
    '); - } else { - this.$el.html(''); + var html = ''; + for (var i = 0, l = bufs.length; i < l; i++) { + html += ''; } + html += '
    '; + this.$el.html(html); }, selectFormat: function(format) { var $teamButton = this.sourceEl.closest('form').find('button[name=team]'); diff --git a/js/client.js b/js/client.js index 05a4065fe..413ead902 100644 --- a/js/client.js +++ b/js/client.js @@ -919,13 +919,23 @@ parseFormats: function(formatsList) { var isSection = false; var section = ''; + + var column = 0; + var columnChanged = false; + BattleFormats = {}; for (var j=1; j