From 8eb42e83b324d314a2553279ab19034e71ac329d Mon Sep 17 00:00:00 2001 From: asgdf Date: Thu, 3 Aug 2017 02:29:18 +0200 Subject: [PATCH] Allow export of the 'uncategorized' format folder (#976) --- js/client-teambuilder.js | 11 ++++++++--- js/storage.js | 6 +++--- test/test.ts | 2 +- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/js/client-teambuilder.js b/js/client-teambuilder.js index 3141565dc..9eabbd832 100644 --- a/js/client-teambuilder.js +++ b/js/client-teambuilder.js @@ -706,11 +706,11 @@ this.edit(0); }, createTeam: function () { - var format = this.curFolder; + var format = this.curFolder || 'gen7'; var folder = ''; if (format && format.charAt(format.length - 1) === '/') { folder = format.slice(0, -1); - format = ''; + format = 'gen7'; } var newTeam = { name: 'Untitled ' + (teams.length + 1), @@ -1030,9 +1030,14 @@ this.curSetList.splice(this.curSetList.length - 1, 1); } + var isGenericFormat = function (formatName) { + if (!formatName) return true; + if (/^gen\d+$/.test(formatName)) return true; + return false; + }; if (exports.BattleFormats) { buf += '
  • '; - buf += ''; + buf += ''; var btnClass = 'button' + (!this.curSetList.length ? ' disabled' : ''); buf += '
  • '; } diff --git a/js/storage.js b/js/storage.js index 4310f26dc..a7d92f7a9 100644 --- a/js/storage.js +++ b/js/storage.js @@ -542,7 +542,7 @@ Storage.unpackAllTeams = function (buffer) { if (buffer.charAt(0) === '[' && $.trim(buffer).indexOf('\n') < 0) { // old format return JSON.parse(buffer).map(function (oldTeam) { - var format = oldTeam.format || ''; + var format = oldTeam.format || 'gen7'; if (format && format.slice(0, 3) !== 'gen') format = 'gen6' + format; return { name: oldTeam.name || '', @@ -561,7 +561,7 @@ Storage.unpackAllTeams = function (buffer) { if (bracketIndex > pipeIndex) bracketIndex = -1; var slashIndex = line.lastIndexOf('/', pipeIndex); if (slashIndex < 0) slashIndex = bracketIndex; // line.slice(slashIndex + 1, pipeIndex) will be '' - var format = bracketIndex > 0 ? line.slice(0, bracketIndex) : ''; + var format = bracketIndex > 0 ? line.slice(0, bracketIndex) : 'gen7'; if (format && format.slice(0, 3) !== 'gen') format = 'gen6' + format; return { name: line.slice(slashIndex + 1, pipeIndex), @@ -987,7 +987,7 @@ Storage.importTeam = function (text, teams) { } else if (line.substr(0, 3) === '===' && teams) { team = []; line = $.trim(line.substr(3, line.length - 6)); - var format = ''; + var format = 'gen7'; var bracketIndex = line.indexOf(']'); if (bracketIndex >= 0) { format = line.substr(1, bracketIndex - 1); diff --git a/test/test.ts b/test/test.ts index 043924fcc..6310eaf70 100644 --- a/test/test.ts +++ b/test/test.ts @@ -15,7 +15,7 @@ fixture('Pokemon Showdown') }) .beforeEach(t => t.maximizeWindow()); -const expectedTeam = `=== Untitled 1 === +const expectedTeam = `=== [gen7] Untitled 1 === Abomasnow-Mega @ Abomasite\x20\x20 Ability: Snow Warning`;