summaryrefslogtreecommitdiff
path: root/public/assets/js/lib/views/keywords/newkeyword.js
blob: 9db528a0f063c452c26f08a479e514bd4c0a41a2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
var NewKeywordForm = FormView.extend({

  el: "#new_keyword",

  action: "/api/keyword/new",

  initialize: function(){
    this.__super__.initialize.call(this)
    var $color = this.$('[name=color]')
    Object.keys(COLORS).forEach((color) => {
      var option = document.createElement('option')
      option.value = color
      option.innerHTML = color
      $color.append(option)
    })
    $color.val(choice(Object.keys(COLORS)))
  },

  validate: function(){
    var errors = []
    var keyword = $("[name=keyword]").val().trim()
    if (! keyword || ! keyword.length) {
      errors.push("Please enter a keyword.")
    }
    if (keyword === "new") {
      errors.push("Keyword cannot be called 'new'.")
    }
    return errors.length ? errors : null
  },

  success: function(data){
    window.location.href = "/post/" + data.keyword.keyword
  }
})