Fixing bug with application require for now. Shoutout for Firebase.
This commit is contained in:
parent
250b7322a9
commit
70cd16cee4
14 changed files with 46 additions and 58 deletions
app
|
@ -5,19 +5,30 @@ locale = require 'locale/locale'
|
||||||
Tracker = require 'lib/Tracker'
|
Tracker = require 'lib/Tracker'
|
||||||
CocoView = require 'views/kinds/CocoView'
|
CocoView = require 'views/kinds/CocoView'
|
||||||
|
|
||||||
|
preventBackspace = (event) ->
|
||||||
|
if event.keyCode is 8 and not elementAcceptsKeystrokes(event.srcElement or event.target)
|
||||||
|
event.preventDefault()
|
||||||
|
|
||||||
|
elementAcceptsKeystrokes = (el) ->
|
||||||
|
# http://stackoverflow.com/questions/1495219/how-can-i-prevent-the-backspace-key-from-navigating-back
|
||||||
|
el ?= document.activeElement
|
||||||
|
tag = el.tagName.toLowerCase()
|
||||||
|
type = el.type?.toLowerCase()
|
||||||
|
textInputTypes = ['text', 'password', 'file', 'number', 'search', 'url', 'tel', 'email', 'date', 'month', 'week', 'time', 'datetimelocal']
|
||||||
|
# not radio, checkbox, range, or color
|
||||||
|
return (tag is 'textarea' or (tag is 'input' and type in textInputTypes) or el.contentEditable in ["", "true"]) and not (el.readOnly or el.disabled)
|
||||||
|
|
||||||
COMMON_FILES = ['/images/modal_background.png', '/images/level/code_palette_background.png']
|
COMMON_FILES = ['/images/modal_background.png', '/images/level/code_palette_background.png']
|
||||||
preload = (arrayOfImages) ->
|
preload = (arrayOfImages) ->
|
||||||
$(arrayOfImages).each ->
|
$(arrayOfImages).each ->
|
||||||
$('<img/>')[0].src = @
|
$('<img/>')[0].src = @
|
||||||
|
|
||||||
|
|
||||||
Application = initialize: ->
|
Application = initialize: ->
|
||||||
Router = require('lib/Router')
|
Router = require('lib/Router')
|
||||||
@tracker = new Tracker()
|
@tracker = new Tracker()
|
||||||
new FacebookHandler()
|
new FacebookHandler()
|
||||||
new GPlusHandler()
|
new GPlusHandler()
|
||||||
$(document).bind 'keydown', preventBackspace
|
$(document).bind 'keydown', preventBackspace
|
||||||
console.log 'done applied it'
|
|
||||||
|
|
||||||
preload(COMMON_FILES)
|
preload(COMMON_FILES)
|
||||||
$.i18n.init {
|
$.i18n.init {
|
||||||
|
@ -36,19 +47,3 @@ Application = initialize: ->
|
||||||
|
|
||||||
module.exports = Application
|
module.exports = Application
|
||||||
window.application = Application
|
window.application = Application
|
||||||
|
|
||||||
|
|
||||||
preventBackspace = (event) ->
|
|
||||||
console.log 'PREVENT', event
|
|
||||||
if event.keyCode is 8 and not elementAcceptsKeystrokes(event.srcElement or event.target)
|
|
||||||
event.preventDefault()
|
|
||||||
# event.preventDefault()
|
|
||||||
|
|
||||||
elementAcceptsKeystrokes = (el) ->
|
|
||||||
# http://stackoverflow.com/questions/1495219/how-can-i-prevent-the-backspace-key-from-navigating-back
|
|
||||||
el ?= document.activeElement
|
|
||||||
tag = el.tagName.toLowerCase()
|
|
||||||
type = el.type?.toLowerCase()
|
|
||||||
textInputTypes = ['text', 'password', 'file', 'number', 'search', 'url', 'tel', 'email', 'date', 'month', 'week', 'time', 'datetimelocal']
|
|
||||||
# not radio, checkbox, range, or color
|
|
||||||
return (tag is 'textarea' or (tag is 'input' and type in textInputTypes) or el.contentEditable in ["", "true"]) and not (el.readOnly or el.disabled)
|
|
||||||
|
|
BIN
app/assets/images/pages/base/firebase.png
Normal file
BIN
app/assets/images/pages/base/firebase.png
Normal file
Binary file not shown.
After ![]() (image error) Size: 8.1 KiB |
|
@ -161,4 +161,3 @@ module.exports = class LevelLoader extends CocoClass
|
||||||
destroy: ->
|
destroy: ->
|
||||||
@supermodel.off 'loaded-one', @onSupermodelLoadedOne
|
@supermodel.off 'loaded-one', @onSupermodelLoadedOne
|
||||||
super()
|
super()
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
application = require 'application'
|
|
||||||
{me} = require 'lib/auth'
|
{me} = require 'lib/auth'
|
||||||
|
|
||||||
gplusClientID = "800329290710-j9sivplv2gpcdgkrsis9rff3o417mlfa.apps.googleusercontent.com"
|
gplusClientID = "800329290710-j9sivplv2gpcdgkrsis9rff3o417mlfa.apps.googleusercontent.com"
|
||||||
|
@ -62,7 +61,7 @@ module.exports = class CocoRouter extends Backbone.Router
|
||||||
@renderLoginButtons()
|
@renderLoginButtons()
|
||||||
|
|
||||||
renderLoginButtons: ->
|
renderLoginButtons: ->
|
||||||
$('.share-buttons').addClass('fade-in').delay(10000).removeClass('fade-in', 5000)
|
$('.share-buttons, .partner-badges').addClass('fade-in').delay(10000).removeClass('fade-in', 5000)
|
||||||
setTimeout(FB.XFBML.parse, 10) if FB? # Handles FB login and Like
|
setTimeout(FB.XFBML.parse, 10) if FB? # Handles FB login and Like
|
||||||
twttr?.widgets?.load()
|
twttr?.widgets?.load()
|
||||||
|
|
||||||
|
|
|
@ -88,10 +88,9 @@ h1 h2 h3 h4
|
||||||
padding-top: 25px
|
padding-top: 25px
|
||||||
text-align: center
|
text-align: center
|
||||||
|
|
||||||
.mixpanel-badge
|
.mixpanel-badge, .firebase-badge
|
||||||
display: block
|
|
||||||
width: 100px
|
width: 100px
|
||||||
margin: 10px auto 0px
|
margin: 10px 10px 0px
|
||||||
|
|
||||||
.footer-link-text a
|
.footer-link-text a
|
||||||
font-family: 'Bangers', cursive
|
font-family: 'Bangers', cursive
|
||||||
|
@ -103,7 +102,7 @@ h1 h2 h3 h4
|
||||||
a[data-toggle="modal"]
|
a[data-toggle="modal"]
|
||||||
cursor: pointer
|
cursor: pointer
|
||||||
|
|
||||||
.share-buttons
|
.share-buttons, .partner-badges
|
||||||
margin-top: 10px
|
margin-top: 10px
|
||||||
text-align: center
|
text-align: center
|
||||||
@include opacity(75)
|
@include opacity(75)
|
||||||
|
|
|
@ -58,5 +58,8 @@ body
|
||||||
.fb-like(data-href="https://www.facebook.com/codecombat", data-send="false", data-layout="button_count", data-width="350", data-show-faces="true", data-ref="coco_footer_#{fbRef}")
|
.fb-like(data-href="https://www.facebook.com/codecombat", data-send="false", data-layout="button_count", data-width="350", data-show-faces="true", data-ref="coco_footer_#{fbRef}")
|
||||||
a.twitter-follow-button(href="https://twitter.com/CodeCombat", data-show-count="true", data-show-screen-name="false", data-dnt="true", data-align="right", data-i18n="nav.twitter_follow") Follow
|
a.twitter-follow-button(href="https://twitter.com/CodeCombat", data-show-count="true", data-show-screen-name="false", data-dnt="true", data-align="right", data-i18n="nav.twitter_follow") Follow
|
||||||
//iframe(src="https://www.lendyour.net/embed/lendbutton?account_id=6&campaign_id=7", frameBorder="0")
|
//iframe(src="https://www.lendyour.net/embed/lendbutton?account_id=6&campaign_id=7", frameBorder="0")
|
||||||
|
.partner-badges
|
||||||
a.mixpanel-badge(href="https://mixpanel.com/f/partner")
|
a.mixpanel-badge(href="https://mixpanel.com/f/partner")
|
||||||
img(src="//cdn.mxpnl.com/site_media/images/partner/badge_light.png", alt="Mobile Analytics")
|
img(src="//cdn.mxpnl.com/site_media/images/partner/badge_light.png", alt="Mobile Analytics")
|
||||||
|
a.firebase-bade(href="https://www.firebase.com/")
|
||||||
|
img(src="/images/pages/base/firebase.png", alt="Powered by Firebase")
|
|
@ -1,3 +1,4 @@
|
||||||
|
SignupModalView = require 'views/modal/signup_modal'
|
||||||
View = require 'views/kinds/RootView'
|
View = require 'views/kinds/RootView'
|
||||||
{me} = require('lib/auth')
|
{me} = require('lib/auth')
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
View = require 'views/kinds/RootView'
|
View = require 'views/kinds/RootView'
|
||||||
template = require 'templates/editor/article/edit'
|
template = require 'templates/editor/article/edit'
|
||||||
Article = require 'models/Article'
|
Article = require 'models/Article'
|
||||||
app = require 'application'
|
|
||||||
|
|
||||||
module.exports = class ArticleEditView extends View
|
module.exports = class ArticleEditView extends View
|
||||||
id: "editor-article-edit-view"
|
id: "editor-article-edit-view"
|
||||||
|
|
|
@ -3,7 +3,6 @@ template = require 'templates/editor/level/edit'
|
||||||
Level = require 'models/Level'
|
Level = require 'models/Level'
|
||||||
LevelSystem = require 'models/LevelSystem'
|
LevelSystem = require 'models/LevelSystem'
|
||||||
World = require 'lib/world/world'
|
World = require 'lib/world/world'
|
||||||
app = require 'application'
|
|
||||||
DocumentFiles = require 'collections/DocumentFiles'
|
DocumentFiles = require 'collections/DocumentFiles'
|
||||||
|
|
||||||
ThangsTabView = require './thangs_tab_view'
|
ThangsTabView = require './thangs_tab_view'
|
||||||
|
|
|
@ -2,7 +2,6 @@ View = require 'views/kinds/ModalView'
|
||||||
template = require 'templates/editor/level/fork'
|
template = require 'templates/editor/level/fork'
|
||||||
forms = require 'lib/forms'
|
forms = require 'lib/forms'
|
||||||
Level = require 'models/Level'
|
Level = require 'models/Level'
|
||||||
application = require('application')
|
|
||||||
|
|
||||||
module.exports = class LevelForkView extends View
|
module.exports = class LevelForkView extends View
|
||||||
id: "editor-level-fork-modal"
|
id: "editor-level-fork-modal"
|
||||||
|
|
|
@ -3,7 +3,6 @@ template = require 'templates/editor/level/save'
|
||||||
forms = require 'lib/forms'
|
forms = require 'lib/forms'
|
||||||
LevelComponent = require 'models/LevelComponent'
|
LevelComponent = require 'models/LevelComponent'
|
||||||
LevelSystem = require 'models/LevelSystem'
|
LevelSystem = require 'models/LevelSystem'
|
||||||
application = require('application')
|
|
||||||
|
|
||||||
module.exports = class LevelSaveView extends SaveVersionModal
|
module.exports = class LevelSaveView extends SaveVersionModal
|
||||||
template: template
|
template: template
|
||||||
|
|
|
@ -4,7 +4,6 @@ ThangType = require 'models/ThangType'
|
||||||
SpriteParser = require 'lib/sprites/SpriteParser'
|
SpriteParser = require 'lib/sprites/SpriteParser'
|
||||||
SpriteBuilder = require 'lib/sprites/SpriteBuilder'
|
SpriteBuilder = require 'lib/sprites/SpriteBuilder'
|
||||||
CocoSprite = require 'lib/surface/CocoSprite'
|
CocoSprite = require 'lib/surface/CocoSprite'
|
||||||
app = require 'application'
|
|
||||||
Camera = require 'lib/surface/Camera'
|
Camera = require 'lib/surface/Camera'
|
||||||
ThangComponentEditView = require 'views/editor/components/main'
|
ThangComponentEditView = require 'views/editor/components/main'
|
||||||
DocumentFiles = require 'collections/DocumentFiles'
|
DocumentFiles = require 'collections/DocumentFiles'
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
application = require 'application'
|
|
||||||
SuperModel = require 'models/SuperModel'
|
SuperModel = require 'models/SuperModel'
|
||||||
utils = require 'lib/utils'
|
utils = require 'lib/utils'
|
||||||
CocoClass = require 'lib/CocoClass'
|
CocoClass = require 'lib/CocoClass'
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
View = require 'views/kinds/RootView'
|
View = require 'views/kinds/RootView'
|
||||||
template = require 'templates/play/level'
|
template = require 'templates/play/level'
|
||||||
{me} = require('lib/auth')
|
{me} = require('lib/auth')
|
||||||
application = require('application')
|
|
||||||
ThangType = require 'models/ThangType'
|
ThangType = require 'models/ThangType'
|
||||||
|
|
||||||
# temp hard coded data
|
# temp hard coded data
|
||||||
|
@ -202,7 +201,6 @@ module.exports = class PlayLevelView extends View
|
||||||
window.tracker?.identify {skipBreakThePrison: skip}
|
window.tracker?.identify {skipBreakThePrison: skip}
|
||||||
url = '/play/level/taunt' if skip
|
url = '/play/level/taunt' if skip
|
||||||
|
|
||||||
# application.router.navigate url, trigger: true
|
|
||||||
Backbone.Mediator.publish 'router:navigate', {
|
Backbone.Mediator.publish 'router:navigate', {
|
||||||
route: url,
|
route: url,
|
||||||
viewClass: PlayLevelView,
|
viewClass: PlayLevelView,
|
||||||
|
|
Reference in a new issue