diff --git a/.localeapp/log.yml b/.localeapp/log.yml
index 84b966f2..fce063a3 100644
--- a/.localeapp/log.yml
+++ b/.localeapp/log.yml
@@ -1,3 +1,3 @@
 ---
-:polled_at: 1354548824
-:updated_at: 1354548824
+:polled_at: 1355238733
+:updated_at: 1355238733
diff --git a/.travis.yml b/.travis.yml
index de6b82f6..f0b1cddc 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -3,7 +3,16 @@ rvm:
   - 1.9.3
 before_script:
   - bundle exec rakep
-script: "bundle exec rspec spec"
+env:
+  - "TEST_SUITE=spec"
+  - "TEST_SUITE=ember"
+script: "script/ci"
+
+matrix:
+  allow_failures:
+    - env: "TEST_SUITE=ember"
+      rvm: "1.9.3"
+
 notifications:
   irc: "irc.freenode.org#travis"
   campfire:
diff --git a/Gemfile b/Gemfile
index 36a38603..80eb440f 100644
--- a/Gemfile
+++ b/Gemfile
@@ -4,6 +4,7 @@ source :rubygems
 
 gem 'puma'
 gem 'rack-ssl', '~> 1.3'
+gem 'rack-protection', '~> 1.3'
 gem 'rack-cache'
 gem 'rack-mobile-detect'
 gem 'sinatra'
diff --git a/Gemfile.lock b/Gemfile.lock
index a1571259..d81e476e 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -71,9 +71,7 @@ GEM
     rack (1.4.1)
     rack-cache (1.2)
       rack (>= 0.4)
-    rack-mobile-detect (0.4.0)
-      rack
-    rack-protection (1.3.2)
+    rack-protection (1.2.0)
       rack
     rack-ssl (1.3.2)
       rack
@@ -130,7 +128,6 @@ DEPENDENCIES
   localeapp-handlebars_i18n
   puma
   rack-cache
-  rack-mobile-detect
   rack-ssl (~> 1.3)
   rake (~> 0.9.2)
   rake-pipeline!
diff --git a/assets/scripts/app/auth.coffee b/assets/scripts/app/auth.coffee
index 61e0b868..3fc495ba 100644
--- a/assets/scripts/app/auth.coffee
+++ b/assets/scripts/app/auth.coffee
@@ -9,23 +9,23 @@
     window.addEventListener('message', (e) => @receiveMessage(e))
 
   accessToken: (->
-    sessionStorage.getItem('travis.token')
+    Travis.sessionStorage.getItem('travis.token')
   ).property()
 
   # if the user is in the session storage, we're using it. if we have a flag
   # for auto signin then we're trying to sign in.
   autoSignIn: (path) ->
     console.log 'autoSignIn'
-    global  = localStorage.getItem('travis.user')
-    session = sessionStorage.getItem('travis.user')
+    global  = Travis.storage.getItem('travis.user')
+    session = Travis.sessionStorage.getItem('travis.user')
     user    = session || global
     if user
-      localStorage.setItem('travis.user', user) unless global
+      Travis.storage.setItem('travis.user', user) unless global
       data = JSON.parse(user)
       data = { user: data } unless data.user?
       @setData(data)
-    else if localStorage.getItem('travis.auto_signin')
-      console.log 'travis.auto_signin', localStorage.getItem('travis.auto_signin')
+    else if Travis.storage.getItem('travis.auto_signin')
+      console.log 'travis.auto_signin', Travis.storage.getItem('travis.auto_signin')
       @signIn()
 
   # try signing in, but check later in case we have a timeout
@@ -36,11 +36,12 @@
     Ember.run.later(this, @checkSignIn.bind(this), @timeout)
 
   signOut: ->
-    localStorage.removeItem('travis.auto_signin')
-    localStorage.removeItem('travis.locale')
-    localStorage.removeItem('travis.user')
-    localStorage.removeItem('travis.token')
-    sessionStorage.clear()
+    Travis.storage.removeItem('travis.auto_signin')
+    Travis.storage.removeItem('travis.locale')
+    Travis.storage.removeItem('travis.user')
+    Travis.storage.removeItem('travis.token')
+    Travis.sessionStorage.clear()
+    Travis.setLocale Travis.default_locale
     @setData()
 
   trySignIn: ->
@@ -52,7 +53,7 @@
 
   forceSignIn: ->
     console.log 'forceSignIn'
-    localStorage.setItem('travis.auto_signin', 'true')
+    Travis.storage.setItem('travis.auto_signin', 'true')
     window.location = "#{@endpoint}/auth/handshake?redirect_uri=#{location}"
 
   # TODO should have clearData() to clean this up
@@ -65,30 +66,31 @@
     @afterSignIn(data.user) if data?.user
 
   afterSignIn: (user) ->
+    Travis.setLocale user.locale || Travis.default_locale
     Travis.trigger('user:signed_in', user)
     @get('app.router').send('afterSignIn', @readAfterSignInPath())
 
   storeToken: (token) ->
-    token = token || localStorage.getItem('travis.token')
+    token = token || Travis.storage.getItem('travis.token')
     if token
-      localStorage.setItem('travis.token', token)
-      sessionStorage.setItem('travis.token', token)
+      Travis.storage.setItem('travis.token', token)
+      Travis.sessionStorage.setItem('travis.token', token)
       @notifyPropertyChange('accessToken')
 
   storeUser: (user) ->
-    localStorage.setItem('travis.auto_signin', 'true')
-    sessionStorage.setItem('travis.user', JSON.stringify(user))
+    Travis.storage.setItem('travis.auto_signin', 'true')
+    Travis.sessionStorage.setItem('travis.user', JSON.stringify(user))
     @app.store.load(Travis.User, user)
     user = @app.store.find(Travis.User, user.id)
     user.get('permissions')
     user
 
   storeAfterSignInPath: (path) ->
-    sessionStorage.setItem('travis.after_signin_path', path)
+    Travis.sessionStorage.setItem('travis.after_signin_path', path)
 
   readAfterSignInPath: ->
-    path = sessionStorage.getItem('travis.after_signin_path')
-    sessionStorage.removeItem('travis.after_signin_path')
+    path = Travis.sessionStorage.getItem('travis.after_signin_path')
+    Travis.sessionStorage.removeItem('travis.after_signin_path')
     path
 
   receiveMessage: (event) ->
diff --git a/assets/scripts/app/controllers/repos.coffee b/assets/scripts/app/controllers/repos.coffee
index a5b70701..fc9fe39c 100644
--- a/assets/scripts/app/controllers/repos.coffee
+++ b/assets/scripts/app/controllers/repos.coffee
@@ -2,7 +2,6 @@ require 'travis/limited_array'
 
 Travis.ReposController = Ember.ArrayController.extend
   defaultTab: 'recent'
-  sortProperties: ['sortOrder']
   isLoadedBinding: 'content.isLoaded'
 
   init: ->
@@ -21,7 +20,10 @@ Travis.ReposController = Ember.ArrayController.extend
 
   viewRecent: ->
     content = Travis.LimitedArray.create
-      content: Travis.Repo.find()
+      content: Em.ArrayProxy.extend(Em.SortableMixin).create(
+        sortProperties: ['sortOrder']
+        content: Travis.Repo.find()
+      )
       limit: 30
     @set('content', content)
     # @set('content', Travis.Repo.find())
diff --git a/assets/scripts/app/helpers.coffee b/assets/scripts/app/helpers.coffee
index bcbd98c1..ac77424a 100644
--- a/assets/scripts/app/helpers.coffee
+++ b/assets/scripts/app/helpers.coffee
@@ -1,3 +1,4 @@
 require 'helpers/handlebars'
 require 'helpers/helpers'
 require 'helpers/urls'
+require 'helpers/i18n_handlebars'
diff --git a/assets/scripts/app/helpers/handlebars.coffee b/assets/scripts/app/helpers/handlebars.coffee
index ac09eb8d..d86aa80d 100644
--- a/assets/scripts/app/helpers/handlebars.coffee
+++ b/assets/scripts/app/helpers/handlebars.coffee
@@ -6,11 +6,11 @@ safe = (string) ->
 Handlebars.registerHelper 'tipsy', (text, tip) ->
   safe '<span class="tool-tip" original-title="' + tip + '">' + text + '</span>'
 
-Handlebars.registerHelper 't', (key) ->
-  safe I18n.t(key)
-
 Ember.registerBoundHelper 'capitalize', (value, options) ->
-  safe $.capitalize(value)
+  if value?
+    safe $.capitalize(value)
+  else
+    ''
 
 Ember.registerBoundHelper 'formatTime', (value, options) ->
   safe Travis.Helpers.timeAgoInWords(value) || '-'
diff --git a/assets/scripts/app/helpers/i18n_handlebars.coffee b/assets/scripts/app/helpers/i18n_handlebars.coffee
new file mode 100644
index 00000000..38e6bfbc
--- /dev/null
+++ b/assets/scripts/app/helpers/i18n_handlebars.coffee
@@ -0,0 +1,34 @@
+I18nBoundView = Ember.View.extend Ember._Metamorph, {
+
+  key: null,
+
+  valueDidChange: ->
+    return if this.morph.isRemoved()
+    this.morph.html(this.valueForRender())
+
+  valueForRender: ->
+    new Handlebars.SafeString I18n.t(this.key)
+
+  init: ->
+    this._super()
+    Travis.addObserver('locale', this, 'valueDidChange')
+
+  didInsertElement: ->
+    this.valueDidChange()
+
+  destroy: ->
+    Travis.removeObserver('locale', this, 'valueDidChange')
+    this._super()
+
+  render: (buffer) ->
+    buffer.push(this.valueForRender())
+}
+
+Ember.Handlebars.registerHelper 't', (key, options) ->
+  view = options.data.view
+  bindView = view.createChildView(I18nBoundView, { key: key })
+  view.appendChild(bindView)
+  # dont write any content from this helper, let the child view
+  # take care of itself.
+  false
+
diff --git a/assets/scripts/app/helpers/urls.coffee b/assets/scripts/app/helpers/urls.coffee
index 18777375..337da674 100644
--- a/assets/scripts/app/helpers/urls.coffee
+++ b/assets/scripts/app/helpers/urls.coffee
@@ -30,10 +30,10 @@
     "http://github.com/#{slug}/network"
 
   githubAdmin: (slug) ->
-    "http://github.com/#{slug}/admin/hooks#travis_minibucket"
+    "http://github.com/#{slug}/settings/hooks#travis_minibucket"
 
   statusImage: (slug, branch) ->
-    "https://secure.travis-ci.org/#{slug}.png" + if branch then "?branch=#{branch}" else ''
+    "#{location.protocol}//#{location.host}/#{slug}.png" + if branch then "?branch=#{branch}" else ''
 
   email: (email) ->
     "mailto:#{email}"
diff --git a/assets/scripts/app/models/broadcast.coffee b/assets/scripts/app/models/broadcast.coffee
index df61f901..dab4fe4d 100644
--- a/assets/scripts/app/models/broadcast.coffee
+++ b/assets/scripts/app/models/broadcast.coffee
@@ -12,11 +12,15 @@ require 'travis/model'
 
   setSeen: ->
     Travis.Broadcast.seen.pushObject(@get('id'))
-    localStorage.setItem('travis.seen_broadcasts', JSON.stringify(Travis.Broadcast.seen))
+    Travis.storage.setItem('travis.seen_broadcasts', JSON.stringify(Travis.Broadcast.seen))
     @notifyPropertyChange('isSeen')
 
 @Travis.Broadcast.reopenClass
-  seen: Ember.A(JSON.parse(localStorage.getItem('travis.seen_broadcasts')) || [])
+  seen: (->
+    seenBroadcasts = Travis.storage.getItem('travis.seen_broadcasts')
+    seenBroadcasts = JSON.parse(seenBroadcasts) if seenBroadcasts?
+    Ember.A(seenBroadcasts || [])
+  )()
 
   # TODO fix or monkey-patch the adapter's url and key lookup/generation crap
   # url: 'users/broadcasts'
diff --git a/assets/scripts/app/models/hook.coffee b/assets/scripts/app/models/hook.coffee
index 61b285b4..0e6cdc8e 100644
--- a/assets/scripts/app/models/hook.coffee
+++ b/assets/scripts/app/models/hook.coffee
@@ -19,7 +19,7 @@ require 'travis/model'
   ).property()
 
   urlGithubAdmin: (->
-    "http://github.com/#{@get('slug')}/admin/hooks#travis_minibucket"
+    "http://github.com/#{@get('slug')}/settings/hooks#travis_minibucket"
   ).property()
 
   toggle: ->
diff --git a/assets/scripts/app/models/repo.coffee b/assets/scripts/app/models/repo.coffee
index 6b22908e..2e662a50 100644
--- a/assets/scripts/app/models/repo.coffee
+++ b/assets/scripts/app/models/repo.coffee
@@ -12,6 +12,14 @@ require 'travis/model'
 
   lastBuild: DS.belongsTo('Travis.Build')
 
+  lastBuildHash: (->
+    {
+      id: @get('lastBuildId')
+      number: @get('lastBuildNumber')
+      repo: this
+    }
+  ).property('lastBuildId', 'lastBuildNumber')
+
   allBuilds: (->
     allBuilds = DS.RecordArray.create
       type: Travis.Build
diff --git a/assets/scripts/app/models/user.coffee b/assets/scripts/app/models/user.coffee
index 58bb3710..f9bb05d4 100644
--- a/assets/scripts/app/models/user.coffee
+++ b/assets/scripts/app/models/user.coffee
@@ -19,7 +19,7 @@ require 'travis/model'
     Ember.run.next this, ->
       transaction = @get('store').transaction()
       transaction.add this
-
+    
   urlGithub: (->
     "https://github.com/#{@get('login')}"
   ).property()
@@ -32,8 +32,7 @@ require 'travis/model'
   ).property()
 
   updateLocale: (locale) ->
-    @setWithSession('locale', locale)
-
+    
     transaction = @get('transaction')
     transaction.commit()
 
@@ -45,6 +44,7 @@ require 'travis/model'
         transaction.add self
 
     @addObserver 'isSaving', observer
+    Travis.setLocale(locale)
 
   type: (->
     'user'
@@ -71,6 +71,6 @@ require 'travis/model'
 
   setWithSession: (name, value) ->
     @set(name, value)
-    user = JSON.parse(sessionStorage?.getItem('travis.user'))
+    user = JSON.parse(Travis.sessionStorage.getItem('travis.user'))
     user[$.underscore(name)] = @get(name)
-    sessionStorage?.setItem('travis.user', JSON.stringify(user))
+    Travis.sessionStorage.setItem('travis.user', JSON.stringify(user))
diff --git a/assets/scripts/app/routes.coffee b/assets/scripts/app/routes.coffee
index b5e852de..9939e0bf 100644
--- a/assets/scripts/app/routes.coffee
+++ b/assets/scripts/app/routes.coffee
@@ -115,6 +115,7 @@ Travis.Router = Ember.Router.extend
         router.get('accountsController').set('content', Travis.Account.find())
         router.get('applicationController').connectOutlet 'top', 'top'
         router.get('applicationController').connectOutlet 'left', 'accounts'
+        router.get('applicationController').connectOutlet 'flash', 'flash'
 
       index: Ember.Route.extend
         route: '/'
diff --git a/assets/scripts/app/slider.coffee b/assets/scripts/app/slider.coffee
index f983fccc..470f42c1 100644
--- a/assets/scripts/app/slider.coffee
+++ b/assets/scripts/app/slider.coffee
@@ -1,10 +1,10 @@
 @Travis.Slider = ->
-  @minimize() if localStorage?.getItem('travis.maximized') == 'true'
+  @minimize() if Travis.storage.getItem('travis.maximized') == 'true'
   this
 
 $.extend Travis.Slider.prototype,
   persist: ->
-    localStorage?.setItem('travis.maximized', @isMinimized())
+    Travis.storage.setItem('travis.maximized', @isMinimized())
 
   isMinimized: ->
     return $('body').hasClass('maximized');
diff --git a/assets/scripts/app/templates/profile/tabs/user.hbs b/assets/scripts/app/templates/profile/tabs/user.hbs
index 94a8a006..59c6b131 100644
--- a/assets/scripts/app/templates/profile/tabs/user.hbs
+++ b/assets/scripts/app/templates/profile/tabs/user.hbs
@@ -25,18 +25,16 @@
       {{user.token}}
     </dd>
   </div>
+  <div>
+    <dt>
+      {{t profiles.show.locale}}:
+    </dt>
+    <dd>
+      {{view Ember.Select id="locale"
+        contentBinding="view.locales"
+        valueBinding="Travis.app.currentUser.locale"
+        optionLabelPath="content.name"
+        optionValuePath="content.key"}}
+    </dd>
+  </div>
 </dl>
-
-<form>
-  {{view Ember.Select id="locale"
-     contentBinding="view.locales"
-     valueBinding="Travis.app.currentUser.locale"
-     optionLabelPath="content.name"
-     optionValuePath="content.key"}}
-
-  <button name="commit" {{action saveLocale target="view"}}>
-    {{t profiles.show.update_locale}}
-  </button>
-</form>
-
-
diff --git a/assets/scripts/app/templates/repos/list.hbs b/assets/scripts/app/templates/repos/list.hbs
index 1cebc6f5..1a1eca71 100644
--- a/assets/scripts/app/templates/repos/list.hbs
+++ b/assets/scripts/app/templates/repos/list.hbs
@@ -13,9 +13,11 @@
           <a {{action showRepo this href=true}} class="slug">{{slug}}</a>
         {{/if}}
       </div>
-      {{#if lastBuildId}}
-        <a {{action showBuild this lastBuildId href=true}} class="last_build">{{lastBuildNumber}}</a>
-      {{/if}}
+      {{#with lastBuildHash}}
+        {{#if id}}
+          <a {{action showBuild repo id href=true}} class="last_build">{{number}}</a>
+        {{/if}}
+      {{/with}}
 
       <p class="summary">
         <span class="duration_label">{{t repositories.duration}}:</span>
diff --git a/assets/scripts/app/templates/repos/show/tabs.hbs b/assets/scripts/app/templates/repos/show/tabs.hbs
index a0649cda..f906d3d9 100644
--- a/assets/scripts/app/templates/repos/show/tabs.hbs
+++ b/assets/scripts/app/templates/repos/show/tabs.hbs
@@ -37,20 +37,24 @@
   </li>
   <li id="tab_build" {{bindAttr class="view.classBuild"}}>
     <h5>
-      {{#if view.build.id}}
-      <a {{action showBuild view.repo view.build href=true}}>
-        {{t repositories.tabs.build}} #{{view.build.number}}
-      </a>
-      {{/if}}
+      {{#with view.build}}
+        {{#if id}}
+          <a {{action showBuild repo this href=true}}>
+            {{t repositories.tabs.build}} #{{number}}
+          </a>
+        {{/if}}
+      {{/with}}
     </h5>
   </li>
   <li id="tab_job" {{bindAttr class="view.classJob"}}>
     <h5>
-      {{#if view.job.id}}
-      <a {{action showJob view.repo view.job href=true}}>
-        {{t repositories.tabs.job}} #{{view.job.number}}
-      </a>
-      {{/if}}
+      {{#with view.job}}
+        {{#if id}}
+          <a {{action showJob repo this href=true}}>
+            {{t repositories.tabs.job}} #{{number}}
+          </a>
+        {{/if}}
+      {{/with}}
     </h5>
   </li>
 </ul>
diff --git a/assets/scripts/app/views/application.coffee b/assets/scripts/app/views/application.coffee
index 48403270..f738ccb4 100644
--- a/assets/scripts/app/views/application.coffee
+++ b/assets/scripts/app/views/application.coffee
@@ -12,13 +12,6 @@
     # popup: (event) ->
     #   console.log event
 
-    localeDidChange: (->
-      if locale = Travis.app.get('auth.user.locale')
-        if Travis.needsLocaleChange(locale)
-          Travis.setLocale(locale)
-          Travis.app.get('router').reload()
-    ).observes('Travis.app.auth.user.locale')
-
     click: (event) ->
       # TODO: this solves the case of closing menus and popups,
       #       but I would like to rewrite it later, not sure how
diff --git a/assets/scripts/app/views/profile.coffee b/assets/scripts/app/views/profile.coffee
index 1926f149..d476203f 100644
--- a/assets/scripts/app/views/profile.coffee
+++ b/assets/scripts/app/views/profile.coffee
@@ -44,26 +44,25 @@
       "#{location.protocol}//www.gravatar.com/avatar/#{@get('user.gravatarId')}?s=48&d=mm"
     ).property('user.gravatarId')
 
-    # locale: (->
-    #   @get('user.locale')
-    # ).property('user.locale')
+    locale: (->
+      @get('user.locale')
+    ).property('user.locale')
 
     locales: (->
       [
         { key: null, name: '' }
         { key: 'en', name: 'English' }
-        { key: 'ca', name: 'Catalan' }
-        { key: 'cs', name: 'Čeština' }
         { key: 'es', name: 'Español' }
         { key: 'fr', name: 'Français' }
         { key: 'ja', name: '日本語' }
         { key: 'nl', name: 'Nederlands' }
         { key: 'nb', name: 'Norsk Bokmål' }
         { key: 'pl', name: 'Polski' }
-        { key: 'pt-BR': name: 'Português brasileiro' }
+        { key: 'pt-BR', name: 'Português brasileiro' }
         { key: 'ru', name: 'Русский' }
       ]
     ).property()
-
-    saveLocale: (event) ->
+    
+    change: (event) ->
+      return unless $('#locale').val()
       @get('user').updateLocale($('#locale').val())
diff --git a/assets/scripts/app/views/sidebar.coffee b/assets/scripts/app/views/sidebar.coffee
index 677e3189..3b34fdf0 100644
--- a/assets/scripts/app/views/sidebar.coffee
+++ b/assets/scripts/app/views/sidebar.coffee
@@ -45,7 +45,6 @@
       didInsertElement: ->
         queues = for queue in Travis.QUEUES
           Travis.LimitedArray.create
-            debug: true
             content: Travis.Job.queued(queue.name), limit: 20
             id: "queue_#{queue.name}"
             name: queue.display
diff --git a/assets/scripts/config/locales.js b/assets/scripts/config/locales.js
index ae2a7eb8..57e2ab73 100644
--- a/assets/scripts/config/locales.js
+++ b/assets/scripts/config/locales.js
@@ -1 +1 @@
-I18n.translations = {"en":{"build":{"duration":"Duration","finished_at":"Finished","job":"Job"},"builds":{"allowed_failures":"Allowed Failures","author":"Author","branch":"Branch","build_matrix":"Build Matrix","commit":"Commit","committer":"Committer","compare":"Compare","config":"Config","duration":"Duration","finished_at":"Finished","message":"Message","messages":{"sponsored_by":"This test series was run on a worker box sponsored by"},"name":"Build","started_at":"Started"},"datetime":{"distance_in_words":{"hours_exact":{"one":"%{count} hour","other":"%{count} hours"},"minutes_exact":{"one":"%{count} minute","other":"%{count} minutes"},"seconds_exact":{"one":"%{count} second","other":"%{count} seconds"}}},"errors":{"messages":{"already_confirmed":"was already confirmed","not_found":"not found","not_locked":"was not locked"}},"home":{"name":"home"},"jobs":{"allowed_failures":"Allowed Failures","author":"Author","branch":"Branch","build_matrix":"Build Matrix","commit":"Commit","committer":"Committer","compare":"Compare","config":"Config","duration":"Duration","finished_at":"Finished","message":"Message","messages":{"sponsored_by":"This test series was run on a worker box sponsored by"},"sponsored_by":null,"started_at":"Started"},"layouts":{"about":{"alpha":"This stuff is alpha.","join":"Join us and help!","mailing_list":"Mailing List","messages":{"alpha":"Please do <strong>not</strong> consider this a stable service. We're still far from that! More info <a href='https://github.com/travis-ci'>here.</a>"},"repository":"Repository","twitter":"Twitter"},"application":{"fork_me":"Fork me on Github","my_repositories":"My Repositories","recent":"Recent","search":"Search","sponsers":"Sponsors","sponsors_link":"See all of our amazing sponsors &rarr;"},"mobile":{"author":"Author","build":"Build","build_matrix":"Build Matrix","commit":"Commit","committer":"Committer","compare":"Compare","config":"Config","duration":"Duration","finished_at":"Finished at","job":"Job","log":"Log"},"top":{"admin":"Admin","blog":"Blog","docs":"Docs","github_login":"Sign in with Github","home":"Home","profile":"Profile","sign_out":"Sign Out","stats":"Stats"}},"locales":{"ca":null,"en":"English","es":"Español","fr":"Français","ja":"日本語","nb":"Norsk Bokmål","nl":"Nederlands","pl":"Polski","pt-BR":"português brasileiro","ru":"Русский"},"no_job":"There are no jobs","profiles":{"show":{"email":"Email","github":"Github","message":{"config":"how to configure custom build options","your_repos":"  Flick the switches below to turn on the Travis service hook for your projects, then push to GitHub.<br />\n  To test against multiple rubies, see"},"messages":{"notice":"To get started, please read our <a href=\"http://about.travis-ci.org/docs/user/getting-started/\">Getting Started guide</a>.\n  <small>It will only take a couple of minutes.</small>"},"token":"Token","update":"Update","update_locale":"Update","your_locale":"Your Locale","your_repos":"Your Repositories"}},"queue":"Queue","repositories":{"branch":"Branch","commit":"Commit","duration":"Duration","finished_at":"Finished","image_url":"Image URL","markdown":"Markdown","message":"Message","rdoc":"RDOC","started_at":"Started","tabs":{"branches":"Branch Summary","build":"Build","build_history":"Build History","current":"Current","job":"Job","pull_requests":"Pull Requests"},"test":null,"textile":"Textile","asciidoc":"AsciiDoc"},"repository":{"duration":"Duration"},"statistics":{"index":{"build_count":"Build Count","count":"Count","last_month":"last month","repo_growth":"Repository Growth","total_builds":"Total Builds","total_projects":"Total Projects/Repositories"}},"user":{"failure":null,"signed_out":null},"workers":"Workers"},"es":{"build":{"duration":"Duración","finished_at":"Finalizado","job":"Trabajo"},"builds":{"allowed_failures":"Fallos Permitidos","author":"Autor","branch":"Rama","build_matrix":"Matriz de Builds","commit":"Commit","committer":"Committer","compare":"Comparar","config":"Configuración","duration":"Duración","finished_at":"Finalizado","message":"Mensaje","messages":{"sponsored_by":"Esta serie de tests han sido ejecutados en una caja de Proceso patrocinada por"},"name":"Build","started_at":"Iniciado"},"datetime":{"distance_in_words":{"hours_exact":{"one":"%{count} hora","other":"%{count} horas"},"minutes_exact":{"one":"%{count} minuto","other":"%{count} minutos"},"seconds_exact":{"one":"%{count} segundo","other":"%{count} segundos"}}},"errors":{"messages":{"already_confirmed":"ya ha sido confirmado","not_found":"no encontrado","not_locked":"no estaba bloqueado"}},"home":{"name":"Inicio"},"jobs":{"allowed_failures":"Fallos Permitidos","author":"Autor","branch":"Rama","build_matrix":"Matriz de Builds","commit":"Commit","committer":"Committer","compare":"Comparar","config":"Configuración","duration":"Duración","finished_at":"Finalizado","message":"Mensaje","messages":{"sponsored_by":"Esta serie de tests han sido ejecutados en una caja de Proceso patrocinada por"},"sponsored_by":"Patrocinado por","started_at":"Iniciado"},"layouts":{"about":{"alpha":"Esto es alpha.","join":"Únetenos y ayudanos!","mailing_list":"Lista de Correos","messages":{"alpha":"Por favor <strong>no</strong> considereis esto un servicio estable. Estamos estamos aún lejos de ello! Más información <a href='https://github.com/travis-ci'>aquí.</a>"},"repository":"Repositorio","twitter":"Twitter"},"application":{"fork_me":"Hazme un Fork en Github","my_repositories":"Mis Repositorios","recent":"Reciente","search":"Buscar","sponsers":"Patrocinadores","sponsors_link":"Ver todos nuestros patrocinadores &rarr;"},"mobile":{"author":"Autor","build":"Build","build_matrix":"Matriz de Builds","commit":"Commit","committer":"Committer","compare":"Comparar","config":"Config","duration":"Duración","finished_at":"Finalizado el","job":"Trabajo","log":"Registro"},"top":{"admin":"Admin","blog":"Blog","docs":"Documentación","github_login":"Iniciar sesión con Github","home":"Inicio","profile":"Perfil","sign_out":"Desconectar","stats":"Estadísticas"}},"locales":{"ca":null,"en":"English","es":"Español","fr":"Français","ja":"日本語","nb":"Norsk Bokmål","nl":"Nederlands","pl":"Polski","pt-BR":"português brasileiro","ru":"Русский"},"no_job":"No hay trabajos","profiles":{"show":{"email":"email","github":"Github","message":{"config":"como configurar tus propias opciones para el Build","your_repos":"  Activa los interruptores para inicial el  Travis service hook para tus proyectos, y haz un Push en GitHub.<br />\n  Para probar varias versiones de ruby, mira"},"messages":{"notice":"Para comenzar, por favor lee nuestra <a href=\"http://about.travis-ci.org/docs/user/getting-started/\">Guía de Inicio </a>.\n  <small>Solo tomará unos pocos minutos.</small>"},"token":"Token","update":"Actualizar","update_locale":"Actualizar","your_locale":"Tu Idioma","your_repos":"Tus repositorios"}},"queue":"Cola","repositories":{"branch":"Rama","commit":"Commit","duration":"Duración","finished_at":"Finalizado","image_url":"Imagen URL","markdown":"Markdown","message":"Mensaje","rdoc":"RDOC","started_at":"Iniciado","tabs":{"branches":"Ramas","build":"Builds","build_history":"Histórico","current":"Actual","job":"Trabajo","pull_requests":null},"test":null,"textile":"Textile","asciidoc":"AsciiDoc"},"repository":{"duration":"Duración"},"statistics":{"index":{"build_count":"Número de Builds","count":"Número","last_month":"mes anterior","repo_growth":"Crecimiento de Repositorios","total_builds":"Total de Builds","total_projects":"Total de Proyectos/Repositorios"}},"user":{"failure":null,"signed_out":null},"workers":"Procesos"},"fr":{"build":{"duration":"Durée","finished_at":"Terminé","job":"Tâche"},"builds":{"allowed_failures":"Échecs autorisés","author":"Auteur","branch":"Branche","build_matrix":"Table des versions","commit":"Commit","committer":"Committeur","compare":"Comparer","config":"Config","duration":"Durée","finished_at":"Terminé","message":"Message","messages":{"sponsored_by":"Cette série de tests a été exécutée sur une machine sponsorisée par"},"name":"Version","started_at":"Commencé"},"datetime":{"distance_in_words":{"hours_exact":{"one":"%{count} heure","other":"%{count} heures"},"minutes_exact":{"one":"%{count} minute","other":"%{count} minutes"},"seconds_exact":{"one":"%{count} seconde","other":"%{count} secondes"}}},"errors":{"messages":{"already_confirmed":"étais déja confirmé","not_found":"n'a pas été trouvé","not_locked":"n'étais pas bloqué"}},"home":{"name":"accueil"},"jobs":{"allowed_failures":"Échecs autorisés","author":"Auteur","branch":"Branche","build_matrix":"Table des versions","commit":"Commit","committer":"Committeur","compare":"Comparer","config":"Config","duration":"Durée","finished_at":"Terminé","message":"Message","messages":{"sponsored_by":"Cette série de tests a été exécutée sur une machine sponsorisée par"},"sponsored_by":"Cette série de tests a été exécutée sur une machine sponsorisée par","started_at":"Commencé"},"layouts":{"about":{"alpha":"Ceci est en alpha.","join":"Joignez-vous à nous et aidez-nous!","mailing_list":"Liste de distribution","messages":{"alpha":"S'il vous plaît ne considérez <strong>pas</strong> ce service comme étant stable. Nous sommes loin de ça! Plus d'infos <a href='https://github.com/travis-ci'>ici.</a>"},"repository":"Dépôt","twitter":"Twitter"},"application":{"fork_me":"Faites un Fork sur Github","my_repositories":"Mes dépôts","recent":"Récent","search":"Chercher","sponsers":"Sponsors","sponsors_link":"Voir tous nos extraordinaire sponsors &rarr;"},"mobile":{"author":"Auteur","build":"Version","build_matrix":"Table des versions","commit":"Commit","committer":"Committeur","compare":"Comparer","config":"Config","duration":"Durée","finished_at":"Terminé à","job":"Tâche","log":"Journal"},"top":{"admin":"Admin","blog":"Blog","docs":"Documentation","github_login":"Connexion Github","home":"Accueil","profile":"Profil","sign_out":"Déconnexion","stats":"Statistiques"}},"locales":{"ca":null,"en":"English","es":"Español","fr":"Français","ja":"日本語","nb":"Norsk Bokmål","nl":"Nederlands","pl":"Polski","pt-BR":"português brasileiro","ru":"Русский"},"no_job":"Pas de tâches","profiles":{"show":{"email":"Courriel","github":"Github","message":{"config":"comment configurer des options de version personnalisées","your_repos":"Utilisez les boutons ci-dessous pour activer Travis sur vos projets puis déployez sur GitHub.<br />\nPour tester sur plus de versions de ruby, voir"},"messages":{"notice":"Pour commencer, veuillez lire notre <a href=\"http://about.travis-ci.org/docs/user/getting-started/\">guide de démarrage</a>.\n <small>Cela ne vous prendra que quelques minutes.</small>"},"token":"Jeton","update":"Modifier","update_locale":"Modifier","your_locale":"Votre langue","your_repos":"Vos dépôts"}},"queue":"File","repositories":{"branch":"Branche","commit":"Commit","duration":"Durée","finished_at":"Terminé","image_url":"Image","markdown":"Markdown","message":"Message","rdoc":"RDOC","started_at":"Commencé","tabs":{"branches":"Résumé des branches","build":"Build","build_history":"Historique des tâches","current":"Actuel","job":"Tâche","pull_requests":null},"test":null,"textile":"Textile","asciidoc":"AsciiDoc"},"repository":{"duration":"Durée"},"statistics":{"index":{"build_count":"Décompte des versions","count":"Décompte","last_month":"mois dernier","repo_growth":"Croissance de dépôt","total_builds":"Total des versions","total_projects":"Total des projets/dépôts"}},"user":{"failure":null,"signed_out":null},"workers":"Processus"},"ja":{"build":{"duration":"処理時間","finished_at":"終了時刻","job":"ジョブ"},"builds":{"allowed_failures":"失敗許容範囲内","author":"制作者","branch":"ブランチ","build_matrix":"失敗許容範囲外","commit":"コミット","committer":"コミット者","compare":"比較","config":"設定","duration":"処理時間","finished_at":"終了時刻","message":"メッセージ","messages":{"sponsored_by":"このテストは以下のスポンサーの協力で行いました。"},"name":"ビルド","started_at":"開始時刻"},"datetime":{"distance_in_words":{"hours_exact":null,"minutes_exact":null,"seconds_exact":null}},"errors":{"messages":{"already_confirmed":null,"not_found":null,"not_locked":null}},"home":{"name":null},"jobs":{"allowed_failures":"失敗許容範囲内","author":"制作者","branch":"ブランチ","build_matrix":"ビルドマトリクス","commit":"コミット","committer":"コミット者","compare":"比較","config":"設定","duration":"処理時間","finished_at":"終了時刻","message":"メッセージ","messages":{"sponsored_by":"このテストは以下のスポンサーの協力で行いました。"},"sponsored_by":null,"started_at":"開始時刻"},"layouts":{"about":{"alpha":"まだアルファですよ!","join":"参加してみよう!","mailing_list":"メールリスト","messages":{"alpha":"Travis-ciは安定したサービスまで後一歩!詳しくは<a href='https://github.com/travis-ci'>こちら</a>"},"repository":"リポジトリ","twitter":"ツイッター"},"application":{"fork_me":"Githubでフォークしよう","my_repositories":"マイリポジトリ","recent":"最近","search":"検索","sponsers":"スポンサー","sponsors_link":"スポンサーをもっと見る &rarr;"},"mobile":{"author":"制作者","build":"ビルド","build_matrix":"ビルドマトリクス","commit":"コミット","committer":"コミット者","compare":"比較","config":"設定","duration":"処理時間","finished_at":"終了時刻","job":"ジョブ","log":"ログ"},"top":{"admin":"管理","blog":"ブログ","docs":"Travisとは?","github_login":"Githubでログイン","home":"ホーム","profile":"プロフィール","sign_out":"ログアウト","stats":"統計"}},"locales":{"ca":null,"en":"English","es":"Español","fr":"Français","ja":"日本語","nb":"Norsk Bokmål","nl":"Nederlands","pl":"Polski","pt-BR":"português brasileiro","ru":"Русский"},"no_job":"ジョブはありません","profiles":{"show":{"email":"メール","github":"Github","message":{"config":"詳細設定","your_repos":"以下のスイッチを設定し、Travis-ciを有効にします。Githubへプッシュしたらビルドは自動的に開始します。複数バーションや細かい設定はこちらへ:"},"messages":{"notice":"まずは<a href=\"http://about.travis-ci.org/docs/user/getting-started/\">Travisのはじめ方</a>を参照してください。"},"token":"トークン","update":"更新","update_locale":"更新","your_locale":"言語設定","your_repos":"リポジトリ"}},"queue":"キュー","repositories":{"branch":"ブランチ","commit":"コミット","duration":"処理時間","finished_at":"終了時刻","image_url":"画像URL","markdown":".md","message":"メッセージ","rdoc":".rdoc","started_at":"開始時刻","tabs":{"branches":"ブランチまとめ","build":"ビルド","build_history":"ビルド履歴","current":"最新","job":"ジョブ","pull_requests":"プルリクエスト"},"test":null,"textile":".textile","asciidoc":".asciidoc"},"repository":{"duration":"時間"},"statistics":{"index":{"build_count":"ビルド数","count":"数","last_month":"先月","repo_growth":"リポジトリ","total_builds":"合計ビルド数","total_projects":"合計リポジトリ"}},"user":{"failure":null,"signed_out":null},"workers":"ワーカー"},"nb":{"build":{"duration":"Varighet","finished_at":"Fullført","job":"Jobb"},"builds":{"allowed_failures":"Tillatte feil","author":"Forfatter","branch":"Gren","build_matrix":"Jobbmatrise","commit":"Innsending","committer":"Innsender","compare":"Sammenlign","config":"Oppsett","duration":"Varighet","finished_at":"Fullført","message":"Beskrivelse","messages":{"sponsored_by":"Denne testen ble kjørt på en maskin sponset av"},"name":"Jobb","started_at":"Startet"},"datetime":{"distance_in_words":{"hours_exact":{"one":"%{count} time","other":"%{count} timer"},"minutes_exact":{"one":"%{count} minutt","other":"%{count} minutter"},"seconds_exact":{"one":"%{count} sekund","other":"%{count} sekunder"}}},"errors":{"messages":{"already_confirmed":"har allerede blitt bekreftet","not_found":"ikke funnnet","not_locked":"var ikke låst"}},"home":{"name":"hjem"},"jobs":{"allowed_failures":"Tillatte feil","author":"Forfatter","branch":"Gren","build_matrix":"Jobbmatrise","commit":"Innsending","committer":"Innsender","compare":"Sammenlign","config":"Oppsett","duration":"Varighet","finished_at":"Fullført","message":"Beskrivelse","messages":{"sponsored_by":"Denne testserien ble kjørt på en maskin sponset av"},"sponsored_by":null,"started_at":"Startet"},"layouts":{"about":{"alpha":"Dette er alfa-greier.","join":"Bli med og hjelp oss!","mailing_list":"E-postliste","messages":{"alpha":"Dette er <strong>ikke</strong> en stabil tjeneste. Vi har fremdeles et stykke igjen! Mer informasjon finner du <a href=\"https://github.com/travis-ci\">her</a>."},"repository":"Kodelager","twitter":"Twitter."},"application":{"fork_me":"Se koden på Github","my_repositories":"Mine kodelagre","recent":"Nylig","search":"Søk","sponsers":"Sponsorer","sponsors_link":"Se alle de flotte sponsorene våre &rarr;"},"mobile":{"author":"Forfatter","build":"Jobb","build_matrix":"Jobbmatrise","commit":"Innsending","committer":"Innsender","compare":"Sammenlign","config":"Oppsett","duration":"Varighet","finished_at":"Fullført","job":"Jobb","log":"Logg"},"top":{"admin":"Administrator","blog":"Blogg","docs":"Dokumentasjon","github_login":"Logg inn med Github","home":"Hjem","profile":"Profil","sign_out":"Logg ut","stats":"Statistikk"}},"locales":{"ca":null,"en":"English","es":"Español","fr":"Français","ja":"日本語","nb":"Norsk Bokmål","nl":"Nederlands","pl":"Polski","pt-BR":"português brasileiro","ru":"Русский"},"no_job":"Ingen jobber finnnes","profiles":{"show":{"email":"E-post","github":"Github","message":{"config":"hvordan sette opp egne jobbinnstillinger","your_repos":"Slå\u0010 på Travis for prosjektene dine ved å dra i bryterne under, og send koden til Github.<br />\nFor å teste mot flere versjoner av ruby, se "},"messages":{"notice":"For å komme i gang, vennligst les <a href=\"http://about.travis-ci.org/docs/user/getting-started/\">kom-i-gang-veivisereren</a> vår. <small>Det tar bare et par minutter.</small>"},"token":"Kode","update":"Oppdater","update_locale":"Oppdater","your_locale":"Ditt språk","your_repos":"Dine kodelagre"}},"queue":"Kø","repositories":{"branch":"Gren","commit":"Innsender","duration":"Varighet","finished_at":"Fullført","image_url":"Bilde-URL","markdown":"Markdown","message":"Beskrivelse","rdoc":"RDOC","started_at":"Startet","tabs":{"branches":"Grensammendrag","build":"Jobb","build_history":"Jobblogg","current":"Siste","job":"Jobb","pull_requests":null},"test":null,"textile":"Textile","asciidoc":"AsciiDoc"},"repository":{"duration":"Varighet"},"statistics":{"index":{"build_count":"Antall jobber","count":"Antall","last_month":"siste måned","repo_growth":"Vekst i kodelager","total_builds":"Totale jobber","total_projects":"Antall prosjekter/kodelagre"}},"user":{"failure":null,"signed_out":null},"workers":"Arbeidere"},"nl":{"build":{"duration":"Duur","finished_at":"Voltooid","job":"Taak"},"builds":{"allowed_failures":"Toegestane mislukkingen","author":"Auteur","branch":"Tak","build_matrix":"Bouw Matrix","commit":"Commit","committer":"Committer","compare":"Vergelijk","config":"Configuratie","duration":"Duur","finished_at":"Voltooid","message":"Bericht","messages":{"sponsored_by":"Deze tests zijn gedraaid op een machine gesponsord door"},"name":"Bouw","started_at":"Gestart"},"datetime":{"distance_in_words":{"hours_exact":{"one":"%{count} uur","other":"%{count} uren"},"minutes_exact":{"one":"%{count} minuut","other":"%{count} minuten"},"seconds_exact":{"one":"%{count} seconde","other":"%{count} seconden"}}},"errors":{"messages":{"already_confirmed":"was al bevestigd","not_found":"niet gevonden","not_locked":"was niet vergrendeld"}},"home":{"name":"Hoofdpagina"},"jobs":{"allowed_failures":"Toegestane mislukkingen","author":"Auteur","branch":"Tak","build_matrix":"Bouw matrix","commit":"Commit","committer":"Committer","compare":"Vergelijk","config":"Configuratie","duration":"Duur","finished_at":"Voltooid","message":"Bericht","messages":{"sponsored_by":"Deze testen zijn uitgevoerd op een machine gesponsord door"},"sponsored_by":null,"started_at":"Gestart"},"layouts":{"about":{"alpha":"Dit is in alfa-stadium.","join":"Doe met ons mee en help!","mailing_list":"Mailing lijst","messages":{"alpha":"Gelieve deze service <strong>niet</strong> te beschouwen als stabiel. Daar zijn we nog lang niet! Meer info <a href='https://github.com/travis-ci'>hier.</a>"},"repository":"Repository","twitter":"Twitter"},"application":{"fork_me":"Maak een fork op Github","my_repositories":"Mijn repositories","recent":"Recent","search":"Zoeken","sponsers":"Sponsors","sponsors_link":"Bekijk al onze geweldige sponsors &rarr;"},"mobile":{"author":"Auteur","build":"Bouw","build_matrix":"Bouw matrix","commit":"Commit","committer":"Committer","compare":"Vergelijk","config":"Configuratie","duration":"Duur","finished_at":"Voltooid op","job":"Taak","log":"Logboek"},"top":{"admin":"Administratie","blog":"Blog","docs":"Documentatie","github_login":"Inloggen met Github","home":"Home","profile":"Profiel","sign_out":"Uitloggen","stats":"Statistieken"}},"locales":{"ca":null,"en":"English","es":"Español","fr":"Français","ja":"日本語","nb":"Norsk Bokmål","nl":"Nederlands","pl":"Polski","pt-BR":"português brasileiro","ru":"Русский"},"no_job":"Er zijn geen taken","profiles":{"show":{"email":"Email adres","github":"Github","message":{"config":"hoe eigen bouw-opties in te stellen","your_repos":"Zet de schakelaars hieronder aan om de Travis hook voor uw projecten te activeren en push daarna naar Github<br />\nOm te testen tegen meerdere rubies, zie"},"messages":{"notice":"Om te beginnen kunt u onze <a href=\\\"http://about.travis-ci.org/docs/user/getting-started/\\\">startersgids</a> lezen.\\n  <small>Het zal maar enkele minuten van uw tijd vergen.</small>"},"token":"Token","update":"Bijwerken","update_locale":"Bijwerken","your_locale":"Uw taal","your_repos":"Uw repositories"}},"queue":"Wachtrij","repositories":{"branch":"Tak","commit":"Commit","duration":"Duur","finished_at":"Voltooid","image_url":"Afbeeldings URL","markdown":"Markdown","message":"Bericht","rdoc":"RDOC","started_at":"Gestart","tabs":{"branches":"Tak samenvatting","build":"Bouw","build_history":"Bouw geschiedenis","current":"Huidig","job":"Taak","pull_requests":null},"test":null,"textile":"Textile","asciidoc":"AsciiDoc"},"repository":{"duration":"Duur"},"statistics":{"index":{"build_count":"Bouw aantal","count":"Aantal","last_month":"voorbije maand","repo_growth":"Repository groei","total_builds":"Bouw totaal","total_projects":"Projecten/Repository totaal"}},"user":{"failure":null,"signed_out":null},"workers":"Machines"},"pl":{"build":{"duration":"Czas trwania","finished_at":"Zakończono","job":"Zadanie"},"builds":{"allowed_failures":"Dopuszczalne Niepowodzenia","author":"Autor","branch":"Gałąź","build_matrix":"Macierz Buildów","commit":"Commit","committer":"Komitujący","compare":"Porównanie","config":"Konfiguracja","duration":"Czas trwania","finished_at":"Zakończono","message":"Opis","messages":{"sponsored_by":"Te testy zostały uruchomione na maszynie sponsorowanej przez"},"name":"Build","started_at":"Rozpoczęto"},"datetime":{"distance_in_words":{"hours_exact":{"one":"%{count} godzina","other":"%{count} godziny"},"minutes_exact":{"one":"%{count} minuta","other":"%{count} minuty"},"seconds_exact":{"one":"%{count} sekunda","other":"%{count} sekundy"}}},"errors":{"messages":{"already_confirmed":null,"not_found":null,"not_locked":null}},"home":{"name":null},"jobs":{"allowed_failures":"Dopuszczalne Niepowodzenia","author":"Autor","branch":"Gałąź","build_matrix":"Macierz Buildów","commit":"Commit","committer":"Committer","compare":"Porównanie","config":"Konfiguracja","duration":"Czas trwania","finished_at":"Zakończono","message":"Opis","messages":{"sponsored_by":"Te testy zostały uruchomione na maszynie sponsorowanej przez"},"sponsored_by":"Te testy zostały uruchomione na maszynie sponsorowanej przez","started_at":"Rozpoczęto"},"layouts":{"about":{"alpha":"To wciąż jest wersja alpha.","join":"Pomóż i dołącz do nas!","mailing_list":"Lista mailingowa","messages":{"alpha":"Proszę <strong>nie</strong> traktuj tego jako stabilnej usługi. Wciąż nam wiele do tego brakuje! Więcej informacji znajdziesz <a href='https://github.com/travis-ci'>tutaj.</a>"},"repository":"Repozytorium","twitter":"Twitter"},"application":{"fork_me":"Fork me on Github","my_repositories":"Moje repozytoria","recent":"Ostatnie","search":"Wyniki","sponsers":"Sponsorzy","sponsors_link":"Zobacz naszych wszystkich wspaniałych sponsorów &rarr;"},"mobile":{"author":"Autor","build":"Build","build_matrix":"Macierz Buildów","commit":"Commit","committer":"Komitujący","compare":"Porównianie","config":"Konfiguracja","duration":"Czas trwania","finished_at":"Zakończono","job":"Zadanie","log":"Log"},"top":{"admin":null,"blog":"Blog","docs":"Dokumentacja","github_login":"Zaloguj się przy pomocy Githuba","home":"Start","profile":"Profil","sign_out":"Wyloguj się","stats":"Statystki"}},"locales":{"ca":null,"en":"English","es":"Español","fr":"Français","ja":"日本語","nb":"Norsk Bokmål","nl":"Nederlands","pl":"Polski","pt-BR":"português brasileiro","ru":"Русский"},"no_job":"Brak zadań","profiles":{"show":{"email":"Email","github":"Github","message":{"config":"jak skonfigurować niestandardowe opcje builda","your_repos":"  Przesuń suwak poniżej, aby włączyć Travisa, dla twoich projektów, a następnie umieść swój kod na GitHubie.<br />\n Aby testować swój kod przy użyciu wielu wersji Rubiego, zobacz"},"messages":{"notice":"Aby zacząć, przeczytaj nasz <a href=\"http://about.travis-ci.org/docs/user/getting-started/\">Przewodnik </a>.\n  <small>Zajmie ci to tylko kilka minut.</small>"},"token":"Token","update":null,"update_locale":null,"your_locale":null,"your_repos":"Twoje repozytoria"}},"queue":"Kolejka","repositories":{"branch":"Gałąź","commit":"Commit","duration":"Czas trwania","finished_at":"Zakończono","image_url":"URL obrazka","markdown":"Markdown","message":"Opis","rdoc":"RDOC","started_at":"Rozpoczęto","tabs":{"branches":"Wszystkie Gałęzie","build":"Build","build_history":"Historia Buildów","current":"Aktualny","job":"Zadanie","pull_requests":null},"test":null,"textile":"Textile","asciidoc":"AsciiDoc"},"repository":{"duration":null},"statistics":{"index":{"build_count":"Liczba buildów","count":"Ilość","last_month":"ostatni miesiąc","repo_growth":"Przyrost repozytoriów","total_builds":"Łącznie Buildów","total_projects":"Łącznie projektów/repozytoriów"}},"user":{"failure":null,"signed_out":null},"workers":"Workers"},"pt-BR":{"build":{"duration":"Duração","finished_at":"Concluído em","job":"Trabalho"},"builds":{"allowed_failures":"Falhas Permitidas","author":"Autor","branch":"Branch","build_matrix":"Matriz de Build","commit":"Commit","committer":"Committer","compare":"Comparar","config":"Config","duration":"Duração","finished_at":"Concluído em","message":"Mensagem","messages":{"sponsored_by":"Esta série de testes foi executada em uma caixa de processos patrocinada por"},"name":"Build","started_at":"Iniciou em"},"datetime":{"distance_in_words":{"hours_exact":{"one":"%{count} hora","other":"%{count} horas"},"minutes_exact":{"one":"%{count} minuto","other":"%{count} minutos"},"seconds_exact":{"one":"%{count} segundo","other":"%{count} segundos"}}},"errors":{"messages":{"already_confirmed":"já foi confirmado","not_found":"não encontrado","not_locked":"não estava trancado"}},"home":{"name":"home"},"jobs":{"allowed_failures":"Falhas Permitidas","author":"Autor","branch":"Branch","build_matrix":"Matriz de Build","commit":"Commit","committer":"Committer","compare":"Comparar","config":"Config","duration":"Duração","finished_at":"Concluído em","message":"Mensagem","messages":{"sponsored_by":"Esta série de testes foi executada em uma caixa de processos patrocinada por"},"sponsored_by":null,"started_at":"Iniciou em"},"layouts":{"about":{"alpha":"Isto é um alpha.","join":"Junte-se à nós e ajude!","mailing_list":"Lista de email","messages":{"alpha":"Por favor, <strong>não</strong> considere isto um serviço estável. Estamos muito longe disso! Mais informações <a href='https://github.com/travis-ci'>aqui.</a>"},"repository":"Repositório","twitter":"Twitter"},"application":{"fork_me":"Faça fork no Github","my_repositories":"Meus Repositórios","recent":"Recentes","search":"Buscar","sponsers":"Patrocinadores","sponsors_link":"Conheça todos os nossos patrocinadores &rarr;"},"mobile":{"author":"Autor","build":"Build","build_matrix":"Matriz de Build","commit":"Commit","committer":"Committer","compare":"Comparar","config":"Config","duration":"Duração","finished_at":"Concluído em","job":"Trabalho","log":"Log"},"top":{"admin":"Admin","blog":"Blog","docs":"Documentação","github_login":"Logue com o Github","home":"Home","profile":"Perfil","sign_out":"Sair","stats":"Estatísticas"}},"locales":{"ca":null,"en":"English","es":"Español","fr":"Français","ja":"日本語","nb":"Norsk Bokmål","nl":"Nederlands","pl":"Polski","pt-BR":"português brasileiro","ru":"Русский"},"no_job":"Não há trabalhos","profiles":{"show":{"email":"Email","github":"Github","message":{"config":"como configurar opções de build","your_repos":"Use os botões abaixo para ligar ou desligar o hook de serviço do Travis para seus projetos, e então, faça um push para o Github.<br />Para testar com múltiplas versões do Ruby, leia"},"messages":{"notice":"Para começar, leia nosso <a href=\"http://about.travis-ci.org/docs/user/getting-started/\">Guia de início</a>. <small>Só leva alguns minutinhos.</small>"},"token":"Token","update":"Atualizar","update_locale":"Atualizar","your_locale":"Sua língua","your_repos":"Seus Repositórios"}},"queue":"Fila","repositories":{"branch":"Branch","commit":"Commit","duration":"Duração","finished_at":"Concluído em","image_url":"URL da imagem","markdown":"Markdown","message":"Mensagem","rdoc":"RDOC","started_at":"Iniciou em","tabs":{"branches":"Sumário do Branch","build":"Build","build_history":"Histórico de Build","current":"Atual","job":"Trabalho","pull_requests":null},"test":null,"textile":"Textile","asciidoc":"AsciiDoc"},"repository":{"duration":"Duração"},"statistics":{"index":{"build_count":"Número de Builds","count":"Número","last_month":"último mês","repo_growth":"Crescimento de Repositório","total_builds":"Total de Builds","total_projects":"Total de Projetos/Repositórios"}},"user":{"failure":null,"signed_out":null},"workers":"Processos"},"ru":{"build":{"duration":"Длительность","finished_at":"Завершен","job":"Задача"},"builds":{"allowed_failures":"Допустимые неудачи","author":"Автор","branch":"Ветка","build_matrix":"Матрица","commit":"Коммит","committer":"Коммитер","compare":"Дифф","config":"Конфигурация","duration":"Длительность","finished_at":"Завершен","message":"Комментарий","messages":{"sponsored_by":"Эта серия тестов была запущена на машине, спонсируемой"},"name":"Билд","started_at":"Начало"},"datetime":{"distance_in_words":{"hours_exact":{"few":"%{count} часа","many":"%{count} часов","one":"%{count} час","other":"%{count} часа"},"minutes_exact":{"few":"%{count} минуты","many":"%{count} минут","one":"%{count} минута","other":"%{count} минуты"},"seconds_exact":{"few":"%{count} секунды","many":"%{count} секунд","one":"%{count} секунда","other":"%{count} секунды"}}},"errors":{"messages":{"already_confirmed":"уже подтвержден","not_found":"не найден","not_locked":"не заблокирован"}},"home":{"name":"Главная"},"jobs":{"allowed_failures":"Допустимые неудачи","author":"Автор","branch":"Ветка","build_matrix":"Матрица","commit":"Коммит","committer":"Коммитер","compare":"Сравнение","config":"Конфигурация","duration":"Длительность","finished_at":"Завершен","message":"Комментарий","messages":{"sponsored_by":"Эта серия тестов была запущена на машине спонсируемой"},"sponsored_by":null,"started_at":"Начало"},"layouts":{"about":{"alpha":"Это альфа-версия","join":"Присоединяйтесь к нам и помогайте!","mailing_list":"Лист рассылки","messages":{"alpha":"Пожалуйста, <strong>не</strong> считайте данный сервис стабильным. Мы еще очень далеки от стабильности! <a href='https://github.com/travis-ci'>Подробности</a>"},"repository":"Репозиторий","twitter":"Twitter"},"application":{"fork_me":"Fork me on Github","my_repositories":"Мои репозитории","recent":"Недавние","search":"Поиск","sponsers":"Спонсоры","sponsors_link":"Список всех наших замечательных спонсоров &rarr;"},"mobile":{"author":"Автор","build":"Сборка","build_matrix":"Матрица сборок","commit":"Коммит","committer":"Коммитер","compare":"Сравнение","config":"Конфигурация","duration":"Длительность","finished_at":"Завершен","job":"Задача","log":"Журнал"},"top":{"admin":"Управление","blog":"Блог","docs":"Документация","github_login":"Войти через Github","home":"Главная","profile":"Профиль","sign_out":"Выход","stats":"Статистика"}},"locales":{"ca":null,"en":"English","es":"Español","fr":"Français","ja":"日本語","nb":"Norsk Bokmål","nl":"Nederlands","pl":"Polski","pt-BR":"português brasileiro","ru":"Русский"},"no_job":"Очередь пуста","profiles":{"show":{"email":"Электронная почта","github":"Github","message":{"config":"как настроить специальные опции билда","your_repos":"Используйте переключатели, чтобы включить Travis service hook для вашего проекта, а потом отправьте код на GitHub.<br />\nДля тестирования на нескольких версиях Ruby смотрите"},"messages":{"notice":"Перед началом, пожалуйста, прочтите <a href=\"http://about.travis-ci.org/docs/user/getting-started/\">Руководство для быстрого старта</a>. <small>Это займет всего несколько минут.</small>"},"token":"Токен","update":"Обновить","update_locale":"Обновить","your_locale":"Ваш язык","your_repos":"Ваши репозитории"}},"queue":"Очередь","repositories":{"branch":"Ветка","commit":"Коммит","duration":"Длительность","finished_at":"Завершен","image_url":"URL изображения","markdown":"Markdown","message":"Комментарий","rdoc":"RDOC","started_at":"Начало","tabs":{"branches":"Статус веток","build":"Билд","build_history":"История","current":"Текущий","job":"Задача","pull_requests":"Запросы на Pull"},"test":null,"textile":"Textile","asciidoc":"AsciiDoc"},"repository":{"duration":"Длительность"},"statistics":{"index":{"build_count":"Количество билдов","count":"Количество","last_month":"прошлый месяц","repo_growth":"Рост числа репозиториев","total_builds":"Всего билдов","total_projects":"Всего проектов/репозиториев"}},"user":{"failure":null,"signed_out":null},"workers":"Машины"}};
\ No newline at end of file
+I18n.translations = {"en":{"build":{"duration":"Duration","finished_at":"Finished","job":"Job"},"builds":{"allowed_failures":"Allowed Failures","author":"Author","branch":"Branch","build_matrix":"Build Matrix","commit":"Commit","committer":"Committer","compare":"Compare","config":"Config","duration":"Duration","finished_at":"Finished","message":"Message","messages":{"sponsored_by":"This test series was run on a worker box sponsored by"},"name":"Build","started_at":"Started","state":"state"},"datetime":{"distance_in_words":{"hours_exact":{"one":"%{count} hour","other":"%{count} hours"},"minutes_exact":{"one":"%{count} minute","other":"%{count} minutes"},"seconds_exact":{"one":"%{count} second","other":"%{count} seconds"}}},"errors":{"messages":{"already_confirmed":"was already confirmed","not_found":"not found","not_locked":"was not locked"}},"home":{"name":"home"},"jobs":{"allowed_failures":"Allowed Failures","author":"Author","branch":"Branch","build_matrix":"Build Matrix","commit":"Commit","committer":"Committer","compare":"Compare","config":"Config","duration":"Duration","finished_at":"Finished","message":"Message","messages":{"sponsored_by":"This test series was run on a worker box sponsored by"},"sponsored_by":null,"started_at":"Started","state":"state"},"layouts":{"about":{"alpha":"This stuff is alpha.","join":"Join us and help!","mailing_list":"Mailing List","messages":{"alpha":"Please do <strong>not</strong> consider this a stable service. We're still far from that! More info <a href='https://github.com/travis-ci'>here.</a>"},"repository":"Repository","twitter":"Twitter"},"application":{"fork_me":"Fork me on Github","my_repositories":"My Repositories","recent":"Recent","search":"Search","sponsers":"Sponsors","sponsors_link":"See all of our amazing sponsors &rarr;"},"mobile":{"author":"Author","build":"Build","build_matrix":"Build Matrix","commit":"Commit","committer":"Committer","compare":"Compare","config":"Config","duration":"Duration","finished_at":"Finished at","job":"Job","log":"Log"},"top":{"accounts":"accounts","admin":"Admin","blog":"Blog","docs":"Docs","github_login":"Sign in with Github","home":"Home","profile":"Profile","sign_out":"Sign Out","signing_in":"signing_in","stats":"Stats"}},"locales":{"ca":null,"en":"English","es":"Español","fr":"Français","ja":"日本語","nb":"Norsk Bokmål","nl":"Nederlands","pl":"Polski","pt-BR":"português brasileiro","ru":"Русский"},"no_job":"There are no jobs","profiles":{"show":{"email":"Email","github":"Github","locale":"locale","message":{"config":"how to configure custom build options","your_repos":"  Flick the switches below to turn on the Travis service hook for your projects, then push to GitHub.<br />\n  To test against multiple rubies, see"},"messages":{"notice":"To get started, please read our <a href=\"http://about.travis-ci.org/docs/user/getting-started/\">Getting Started guide</a>.\n  <small>It will only take a couple of minutes.</small>"},"token":"Token","update":"Update","update_locale":"Update","your_locale":"Your Locale","your_repos":"Your Repositories"}},"queue":"Queue","repositories":{"asciidoc":"AsciiDoc","branch":"Branch","commit":"Commit","duration":"Duration","finished_at":"Finished","image_url":"Image URL","markdown":"Markdown","message":"Message","rdoc":"RDOC","started_at":"Started","tabs":{"branches":"Branch Summary","build":"Build","build_history":"Build History","current":"Current","job":"Job","pull_requests":"Pull Requests"},"test":null,"textile":"Textile"},"repository":{"duration":"Duration"},"statistics":{"index":{"build_count":"Build Count","count":"Count","last_month":"last month","repo_growth":"Repository Growth","total_builds":"Total Builds","total_projects":"Total Projects/Repositories"}},"user":{"failure":null,"signed_out":null},"workers":"Workers"},"es":{"build":{"duration":"Duración","finished_at":"Finalizado","job":"Trabajo"},"builds":{"allowed_failures":"Fallos Permitidos","author":"Autor","branch":"Rama","build_matrix":"Matriz de Builds","commit":"Commit","committer":"Committer","compare":"Comparar","config":"Configuración","duration":"Duración","finished_at":"Finalizado","message":"Mensaje","messages":{"sponsored_by":"Esta serie de tests han sido ejecutados en una caja de Proceso patrocinada por"},"name":"Build","started_at":"Iniciado","state":null},"datetime":{"distance_in_words":{"hours_exact":{"one":"%{count} hora","other":"%{count} horas"},"minutes_exact":{"one":"%{count} minuto","other":"%{count} minutos"},"seconds_exact":{"one":"%{count} segundo","other":"%{count} segundos"}}},"errors":{"messages":{"already_confirmed":"ya ha sido confirmado","not_found":"no encontrado","not_locked":"no estaba bloqueado"}},"home":{"name":"Inicio"},"jobs":{"allowed_failures":"Fallos Permitidos","author":"Autor","branch":"Rama","build_matrix":"Matriz de Builds","commit":"Commit","committer":"Committer","compare":"Comparar","config":"Configuración","duration":"Duración","finished_at":"Finalizado","message":"Mensaje","messages":{"sponsored_by":"Esta serie de tests han sido ejecutados en una caja de Proceso patrocinada por"},"sponsored_by":"Patrocinado por","started_at":"Iniciado","state":null},"layouts":{"about":{"alpha":"Esto es alpha.","join":"Únetenos y ayudanos!","mailing_list":"Lista de Correos","messages":{"alpha":"Por favor <strong>no</strong> considereis esto un servicio estable. Estamos estamos aún lejos de ello! Más información <a href='https://github.com/travis-ci'>aquí.</a>"},"repository":"Repositorio","twitter":"Twitter"},"application":{"fork_me":"Hazme un Fork en Github","my_repositories":"Mis Repositorios","recent":"Reciente","search":"Buscar","sponsers":"Patrocinadores","sponsors_link":"Ver todos nuestros patrocinadores &rarr;"},"mobile":{"author":"Autor","build":"Build","build_matrix":"Matriz de Builds","commit":"Commit","committer":"Committer","compare":"Comparar","config":"Config","duration":"Duración","finished_at":"Finalizado el","job":"Trabajo","log":"Registro"},"top":{"accounts":null,"admin":"Admin","blog":"Blog","docs":"Documentación","github_login":"Iniciar sesión con Github","home":"Inicio","profile":"Perfil","sign_out":"Desconectar","signing_in":null,"stats":"Estadísticas"}},"locales":{"ca":null,"en":"English","es":"Español","fr":"Français","ja":"日本語","nb":"Norsk Bokmål","nl":"Nederlands","pl":"Polski","pt-BR":"português brasileiro","ru":"Русский"},"no_job":"No hay trabajos","profiles":{"show":{"email":"email","github":"Github","locale":null,"message":{"config":"como configurar tus propias opciones para el Build","your_repos":"  Activa los interruptores para inicial el  Travis service hook para tus proyectos, y haz un Push en GitHub.<br />\n  Para probar varias versiones de ruby, mira"},"messages":{"notice":"Para comenzar, por favor lee nuestra <a href=\"http://about.travis-ci.org/docs/user/getting-started/\">Guía de Inicio </a>.\n  <small>Solo tomará unos pocos minutos.</small>"},"token":"Token","update":"Actualizar","update_locale":"Actualizar","your_locale":"Tu Idioma","your_repos":"Tus repositorios"}},"queue":"Cola","repositories":{"asciidoc":null,"branch":"Rama","commit":"Commit","duration":"Duración","finished_at":"Finalizado","image_url":"Imagen URL","markdown":"Markdown","message":"Mensaje","rdoc":"RDOC","started_at":"Iniciado","tabs":{"branches":"Ramas","build":"Builds","build_history":"Histórico","current":"Actual","job":"Trabajo","pull_requests":null},"test":null,"textile":"Textile"},"repository":{"duration":"Duración"},"statistics":{"index":{"build_count":"Número de Builds","count":"Número","last_month":"mes anterior","repo_growth":"Crecimiento de Repositorios","total_builds":"Total de Builds","total_projects":"Total de Proyectos/Repositorios"}},"user":{"failure":null,"signed_out":null},"workers":"Procesos"},"fr":{"build":{"duration":"Durée","finished_at":"Terminé","job":"Tâche"},"builds":{"allowed_failures":"Échecs autorisés","author":"Auteur","branch":"Branche","build_matrix":"Table des versions","commit":"Commit","committer":"Committeur","compare":"Comparer","config":"Config","duration":"Durée","finished_at":"Terminé","message":"Message","messages":{"sponsored_by":"Cette série de tests a été exécutée sur une machine sponsorisée par"},"name":"Version","started_at":"Commencé","state":null},"datetime":{"distance_in_words":{"hours_exact":{"one":"%{count} heure","other":"%{count} heures"},"minutes_exact":{"one":"%{count} minute","other":"%{count} minutes"},"seconds_exact":{"one":"%{count} seconde","other":"%{count} secondes"}}},"errors":{"messages":{"already_confirmed":"étais déja confirmé","not_found":"n'a pas été trouvé","not_locked":"n'étais pas bloqué"}},"home":{"name":"accueil"},"jobs":{"allowed_failures":"Échecs autorisés","author":"Auteur","branch":"Branche","build_matrix":"Table des versions","commit":"Commit","committer":"Committeur","compare":"Comparer","config":"Config","duration":"Durée","finished_at":"Terminé","message":"Message","messages":{"sponsored_by":"Cette série de tests a été exécutée sur une machine sponsorisée par"},"sponsored_by":"Cette série de tests a été exécutée sur une machine sponsorisée par","started_at":"Commencé","state":null},"layouts":{"about":{"alpha":"Ceci est en alpha.","join":"Joignez-vous à nous et aidez-nous!","mailing_list":"Liste de distribution","messages":{"alpha":"S'il vous plaît ne considérez <strong>pas</strong> ce service comme étant stable. Nous sommes loin de ça! Plus d'infos <a href='https://github.com/travis-ci'>ici.</a>"},"repository":"Dépôt","twitter":"Twitter"},"application":{"fork_me":"Faites un Fork sur Github","my_repositories":"Mes dépôts","recent":"Récent","search":"Chercher","sponsers":"Sponsors","sponsors_link":"Voir tous nos extraordinaire sponsors &rarr;"},"mobile":{"author":"Auteur","build":"Version","build_matrix":"Table des versions","commit":"Commit","committer":"Committeur","compare":"Comparer","config":"Config","duration":"Durée","finished_at":"Terminé à","job":"Tâche","log":"Journal"},"top":{"accounts":null,"admin":"Admin","blog":"Blog","docs":"Documentation","github_login":"Connexion Github","home":"Accueil","profile":"Profil","sign_out":"Déconnexion","signing_in":null,"stats":"Statistiques"}},"locales":{"ca":null,"en":"English","es":"Español","fr":"Français","ja":"日本語","nb":"Norsk Bokmål","nl":"Nederlands","pl":"Polski","pt-BR":"português brasileiro","ru":"Русский"},"no_job":"Pas de tâches","profiles":{"show":{"email":"Courriel","github":"Github","locale":null,"message":{"config":"comment configurer des options de version personnalisées","your_repos":"Utilisez les boutons ci-dessous pour activer Travis sur vos projets puis déployez sur GitHub.<br />\nPour tester sur plus de versions de ruby, voir"},"messages":{"notice":"Pour commencer, veuillez lire notre <a href=\"http://about.travis-ci.org/docs/user/getting-started/\">guide de démarrage</a>.\n <small>Cela ne vous prendra que quelques minutes.</small>"},"token":"Jeton","update":"Modifier","update_locale":"Modifier","your_locale":"Votre langue","your_repos":"Vos dépôts"}},"queue":"File","repositories":{"asciidoc":null,"branch":"Branche","commit":"Commit","duration":"Durée","finished_at":"Terminé","image_url":"Image","markdown":"Markdown","message":"Message","rdoc":"RDOC","started_at":"Commencé","tabs":{"branches":"Résumé des branches","build":"Build","build_history":"Historique des tâches","current":"Actuel","job":"Tâche","pull_requests":null},"test":null,"textile":"Textile"},"repository":{"duration":"Durée"},"statistics":{"index":{"build_count":"Décompte des versions","count":"Décompte","last_month":"mois dernier","repo_growth":"Croissance de dépôt","total_builds":"Total des versions","total_projects":"Total des projets/dépôts"}},"user":{"failure":null,"signed_out":null},"workers":"Processus"},"ja":{"build":{"duration":"処理時間","finished_at":"終了時刻","job":"ジョブ"},"builds":{"allowed_failures":"失敗許容範囲内","author":"制作者","branch":"ブランチ","build_matrix":"失敗許容範囲外","commit":"コミット","committer":"コミット者","compare":"比較","config":"設定","duration":"処理時間","finished_at":"終了時刻","message":"メッセージ","messages":{"sponsored_by":"このテストは以下のスポンサーの協力で行いました。"},"name":"ビルド","started_at":"開始時刻","state":null},"datetime":{"distance_in_words":{"hours_exact":null,"minutes_exact":null,"seconds_exact":null}},"errors":{"messages":{"already_confirmed":null,"not_found":null,"not_locked":null}},"home":{"name":null},"jobs":{"allowed_failures":"失敗許容範囲内","author":"制作者","branch":"ブランチ","build_matrix":"ビルドマトリクス","commit":"コミット","committer":"コミット者","compare":"比較","config":"設定","duration":"処理時間","finished_at":"終了時刻","message":"メッセージ","messages":{"sponsored_by":"このテストは以下のスポンサーの協力で行いました。"},"sponsored_by":null,"started_at":"開始時刻","state":null},"layouts":{"about":{"alpha":"まだアルファですよ!","join":"参加してみよう!","mailing_list":"メールリスト","messages":{"alpha":"Travis-ciは安定したサービスまで後一歩!詳しくは<a href='https://github.com/travis-ci'>こちら</a>"},"repository":"リポジトリ","twitter":"ツイッター"},"application":{"fork_me":"Githubでフォークしよう","my_repositories":"マイリポジトリ","recent":"最近","search":"検索","sponsers":"スポンサー","sponsors_link":"スポンサーをもっと見る &rarr;"},"mobile":{"author":"制作者","build":"ビルド","build_matrix":"ビルドマトリクス","commit":"コミット","committer":"コミット者","compare":"比較","config":"設定","duration":"処理時間","finished_at":"終了時刻","job":"ジョブ","log":"ログ"},"top":{"accounts":null,"admin":"管理","blog":"ブログ","docs":"Travisとは?","github_login":"Githubでログイン","home":"ホーム","profile":"プロフィール","sign_out":"ログアウト","signing_in":null,"stats":"統計"}},"locales":{"ca":null,"en":"English","es":"Español","fr":"Français","ja":"日本語","nb":"Norsk Bokmål","nl":"Nederlands","pl":"Polski","pt-BR":"português brasileiro","ru":"Русский"},"no_job":"ジョブはありません","profiles":{"show":{"email":"メール","github":"Github","locale":"言語","message":{"config":"詳細設定","your_repos":"以下のスイッチを設定し、Travis-ciを有効にします。Githubへプッシュしたらビルドは自動的に開始します。複数バーションや細かい設定はこちらへ:"},"messages":{"notice":"まずは<a href=\"http://about.travis-ci.org/docs/user/getting-started/\">Travisのはじめ方</a>を参照してください。"},"token":"トークン","update":"更新","update_locale":"更新","your_locale":"言語設定","your_repos":"リポジトリ"}},"queue":"キュー","repositories":{"asciidoc":null,"branch":"ブランチ","commit":"コミット","duration":"処理時間","finished_at":"終了時刻","image_url":"画像URL","markdown":".md","message":"メッセージ","rdoc":".rdoc","started_at":"開始時刻","tabs":{"branches":"ブランチまとめ","build":"ビルド","build_history":"ビルド履歴","current":"最新","job":"ジョブ","pull_requests":"プルリクエスト"},"test":null,"textile":".textile"},"repository":{"duration":"時間"},"statistics":{"index":{"build_count":"ビルド数","count":"数","last_month":"先月","repo_growth":"リポジトリ","total_builds":"合計ビルド数","total_projects":"合計リポジトリ"}},"user":{"failure":null,"signed_out":null},"workers":"ワーカー"},"nb":{"build":{"duration":"Varighet","finished_at":"Fullført","job":"Jobb"},"builds":{"allowed_failures":"Tillatte feil","author":"Forfatter","branch":"Gren","build_matrix":"Jobbmatrise","commit":"Innsending","committer":"Innsender","compare":"Sammenlign","config":"Oppsett","duration":"Varighet","finished_at":"Fullført","message":"Beskrivelse","messages":{"sponsored_by":"Denne testen ble kjørt på en maskin sponset av"},"name":"Jobb","started_at":"Startet","state":null},"datetime":{"distance_in_words":{"hours_exact":{"one":"%{count} time","other":"%{count} timer"},"minutes_exact":{"one":"%{count} minutt","other":"%{count} minutter"},"seconds_exact":{"one":"%{count} sekund","other":"%{count} sekunder"}}},"errors":{"messages":{"already_confirmed":"har allerede blitt bekreftet","not_found":"ikke funnnet","not_locked":"var ikke låst"}},"home":{"name":"hjem"},"jobs":{"allowed_failures":"Tillatte feil","author":"Forfatter","branch":"Gren","build_matrix":"Jobbmatrise","commit":"Innsending","committer":"Innsender","compare":"Sammenlign","config":"Oppsett","duration":"Varighet","finished_at":"Fullført","message":"Beskrivelse","messages":{"sponsored_by":"Denne testserien ble kjørt på en maskin sponset av"},"sponsored_by":null,"started_at":"Startet","state":null},"layouts":{"about":{"alpha":"Dette er alfa-greier.","join":"Bli med og hjelp oss!","mailing_list":"E-postliste","messages":{"alpha":"Dette er <strong>ikke</strong> en stabil tjeneste. Vi har fremdeles et stykke igjen! Mer informasjon finner du <a href=\"https://github.com/travis-ci\">her</a>."},"repository":"Kodelager","twitter":"Twitter."},"application":{"fork_me":"Se koden på Github","my_repositories":"Mine kodelagre","recent":"Nylig","search":"Søk","sponsers":"Sponsorer","sponsors_link":"Se alle de flotte sponsorene våre &rarr;"},"mobile":{"author":"Forfatter","build":"Jobb","build_matrix":"Jobbmatrise","commit":"Innsending","committer":"Innsender","compare":"Sammenlign","config":"Oppsett","duration":"Varighet","finished_at":"Fullført","job":"Jobb","log":"Logg"},"top":{"accounts":null,"admin":"Administrator","blog":"Blogg","docs":"Dokumentasjon","github_login":"Logg inn med Github","home":"Hjem","profile":"Profil","sign_out":"Logg ut","signing_in":null,"stats":"Statistikk"}},"locales":{"ca":null,"en":"English","es":"Español","fr":"Français","ja":"日本語","nb":"Norsk Bokmål","nl":"Nederlands","pl":"Polski","pt-BR":"português brasileiro","ru":"Русский"},"no_job":"Ingen jobber finnnes","profiles":{"show":{"email":"E-post","github":"Github","locale":null,"message":{"config":"hvordan sette opp egne jobbinnstillinger","your_repos":"Slå\u0010 på Travis for prosjektene dine ved å dra i bryterne under, og send koden til Github.<br />\nFor å teste mot flere versjoner av ruby, se "},"messages":{"notice":"For å komme i gang, vennligst les <a href=\"http://about.travis-ci.org/docs/user/getting-started/\">kom-i-gang-veivisereren</a> vår. <small>Det tar bare et par minutter.</small>"},"token":"Kode","update":"Oppdater","update_locale":"Oppdater","your_locale":"Ditt språk","your_repos":"Dine kodelagre"}},"queue":"Kø","repositories":{"asciidoc":null,"branch":"Gren","commit":"Innsender","duration":"Varighet","finished_at":"Fullført","image_url":"Bilde-URL","markdown":"Markdown","message":"Beskrivelse","rdoc":"RDOC","started_at":"Startet","tabs":{"branches":"Grensammendrag","build":"Jobb","build_history":"Jobblogg","current":"Siste","job":"Jobb","pull_requests":null},"test":null,"textile":"Textile"},"repository":{"duration":"Varighet"},"statistics":{"index":{"build_count":"Antall jobber","count":"Antall","last_month":"siste måned","repo_growth":"Vekst i kodelager","total_builds":"Totale jobber","total_projects":"Antall prosjekter/kodelagre"}},"user":{"failure":null,"signed_out":null},"workers":"Arbeidere"},"nl":{"build":{"duration":"Duur","finished_at":"Voltooid","job":"Taak"},"builds":{"allowed_failures":"Toegestane mislukkingen","author":"Auteur","branch":"Tak","build_matrix":"Bouw Matrix","commit":"Commit","committer":"Committer","compare":"Vergelijk","config":"Configuratie","duration":"Duur","finished_at":"Voltooid","message":"Bericht","messages":{"sponsored_by":"Deze tests zijn gedraaid op een machine gesponsord door"},"name":"Bouw","started_at":"Gestart","state":null},"datetime":{"distance_in_words":{"hours_exact":{"one":"%{count} uur","other":"%{count} uren"},"minutes_exact":{"one":"%{count} minuut","other":"%{count} minuten"},"seconds_exact":{"one":"%{count} seconde","other":"%{count} seconden"}}},"errors":{"messages":{"already_confirmed":"was al bevestigd","not_found":"niet gevonden","not_locked":"was niet vergrendeld"}},"home":{"name":"Hoofdpagina"},"jobs":{"allowed_failures":"Toegestane mislukkingen","author":"Auteur","branch":"Tak","build_matrix":"Bouw matrix","commit":"Commit","committer":"Committer","compare":"Vergelijk","config":"Configuratie","duration":"Duur","finished_at":"Voltooid","message":"Bericht","messages":{"sponsored_by":"Deze testen zijn uitgevoerd op een machine gesponsord door"},"sponsored_by":null,"started_at":"Gestart","state":null},"layouts":{"about":{"alpha":"Dit is in alfa-stadium.","join":"Doe met ons mee en help!","mailing_list":"Mailing lijst","messages":{"alpha":"Gelieve deze service <strong>niet</strong> te beschouwen als stabiel. Daar zijn we nog lang niet! Meer info <a href='https://github.com/travis-ci'>hier.</a>"},"repository":"Repository","twitter":"Twitter"},"application":{"fork_me":"Maak een fork op Github","my_repositories":"Mijn repositories","recent":"Recent","search":"Zoeken","sponsers":"Sponsors","sponsors_link":"Bekijk al onze geweldige sponsors &rarr;"},"mobile":{"author":"Auteur","build":"Bouw","build_matrix":"Bouw matrix","commit":"Commit","committer":"Committer","compare":"Vergelijk","config":"Configuratie","duration":"Duur","finished_at":"Voltooid op","job":"Taak","log":"Logboek"},"top":{"accounts":null,"admin":"Administratie","blog":"Blog","docs":"Documentatie","github_login":"Inloggen met Github","home":"Home","profile":"Profiel","sign_out":"Uitloggen","signing_in":null,"stats":"Statistieken"}},"locales":{"ca":null,"en":"English","es":"Español","fr":"Français","ja":"日本語","nb":"Norsk Bokmål","nl":"Nederlands","pl":"Polski","pt-BR":"português brasileiro","ru":"Русский"},"no_job":"Er zijn geen taken","profiles":{"show":{"email":"Email adres","github":"Github","locale":null,"message":{"config":"hoe eigen bouw-opties in te stellen","your_repos":"Zet de schakelaars hieronder aan om de Travis hook voor uw projecten te activeren en push daarna naar Github<br />\nOm te testen tegen meerdere rubies, zie"},"messages":{"notice":"Om te beginnen kunt u onze <a href=\\\"http://about.travis-ci.org/docs/user/getting-started/\\\">startersgids</a> lezen.\\n  <small>Het zal maar enkele minuten van uw tijd vergen.</small>"},"token":"Token","update":"Bijwerken","update_locale":"Bijwerken","your_locale":"Uw taal","your_repos":"Uw repositories"}},"queue":"Wachtrij","repositories":{"asciidoc":null,"branch":"Tak","commit":"Commit","duration":"Duur","finished_at":"Voltooid","image_url":"Afbeeldings URL","markdown":"Markdown","message":"Bericht","rdoc":"RDOC","started_at":"Gestart","tabs":{"branches":"Tak samenvatting","build":"Bouw","build_history":"Bouw geschiedenis","current":"Huidig","job":"Taak","pull_requests":null},"test":null,"textile":"Textile"},"repository":{"duration":"Duur"},"statistics":{"index":{"build_count":"Bouw aantal","count":"Aantal","last_month":"voorbije maand","repo_growth":"Repository groei","total_builds":"Bouw totaal","total_projects":"Projecten/Repository totaal"}},"user":{"failure":null,"signed_out":null},"workers":"Machines"},"pl":{"build":{"duration":"Czas trwania","finished_at":"Zakończono","job":"Zadanie"},"builds":{"allowed_failures":"Dopuszczalne Niepowodzenia","author":"Autor","branch":"Gałąź","build_matrix":"Macierz Buildów","commit":"Commit","committer":"Komitujący","compare":"Porównanie","config":"Konfiguracja","duration":"Czas trwania","finished_at":"Zakończono","message":"Opis","messages":{"sponsored_by":"Te testy zostały uruchomione na maszynie sponsorowanej przez"},"name":"Build","started_at":"Rozpoczęto","state":null},"datetime":{"distance_in_words":{"hours_exact":{"one":"%{count} godzina","other":"%{count} godziny"},"minutes_exact":{"one":"%{count} minuta","other":"%{count} minuty"},"seconds_exact":{"one":"%{count} sekunda","other":"%{count} sekundy"}}},"errors":{"messages":{"already_confirmed":null,"not_found":null,"not_locked":null}},"home":{"name":null},"jobs":{"allowed_failures":"Dopuszczalne Niepowodzenia","author":"Autor","branch":"Gałąź","build_matrix":"Macierz Buildów","commit":"Commit","committer":"Committer","compare":"Porównanie","config":"Konfiguracja","duration":"Czas trwania","finished_at":"Zakończono","message":"Opis","messages":{"sponsored_by":"Te testy zostały uruchomione na maszynie sponsorowanej przez"},"sponsored_by":"Te testy zostały uruchomione na maszynie sponsorowanej przez","started_at":"Rozpoczęto","state":null},"layouts":{"about":{"alpha":"To wciąż jest wersja alpha.","join":"Pomóż i dołącz do nas!","mailing_list":"Lista mailingowa","messages":{"alpha":"Proszę <strong>nie</strong> traktuj tego jako stabilnej usługi. Wciąż nam wiele do tego brakuje! Więcej informacji znajdziesz <a href='https://github.com/travis-ci'>tutaj.</a>"},"repository":"Repozytorium","twitter":"Twitter"},"application":{"fork_me":"Fork me on Github","my_repositories":"Moje repozytoria","recent":"Ostatnie","search":"Wyniki","sponsers":"Sponsorzy","sponsors_link":"Zobacz naszych wszystkich wspaniałych sponsorów &rarr;"},"mobile":{"author":"Autor","build":"Build","build_matrix":"Macierz Buildów","commit":"Commit","committer":"Komitujący","compare":"Porównianie","config":"Konfiguracja","duration":"Czas trwania","finished_at":"Zakończono","job":"Zadanie","log":"Log"},"top":{"accounts":null,"admin":null,"blog":"Blog","docs":"Dokumentacja","github_login":"Zaloguj się przy pomocy Githuba","home":"Start","profile":"Profil","sign_out":"Wyloguj się","signing_in":null,"stats":"Statystki"}},"locales":{"ca":null,"en":"English","es":"Español","fr":"Français","ja":"日本語","nb":"Norsk Bokmål","nl":"Nederlands","pl":"Polski","pt-BR":"português brasileiro","ru":"Русский"},"no_job":"Brak zadań","profiles":{"show":{"email":"Email","github":"Github","locale":null,"message":{"config":"jak skonfigurować niestandardowe opcje builda","your_repos":"  Przesuń suwak poniżej, aby włączyć Travisa, dla twoich projektów, a następnie umieść swój kod na GitHubie.<br />\n Aby testować swój kod przy użyciu wielu wersji Rubiego, zobacz"},"messages":{"notice":"Aby zacząć, przeczytaj nasz <a href=\"http://about.travis-ci.org/docs/user/getting-started/\">Przewodnik </a>.\n  <small>Zajmie ci to tylko kilka minut.</small>"},"token":"Token","update":null,"update_locale":null,"your_locale":null,"your_repos":"Twoje repozytoria"}},"queue":"Kolejka","repositories":{"asciidoc":null,"branch":"Gałąź","commit":"Commit","duration":"Czas trwania","finished_at":"Zakończono","image_url":"URL obrazka","markdown":"Markdown","message":"Opis","rdoc":"RDOC","started_at":"Rozpoczęto","tabs":{"branches":"Wszystkie Gałęzie","build":"Build","build_history":"Historia Buildów","current":"Aktualny","job":"Zadanie","pull_requests":null},"test":null,"textile":"Textile"},"repository":{"duration":null},"statistics":{"index":{"build_count":"Liczba buildów","count":"Ilość","last_month":"ostatni miesiąc","repo_growth":"Przyrost repozytoriów","total_builds":"Łącznie Buildów","total_projects":"Łącznie projektów/repozytoriów"}},"user":{"failure":null,"signed_out":null},"workers":"Workers"},"pt-BR":{"build":{"duration":"Duração","finished_at":"Concluído em","job":"Trabalho"},"builds":{"allowed_failures":"Falhas Permitidas","author":"Autor","branch":"Branch","build_matrix":"Matriz de Build","commit":"Commit","committer":"Committer","compare":"Comparar","config":"Config","duration":"Duração","finished_at":"Concluído em","message":"Mensagem","messages":{"sponsored_by":"Esta série de testes foi executada em uma caixa de processos patrocinada por"},"name":"Build","started_at":"Iniciou em","state":null},"datetime":{"distance_in_words":{"hours_exact":{"one":"%{count} hora","other":"%{count} horas"},"minutes_exact":{"one":"%{count} minuto","other":"%{count} minutos"},"seconds_exact":{"one":"%{count} segundo","other":"%{count} segundos"}}},"errors":{"messages":{"already_confirmed":"já foi confirmado","not_found":"não encontrado","not_locked":"não estava trancado"}},"home":{"name":"home"},"jobs":{"allowed_failures":"Falhas Permitidas","author":"Autor","branch":"Branch","build_matrix":"Matriz de Build","commit":"Commit","committer":"Committer","compare":"Comparar","config":"Config","duration":"Duração","finished_at":"Concluído em","message":"Mensagem","messages":{"sponsored_by":"Esta série de testes foi executada em uma caixa de processos patrocinada por"},"sponsored_by":null,"started_at":"Iniciou em","state":null},"layouts":{"about":{"alpha":"Isto é um alpha.","join":"Junte-se à nós e ajude!","mailing_list":"Lista de email","messages":{"alpha":"Por favor, <strong>não</strong> considere isto um serviço estável. Estamos muito longe disso! Mais informações <a href='https://github.com/travis-ci'>aqui.</a>"},"repository":"Repositório","twitter":"Twitter"},"application":{"fork_me":"Faça fork no Github","my_repositories":"Meus Repositórios","recent":"Recentes","search":"Buscar","sponsers":"Patrocinadores","sponsors_link":"Conheça todos os nossos patrocinadores &rarr;"},"mobile":{"author":"Autor","build":"Build","build_matrix":"Matriz de Build","commit":"Commit","committer":"Committer","compare":"Comparar","config":"Config","duration":"Duração","finished_at":"Concluído em","job":"Trabalho","log":"Log"},"top":{"accounts":null,"admin":"Admin","blog":"Blog","docs":"Documentação","github_login":"Logue com o Github","home":"Home","profile":"Perfil","sign_out":"Sair","signing_in":null,"stats":"Estatísticas"}},"locales":{"ca":null,"en":"English","es":"Español","fr":"Français","ja":"日本語","nb":"Norsk Bokmål","nl":"Nederlands","pl":"Polski","pt-BR":"português brasileiro","ru":"Русский"},"no_job":"Não há trabalhos","profiles":{"show":{"email":"Email","github":"Github","locale":null,"message":{"config":"como configurar opções de build","your_repos":"Use os botões abaixo para ligar ou desligar o hook de serviço do Travis para seus projetos, e então, faça um push para o Github.<br />Para testar com múltiplas versões do Ruby, leia"},"messages":{"notice":"Para começar, leia nosso <a href=\"http://about.travis-ci.org/docs/user/getting-started/\">Guia de início</a>. <small>Só leva alguns minutinhos.</small>"},"token":"Token","update":"Atualizar","update_locale":"Atualizar","your_locale":"Sua língua","your_repos":"Seus Repositórios"}},"queue":"Fila","repositories":{"asciidoc":null,"branch":"Branch","commit":"Commit","duration":"Duração","finished_at":"Concluído em","image_url":"URL da imagem","markdown":"Markdown","message":"Mensagem","rdoc":"RDOC","started_at":"Iniciou em","tabs":{"branches":"Sumário do Branch","build":"Build","build_history":"Histórico de Build","current":"Atual","job":"Trabalho","pull_requests":null},"test":null,"textile":"Textile"},"repository":{"duration":"Duração"},"statistics":{"index":{"build_count":"Número de Builds","count":"Número","last_month":"último mês","repo_growth":"Crescimento de Repositório","total_builds":"Total de Builds","total_projects":"Total de Projetos/Repositórios"}},"user":{"failure":null,"signed_out":null},"workers":"Processos"},"ru":{"build":{"duration":"Длительность","finished_at":"Завершен","job":"Задача"},"builds":{"allowed_failures":"Допустимые неудачи","author":"Автор","branch":"Ветка","build_matrix":"Матрица","commit":"Коммит","committer":"Коммитер","compare":"Дифф","config":"Конфигурация","duration":"Длительность","finished_at":"Завершен","message":"Комментарий","messages":{"sponsored_by":"Эта серия тестов была запущена на машине, спонсируемой"},"name":"Билд","started_at":"Начало","state":null},"datetime":{"distance_in_words":{"hours_exact":{"few":"%{count} часа","many":"%{count} часов","one":"%{count} час","other":"%{count} часа"},"minutes_exact":{"few":"%{count} минуты","many":"%{count} минут","one":"%{count} минута","other":"%{count} минуты"},"seconds_exact":{"few":"%{count} секунды","many":"%{count} секунд","one":"%{count} секунда","other":"%{count} секунды"}}},"errors":{"messages":{"already_confirmed":"уже подтвержден","not_found":"не найден","not_locked":"не заблокирован"}},"home":{"name":"Главная"},"jobs":{"allowed_failures":"Допустимые неудачи","author":"Автор","branch":"Ветка","build_matrix":"Матрица","commit":"Коммит","committer":"Коммитер","compare":"Сравнение","config":"Конфигурация","duration":"Длительность","finished_at":"Завершен","message":"Комментарий","messages":{"sponsored_by":"Эта серия тестов была запущена на машине спонсируемой"},"sponsored_by":null,"started_at":"Начало","state":null},"layouts":{"about":{"alpha":"Это альфа-версия","join":"Присоединяйтесь к нам и помогайте!","mailing_list":"Лист рассылки","messages":{"alpha":"Пожалуйста, <strong>не</strong> считайте данный сервис стабильным. Мы еще очень далеки от стабильности! <a href='https://github.com/travis-ci'>Подробности</a>"},"repository":"Репозиторий","twitter":"Twitter"},"application":{"fork_me":"Fork me on Github","my_repositories":"Мои репозитории","recent":"Недавние","search":"Поиск","sponsers":"Спонсоры","sponsors_link":"Список всех наших замечательных спонсоров &rarr;"},"mobile":{"author":"Автор","build":"Сборка","build_matrix":"Матрица сборок","commit":"Коммит","committer":"Коммитер","compare":"Сравнение","config":"Конфигурация","duration":"Длительность","finished_at":"Завершен","job":"Задача","log":"Журнал"},"top":{"accounts":null,"admin":"Управление","blog":"Блог","docs":"Документация","github_login":"Войти через Github","home":"Главная","profile":"Профиль","sign_out":"Выход","signing_in":null,"stats":"Статистика"}},"locales":{"ca":null,"en":"English","es":"Español","fr":"Français","ja":"日本語","nb":"Norsk Bokmål","nl":"Nederlands","pl":"Polski","pt-BR":"português brasileiro","ru":"Русский"},"no_job":"Очередь пуста","profiles":{"show":{"email":"Электронная почта","github":"Github","locale":null,"message":{"config":"как настроить специальные опции билда","your_repos":"Используйте переключатели, чтобы включить Travis service hook для вашего проекта, а потом отправьте код на GitHub.<br />\nДля тестирования на нескольких версиях Ruby смотрите"},"messages":{"notice":"Перед началом, пожалуйста, прочтите <a href=\"http://about.travis-ci.org/docs/user/getting-started/\">Руководство для быстрого старта</a>. <small>Это займет всего несколько минут.</small>"},"token":"Токен","update":"Обновить","update_locale":"Обновить","your_locale":"Ваш язык","your_repos":"Ваши репозитории"}},"queue":"Очередь","repositories":{"asciidoc":null,"branch":"Ветка","commit":"Коммит","duration":"Длительность","finished_at":"Завершен","image_url":"URL изображения","markdown":"Markdown","message":"Комментарий","rdoc":"RDOC","started_at":"Начало","tabs":{"branches":"Статус веток","build":"Билд","build_history":"История","current":"Текущий","job":"Задача","pull_requests":"Запросы на Pull"},"test":null,"textile":"Textile"},"repository":{"duration":"Длительность"},"statistics":{"index":{"build_count":"Количество билдов","count":"Количество","last_month":"прошлый месяц","repo_growth":"Рост числа репозиториев","total_builds":"Всего билдов","total_projects":"Всего проектов/репозиториев"}},"user":{"failure":null,"signed_out":null},"workers":"Машины"}};
\ No newline at end of file
diff --git a/assets/scripts/lib/travis/ajax.coffee b/assets/scripts/lib/travis/ajax.coffee
index 07630660..d8ff2deb 100644
--- a/assets/scripts/lib/travis/ajax.coffee
+++ b/assets/scripts/lib/travis/ajax.coffee
@@ -15,7 +15,7 @@ jQuery.support.cors = true
     endpoint = Travis.config.api_endpoint || ''
     options = options || {}
 
-    if token = sessionStorage.getItem('travis.token')
+    if token = Travis.sessionStorage.getItem('travis.token')
       options.headers ||= {}
       options.headers['Authorization'] ||= "token #{token}"
 
diff --git a/assets/scripts/lib/travis/limited_array.coffee b/assets/scripts/lib/travis/limited_array.coffee
index b4f88a4a..b9f1a6d8 100644
--- a/assets/scripts/lib/travis/limited_array.coffee
+++ b/assets/scripts/lib/travis/limited_array.coffee
@@ -7,11 +7,11 @@ Travis.LimitedArray = Em.ArrayProxy.extend
 
   arrangedContent: (->
     content = @get('content')
-    if @get('disable')
+    if @get('disabled')
       content
     else if content
       content.slice(0, @get('limit'))
-  ).property('content', 'limit', 'disable')
+  ).property('content', 'limit', 'disabled')
 
   totalLength: (->
     @get('content.length')
@@ -20,40 +20,49 @@ Travis.LimitedArray = Em.ArrayProxy.extend
   leftLength: (->
     totalLength = @get('totalLength')
     limit       = @get('limit')
-    if totalLength > limit
-      totalLength - limit
-    else
+
+    if @get('disabled') || totalLength <= limit
       0
-  ).property('totalLength', 'limit')
+    else
+      totalLength - limit
+  ).property('totalLength', 'limit', 'disabled')
 
   isMore: (->
-    @get('leftLength') > 0
+    !@get('disabled') && @get('leftLength') > 0
   ).property('leftLength')
 
   showAll: ->
-    @set 'limit', 1000000000
-    @set 'disable', true
+    @set 'disabled', true
+
+  contentArrayWillChange: (array, index, removedCount, addedCount) ->
+    @_super.apply this, arguments
+
+    return if @get('disabled')
+
+    if removedCount
+      arrangedContent = @get 'arrangedContent'
+      removedObjects = array.slice(index, index + removedCount);
+      arrangedContent.removeObjects(removedObjects)
 
   contentArrayDidChange: (array, index, removedCount, addedCount) ->
     @_super.apply this, arguments
 
-    return if @get('disable')
+    return if @get('disabled')
 
+    limit = @get('limit')
+
+    if addedCount
+      if index < limit
+        addedObjects = array.slice(index, index + addedCount)
+        @replaceContent(index, 0, addedObjects)
+
+    @balanceArray()
+
+  balanceArray: ->
     limit  = @get 'limit'
-    arrangedContent = @get('arrangedContent')
+    arrangedContent = @get 'arrangedContent'
     length = arrangedContent.get 'length'
-
-    if addedCount > 0
-      addedObjects = array.slice(index, index + addedCount)
-      for object in addedObjects
-        arrangedContent.unshiftObject(object)
-
-    if removedCount
-      removedObjects = array.slice(index, index + removedCount);
-      arrangedContent.removeObjects(removedObjects)
-
-    length = arrangedContent.get 'length'
-    content = @get('content')
+    content = @get 'content'
 
     if length > limit
       arrangedContent.replace(limit, length - limit)
@@ -61,5 +70,5 @@ Travis.LimitedArray = Em.ArrayProxy.extend
       count = limit - length
       while count > 0
         if next = content.find( (object) -> !arrangedContent.contains(object) )
-          arrangedContent.unshiftObject(next)
+          arrangedContent.pushObject(next)
         count -= 1
diff --git a/assets/scripts/spec/unit/limited_array_spec.coffee b/assets/scripts/spec/unit/limited_array_spec.coffee
new file mode 100644
index 00000000..f4db7ef4
--- /dev/null
+++ b/assets/scripts/spec/unit/limited_array_spec.coffee
@@ -0,0 +1,46 @@
+describe 'Travis.LimitedArray', ->
+  it 'limits given content', ->
+    content = [1, 2, 3]
+    array = Travis.LimitedArray.create content: content, limit: 2
+    expect( array.get('length') ).toEqual 2
+    expect( array.toArray() ).toEqual [1, 2]
+
+  it 'inserts content at the right place when unshifting', ->
+    content = [1, 2, 3]
+    array = Travis.LimitedArray.create content: content, limit: 2
+    content.unshiftObject 0
+    expect( array.get('length') ).toEqual 2
+    expect( array.toArray() ).toEqual [0, 1]
+
+  it 'does not insert content when it\'s inserted not in the limited range', ->
+    content = [1, 2, 3]
+    array = Travis.LimitedArray.create content: content, limit: 2
+    content.pushObject 0
+    expect( array.get('length') ).toEqual 2
+    expect( array.toArray() ).toEqual [1, 2]
+
+  it 'properly removes items', ->
+    content = [1, 2, 3]
+    array = Travis.LimitedArray.create content: content, limit: 2
+    content.shiftObject()
+
+    expect( array.get('length') ).toEqual 2
+    expect( array.toArray() ).toEqual [2, 3]
+
+    content.shiftObject()
+
+    expect( array.get('length') ).toEqual 1
+    expect( array.toArray() ).toEqual [3]
+
+    content.shiftObject()
+
+    expect( array.get('length') ).toEqual 0
+
+  it 'allows to expand array to show all items', ->
+    content = [1, 2, 3]
+    array = Travis.LimitedArray.create content: content, limit: 2
+
+    array.showAll()
+
+    expect( array.get('length') ).toEqual 3
+    expect( array.toArray() ).toEqual [1, 2, 3]
diff --git a/assets/scripts/travis.coffee b/assets/scripts/travis.coffee
index 09f2a9c7..16ffbe55 100644
--- a/assets/scripts/travis.coffee
+++ b/assets/scripts/travis.coffee
@@ -13,6 +13,22 @@ if window.history.state == undefined
     window.history.state = state
     oldReplaceState.apply this, arguments
 
+# TODO: how can I put it in Travis namespace and use immediately?
+Storage = Em.Object.extend
+  init: ->
+    @set('storage', {})
+  key: (key) ->
+    "__#{key.replace('.', '__')}"
+  getItem: (k) ->
+    return @get("storage.#{@key(k)}")
+  setItem: (k,v) ->
+    @set("storage.#{@key(k)}", v)
+  removeItem: (k) ->
+    @setItem(k, null)
+  clear: ->
+    @set('storage', {})
+
+
 @Travis = Em.Namespace.create Ember.Evented,
   config:
     api_endpoint: $('meta[rel="travis.api_endpoint"]').attr('href')
@@ -48,16 +64,36 @@ if window.history.state == undefined
   setLocale: (locale) ->
     return unless locale
     I18n.locale = locale
-    localStorage.setItem('travis.locale', locale)
+    Travis.set('locale', locale)
 
-  needsLocaleChange: (locale) ->
-    I18n.locale != locale
+  storage: (->
+    storage = null
+    try
+      storage = window.localStorage || throw('no storage')
+    catch err
+      storage = Storage.create()
+
+    storage
+  )()
+  default_locale: 'en'
+  sessionStorage: (->
+    storage = null
+    try
+      # firefox will not throw error on access for sessionStorage var,
+      # you need to actually get something from session
+      sessionStorage.getItem('foo')
+      storage = sessionStorage
+    catch err
+      storage = Storage.create()
+
+    storage
+  )()
 
   run: (attrs) ->
     location.href = location.href.replace('#!/', '') if location.hash.slice(0, 2) == '#!'
 
     I18n.fallbacks = true
-    @setLocale localStorage.getItem('travis.locale') || 'en'
+    Travis.setLocale 'locale', @defualt_locale
 
     Ember.run.next this, ->
       app = Travis.App.create(attrs || {})
diff --git a/lib/travis/web/app.rb b/lib/travis/web/app.rb
index 2146d8b7..285d8ef9 100644
--- a/lib/travis/web/app.rb
+++ b/lib/travis/web/app.rb
@@ -1,6 +1,7 @@
 require 'rack'
 require 'rack/ssl'
 require 'rack/cache'
+require 'rack/protection'
 require 'delegate'
 require 'time'
 
@@ -130,6 +131,9 @@ class Travis::Web::App
       end
       builder.use Rack::Deflater
       builder.use Rack::Head
+      builder.use Rack::Protection::XSSHeader
+      builder.use Rack::Protection::FrameOptions
+      builder.use Rack::Protection::PathTraversal
       builder.use Rack::ConditionalGet
       builder.use MobileRedirect
       builder.run router
diff --git a/locales/en.yml b/locales/en.yml
index b4f42c47..a6c1218f 100644
--- a/locales/en.yml
+++ b/locales/en.yml
@@ -19,6 +19,7 @@ en:
       sponsored_by: This test series was run on a worker box sponsored by
     name: Build
     started_at: Started
+    state: state
   datetime:
     distance_in_words:
       hours_exact:
@@ -53,6 +54,7 @@ en:
       sponsored_by: This test series was run on a worker box sponsored by
     sponsored_by: 
     started_at: Started
+    state: state
   layouts:
     about:
       alpha: This stuff is alpha.
@@ -82,6 +84,7 @@ en:
       job: Job
       log: Log
     top:
+      accounts: accounts
       admin: Admin
       blog: Blog
       docs: Docs
@@ -89,6 +92,7 @@ en:
       home: Home
       profile: Profile
       sign_out: Sign Out
+      signing_in: signing_in
       stats: Stats
   locales:
     ca: 
@@ -106,6 +110,7 @@ en:
     show:
       email: Email
       github: Github
+      locale: locale
       message:
         config: how to configure custom build options
         your_repos: ! "  Flick the switches below to turn on the Travis service hook for your projects, then push to GitHub.<br />\n  To test against multiple rubies, see"
@@ -118,6 +123,7 @@ en:
       your_repos: Your Repositories
   queue: Queue
   repositories:
+    asciidoc: AsciiDoc
     branch: Branch
     commit: Commit
     duration: Duration
@@ -136,7 +142,6 @@ en:
       pull_requests: Pull Requests
     test: 
     textile: Textile
-    asciidoc: AsciiDoc
   repository:
     duration: Duration
   statistics:
diff --git a/locales/es.yml b/locales/es.yml
index 526454e5..a6577dae 100644
--- a/locales/es.yml
+++ b/locales/es.yml
@@ -19,6 +19,7 @@ es:
       sponsored_by: Esta serie de tests han sido ejecutados en una caja de Proceso patrocinada por
     name: Build
     started_at: Iniciado
+    state: 
   datetime:
     distance_in_words:
       hours_exact:
@@ -53,6 +54,7 @@ es:
       sponsored_by: Esta serie de tests han sido ejecutados en una caja de Proceso patrocinada por
     sponsored_by: Patrocinado por
     started_at: Iniciado
+    state: 
   layouts:
     about:
       alpha: Esto es alpha.
@@ -82,6 +84,7 @@ es:
       job: Trabajo
       log: Registro
     top:
+      accounts: 
       admin: Admin
       blog: Blog
       docs: Documentación
@@ -89,6 +92,7 @@ es:
       home: Inicio
       profile: Perfil
       sign_out: Desconectar
+      signing_in: 
       stats: Estadísticas
   locales:
     ca: 
@@ -106,6 +110,7 @@ es:
     show:
       email: email
       github: Github
+      locale: 
       message:
         config: como configurar tus propias opciones para el Build
         your_repos: ! "  Activa los interruptores para inicial el  Travis service hook para tus proyectos, y haz un Push en GitHub.<br />\n  Para probar varias versiones de ruby, mira"
@@ -118,6 +123,7 @@ es:
       your_repos: Tus repositorios
   queue: Cola
   repositories:
+    asciidoc: 
     branch: Rama
     commit: Commit
     duration: Duración
@@ -136,7 +142,6 @@ es:
       pull_requests: 
     test: 
     textile: Textile
-    asciidoc: AsciiDoc
   repository:
     duration: Duración
   statistics:
diff --git a/locales/fr.yml b/locales/fr.yml
index bae26a5f..8b367d73 100644
--- a/locales/fr.yml
+++ b/locales/fr.yml
@@ -19,6 +19,7 @@ fr:
       sponsored_by: Cette série de tests a été exécutée sur une machine sponsorisée par
     name: Version
     started_at: Commencé
+    state: 
   datetime:
     distance_in_words:
       hours_exact:
@@ -53,6 +54,7 @@ fr:
       sponsored_by: Cette série de tests a été exécutée sur une machine sponsorisée par
     sponsored_by: Cette série de tests a été exécutée sur une machine sponsorisée par
     started_at: Commencé
+    state: 
   layouts:
     about:
       alpha: Ceci est en alpha.
@@ -82,6 +84,7 @@ fr:
       job: Tâche
       log: Journal
     top:
+      accounts: 
       admin: Admin
       blog: Blog
       docs: Documentation
@@ -89,6 +92,7 @@ fr:
       home: Accueil
       profile: Profil
       sign_out: Déconnexion
+      signing_in: 
       stats: Statistiques
   locales:
     ca: 
@@ -106,6 +110,7 @@ fr:
     show:
       email: Courriel
       github: Github
+      locale: 
       message:
         config: comment configurer des options de version personnalisées
         your_repos: ! 'Utilisez les boutons ci-dessous pour activer Travis sur vos projets puis déployez sur GitHub.<br />
@@ -120,6 +125,7 @@ fr:
       your_repos: Vos dépôts
   queue: File
   repositories:
+    asciidoc: 
     branch: Branche
     commit: Commit
     duration: Durée
@@ -138,7 +144,6 @@ fr:
       pull_requests: 
     test: 
     textile: Textile
-    asciidoc: AsciiDoc
   repository:
     duration: Durée
   statistics:
diff --git a/locales/ja.yml b/locales/ja.yml
index 7ce292a8..20b84975 100644
--- a/locales/ja.yml
+++ b/locales/ja.yml
@@ -19,6 +19,7 @@ ja:
       sponsored_by: このテストは以下のスポンサーの協力で行いました。
     name: ビルド
     started_at: 開始時刻
+    state: 
   datetime:
     distance_in_words:
       hours_exact: 
@@ -47,6 +48,7 @@ ja:
       sponsored_by: このテストは以下のスポンサーの協力で行いました。
     sponsored_by: 
     started_at: 開始時刻
+    state: 
   layouts:
     about:
       alpha: まだアルファですよ!
@@ -76,6 +78,7 @@ ja:
       job: ジョブ
       log: ログ
     top:
+      accounts: 
       admin: 管理
       blog: ブログ
       docs: Travisとは?
@@ -83,6 +86,7 @@ ja:
       home: ホーム
       profile: プロフィール
       sign_out: ログアウト
+      signing_in: 
       stats: 統計
   locales:
     ca: 
@@ -100,6 +104,7 @@ ja:
     show:
       email: メール
       github: Github
+      locale: 言語
       message:
         config: 詳細設定
         your_repos: 以下のスイッチを設定し、Travis-ciを有効にします。Githubへプッシュしたらビルドは自動的に開始します。複数バーションや細かい設定はこちらへ:
@@ -112,6 +117,7 @@ ja:
       your_repos: リポジトリ
   queue: キュー
   repositories:
+    asciidoc: 
     branch: ブランチ
     commit: コミット
     duration: 処理時間
@@ -130,7 +136,6 @@ ja:
       pull_requests: プルリクエスト
     test: 
     textile: .textile
-    asciidoc: .asciidoc
   repository:
     duration: 時間
   statistics:
diff --git a/locales/nb.yml b/locales/nb.yml
index a1d663a0..ce8fb0fb 100644
--- a/locales/nb.yml
+++ b/locales/nb.yml
@@ -19,6 +19,7 @@ nb:
       sponsored_by: Denne testen ble kjørt på en maskin sponset av
     name: Jobb
     started_at: Startet
+    state: 
   datetime:
     distance_in_words:
       hours_exact:
@@ -53,6 +54,7 @@ nb:
       sponsored_by: Denne testserien ble kjørt på en maskin sponset av
     sponsored_by: 
     started_at: Startet
+    state: 
   layouts:
     about:
       alpha: Dette er alfa-greier.
@@ -82,6 +84,7 @@ nb:
       job: Jobb
       log: Logg
     top:
+      accounts: 
       admin: Administrator
       blog: Blogg
       docs: Dokumentasjon
@@ -89,6 +92,7 @@ nb:
       home: Hjem
       profile: Profil
       sign_out: Logg ut
+      signing_in: 
       stats: Statistikk
   locales:
     ca: 
@@ -106,6 +110,7 @@ nb:
     show:
       email: E-post
       github: Github
+      locale: 
       message:
         config: hvordan sette opp egne jobbinnstillinger
         your_repos: ! "Slå\x10 på Travis for prosjektene dine ved å dra i bryterne under, og send koden til Github.<br />\nFor å teste mot flere versjoner av ruby, se "
@@ -118,6 +123,7 @@ nb:
       your_repos: Dine kodelagre
   queue: Kø
   repositories:
+    asciidoc: 
     branch: Gren
     commit: Innsender
     duration: Varighet
@@ -136,7 +142,6 @@ nb:
       pull_requests: 
     test: 
     textile: Textile
-    asciidoc: AsciiDoc
   repository:
     duration: Varighet
   statistics:
diff --git a/locales/nl.yml b/locales/nl.yml
index 8e1da620..6580ef3e 100644
--- a/locales/nl.yml
+++ b/locales/nl.yml
@@ -19,6 +19,7 @@ nl:
       sponsored_by: Deze tests zijn gedraaid op een machine gesponsord door
     name: Bouw
     started_at: Gestart
+    state: 
   datetime:
     distance_in_words:
       hours_exact:
@@ -53,6 +54,7 @@ nl:
       sponsored_by: Deze testen zijn uitgevoerd op een machine gesponsord door
     sponsored_by: 
     started_at: Gestart
+    state: 
   layouts:
     about:
       alpha: Dit is in alfa-stadium.
@@ -82,6 +84,7 @@ nl:
       job: Taak
       log: Logboek
     top:
+      accounts: 
       admin: Administratie
       blog: Blog
       docs: Documentatie
@@ -89,6 +92,7 @@ nl:
       home: Home
       profile: Profiel
       sign_out: Uitloggen
+      signing_in: 
       stats: Statistieken
   locales:
     ca: 
@@ -106,6 +110,7 @@ nl:
     show:
       email: Email adres
       github: Github
+      locale: 
       message:
         config: hoe eigen bouw-opties in te stellen
         your_repos: ! 'Zet de schakelaars hieronder aan om de Travis hook voor uw projecten te activeren en push daarna naar Github<br />
@@ -120,6 +125,7 @@ nl:
       your_repos: Uw repositories
   queue: Wachtrij
   repositories:
+    asciidoc: 
     branch: Tak
     commit: Commit
     duration: Duur
@@ -138,7 +144,6 @@ nl:
       pull_requests: 
     test: 
     textile: Textile
-    asciidoc: AsciiDoc
   repository:
     duration: Duur
   statistics:
diff --git a/locales/pl.yml b/locales/pl.yml
index 506eb870..88257ded 100644
--- a/locales/pl.yml
+++ b/locales/pl.yml
@@ -19,6 +19,7 @@ pl:
       sponsored_by: Te testy zostały uruchomione na maszynie sponsorowanej przez
     name: Build
     started_at: Rozpoczęto
+    state: 
   datetime:
     distance_in_words:
       hours_exact:
@@ -53,6 +54,7 @@ pl:
       sponsored_by: Te testy zostały uruchomione na maszynie sponsorowanej przez
     sponsored_by: Te testy zostały uruchomione na maszynie sponsorowanej przez
     started_at: Rozpoczęto
+    state: 
   layouts:
     about:
       alpha: To wciąż jest wersja alpha.
@@ -82,6 +84,7 @@ pl:
       job: Zadanie
       log: Log
     top:
+      accounts: 
       admin: 
       blog: Blog
       docs: Dokumentacja
@@ -89,6 +92,7 @@ pl:
       home: Start
       profile: Profil
       sign_out: Wyloguj się
+      signing_in: 
       stats: Statystki
   locales:
     ca: 
@@ -106,6 +110,7 @@ pl:
     show:
       email: Email
       github: Github
+      locale: 
       message:
         config: jak skonfigurować niestandardowe opcje builda
         your_repos: ! "  Przesuń suwak poniżej, aby włączyć Travisa, dla twoich projektów, a następnie umieść swój kod na GitHubie.<br />\n Aby testować swój kod przy użyciu wielu wersji Rubiego, zobacz"
@@ -118,6 +123,7 @@ pl:
       your_repos: Twoje repozytoria
   queue: Kolejka
   repositories:
+    asciidoc: 
     branch: Gałąź
     commit: Commit
     duration: Czas trwania
@@ -136,7 +142,6 @@ pl:
       pull_requests: 
     test: 
     textile: Textile
-    asciidoc: AsciiDoc
   repository:
     duration: 
   statistics:
diff --git a/locales/pt-BR.yml b/locales/pt-BR.yml
index e76bf746..ab1ac844 100644
--- a/locales/pt-BR.yml
+++ b/locales/pt-BR.yml
@@ -19,6 +19,7 @@ pt-BR:
       sponsored_by: Esta série de testes foi executada em uma caixa de processos patrocinada por
     name: Build
     started_at: Iniciou em
+    state: 
   datetime:
     distance_in_words:
       hours_exact:
@@ -53,6 +54,7 @@ pt-BR:
       sponsored_by: Esta série de testes foi executada em uma caixa de processos patrocinada por
     sponsored_by: 
     started_at: Iniciou em
+    state: 
   layouts:
     about:
       alpha: Isto é um alpha.
@@ -82,6 +84,7 @@ pt-BR:
       job: Trabalho
       log: Log
     top:
+      accounts: 
       admin: Admin
       blog: Blog
       docs: Documentação
@@ -89,6 +92,7 @@ pt-BR:
       home: Home
       profile: Perfil
       sign_out: Sair
+      signing_in: 
       stats: Estatísticas
   locales:
     ca: 
@@ -106,6 +110,7 @@ pt-BR:
     show:
       email: Email
       github: Github
+      locale: 
       message:
         config: como configurar opções de build
         your_repos: Use os botões abaixo para ligar ou desligar o hook de serviço do Travis para seus projetos, e então, faça um push para o Github.<br />Para testar com múltiplas versões do Ruby, leia
@@ -118,6 +123,7 @@ pt-BR:
       your_repos: Seus Repositórios
   queue: Fila
   repositories:
+    asciidoc: 
     branch: Branch
     commit: Commit
     duration: Duração
@@ -136,7 +142,6 @@ pt-BR:
       pull_requests: 
     test: 
     textile: Textile
-    asciidoc: AsciiDoc
   repository:
     duration: Duração
   statistics:
diff --git a/locales/ru.yml b/locales/ru.yml
index 2dcc8da1..9ff2759a 100644
--- a/locales/ru.yml
+++ b/locales/ru.yml
@@ -19,6 +19,7 @@ ru:
       sponsored_by: Эта серия тестов была запущена на машине, спонсируемой
     name: Билд
     started_at: Начало
+    state: 
   datetime:
     distance_in_words:
       hours_exact:
@@ -59,6 +60,7 @@ ru:
       sponsored_by: Эта серия тестов была запущена на машине спонсируемой
     sponsored_by: 
     started_at: Начало
+    state: 
   layouts:
     about:
       alpha: Это альфа-версия
@@ -88,6 +90,7 @@ ru:
       job: Задача
       log: Журнал
     top:
+      accounts: 
       admin: Управление
       blog: Блог
       docs: Документация
@@ -95,6 +98,7 @@ ru:
       home: Главная
       profile: Профиль
       sign_out: Выход
+      signing_in: 
       stats: Статистика
   locales:
     ca: 
@@ -112,6 +116,7 @@ ru:
     show:
       email: Электронная почта
       github: Github
+      locale: 
       message:
         config: как настроить специальные опции билда
         your_repos: ! 'Используйте переключатели, чтобы включить Travis service hook для вашего проекта, а потом отправьте код на GitHub.<br />
@@ -126,6 +131,7 @@ ru:
       your_repos: Ваши репозитории
   queue: Очередь
   repositories:
+    asciidoc: 
     branch: Ветка
     commit: Коммит
     duration: Длительность
@@ -144,7 +150,6 @@ ru:
       pull_requests: Запросы на Pull
     test: 
     textile: Textile
-    asciidoc: AsciiDoc
   repository:
     duration: Длительность
   statistics:
diff --git a/script/ci b/script/ci
new file mode 100755
index 00000000..866b79cf
--- /dev/null
+++ b/script/ci
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+if [ "$TEST_SUITE" == "spec" ]; then
+  bundle exec rspec spec
+elif [ "$TEST_SUITE" == "ember" ]; then
+  bundle exec rackup -s puma -p 5000 -D
+  sleep 3
+  ./run_jasmine.coffee http://localhost:5000/spec.html
+fi