Merge pull request #378 from ethereum/editor-trivial-cleanup

Some of the trivial cleanup steps from editor/storage
pull/1/head
chriseth 8 years ago committed by GitHub
commit 917452928f
  1. 20
      src/app.js
  2. 36
      src/app/storage.js

@ -209,7 +209,7 @@ var run = function () {
var fileList = $('input.inputFile')[0].files var fileList = $('input.inputFile')[0].files
for (var i = 0; i < fileList.length; i++) { for (var i = 0; i < fileList.length; i++) {
var name = fileList[i].name var name = fileList[i].name
if (!storage.exists(utils.fileKey(name)) || confirm('The file ' + name + ' already exists! Would you like to overwrite it?')) { if (!editor.hasFile(name) || confirm('The file ' + name + ' already exists! Would you like to overwrite it?')) {
editor.uploadFile(fileList[i], updateFiles) editor.uploadFile(fileList[i], updateFiles)
} }
} }
@ -241,7 +241,7 @@ var run = function () {
$fileNameInputEl.off('keyup') $fileNameInputEl.off('keyup')
if (newName !== originalName && confirm( if (newName !== originalName && confirm(
storage.exists(utils.fileKey(newName)) editor.hasFile(newName)
? 'Are you sure you want to overwrite: ' + newName + ' with ' + originalName + '?' ? 'Are you sure you want to overwrite: ' + newName + ' with ' + originalName + '?'
: 'Are you sure you want to rename: ' + originalName + ' to ' + newName + '?')) { : 'Are you sure you want to rename: ' + originalName + ' to ' + newName + '?')) {
storage.rename(utils.fileKey(originalName), utils.fileKey(newName)) storage.rename(utils.fileKey(originalName), utils.fileKey(newName))
@ -280,11 +280,6 @@ var run = function () {
return false return false
} }
function activeFileTab () {
var name = utils.fileNameFromKey(editor.getCacheFile())
return $('#files .file').filter(function () { return $(this).find('.name').text() === name })
}
function updateFiles () { function updateFiles () {
var $filesEl = $('#files') var $filesEl = $('#files')
var files = editor.getFiles() var files = editor.getFiles()
@ -293,11 +288,13 @@ var run = function () {
$('#output').empty() $('#output').empty()
for (var f in files) { for (var f in files) {
$filesEl.append(fileTabTemplate(files[f])) var name = utils.fileNameFromKey(files[f])
$filesEl.append($('<li class="file"><span class="name">' + name + '</span><span class="remove"><i class="fa fa-close"></i></span></li>'))
} }
if (editor.cacheFileIsPresent()) { if (editor.cacheFileIsPresent()) {
var active = activeFileTab() var currentFileName = utils.fileNameFromKey(editor.getCacheFile())
var active = $('#files .file').filter(function () { return $(this).find('.name').text() === currentFileName })
active.addClass('active') active.addClass('active')
editor.resetSession() editor.resetSession()
} }
@ -306,11 +303,6 @@ var run = function () {
reAdjust() reAdjust()
} }
function fileTabTemplate (key) {
var name = utils.fileNameFromKey(key)
return $('<li class="file"><span class="name">' + name + '</span><span class="remove"><i class="fa fa-close"></i></span></li>')
}
var $filesWrapper = $('.files-wrapper') var $filesWrapper = $('.files-wrapper')
var $scrollerRight = $('.scroller-right') var $scrollerRight = $('.scroller-right')
var $scrollerLeft = $('.scroller-left') var $scrollerLeft = $('.scroller-left')

@ -1,37 +1,31 @@
'use strict' 'use strict'
var utils = require('./utils')
function Storage () { function Storage () {
this.rename = function (originalName, newName) { this.exists = function (name) {
var content = this.get(originalName) return !!this.get(name)
this.set(newName, content)
this.remove(originalName)
} }
this.remove = function (name) { this.get = function (name) {
window.localStorage.removeItem(name) return window.localStorage.getItem(name)
}
this.getFileContent = function (key) {
return this.get(utils.fileKey(key))
} }
this.exists = function (key) { this.set = function (name, content) {
return !!this.get(key) window.localStorage.setItem(name, content)
} }
this.set = function (key, content) { this.keys = function () {
window.localStorage.setItem(key, content) // NOTE: this is a workaround for some browsers
return Object.keys(window.localStorage).filter(function (item) { return item !== null && item !== undefined })
} }
this.get = function (key) { this.remove = function (name) {
return window.localStorage.getItem(key) window.localStorage.removeItem(name)
} }
this.keys = function () { this.rename = function (originalName, newName) {
// NOTE: this is a workaround for some browsers var content = this.get(originalName)
return Object.keys(window.localStorage).filter(function (item) { return item !== null && item !== undefined }) this.set(newName, content)
this.remove(originalName)
} }
this.loadFile = function (filename, content) { this.loadFile = function (filename, content) {

Loading…
Cancel
Save