summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--assets/js/views/sample-add-view.js12
-rw-r--r--index.html6
2 files changed, 11 insertions, 7 deletions
diff --git a/assets/js/views/sample-add-view.js b/assets/js/views/sample-add-view.js
index 7080c84..8be2fb8 100644
--- a/assets/js/views/sample-add-view.js
+++ b/assets/js/views/sample-add-view.js
@@ -1,4 +1,8 @@
ClipPlay.Views.SampleAddView = Marionette.View.extend({
+ // Copied from
+ // http://stackoverflow.com/a/10430654
+ url_matcher: /(http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/,
+
events: {
'click .js-create-sample': 'on_sample_add'
},
@@ -19,12 +23,14 @@ ClipPlay.Views.SampleAddView = Marionette.View.extend({
},
on_sample_add: function() {
- if (this.$input.val()) {
+ var input_value = this.$input.val();
+ if (input_value
+ && this.url_matcher.test(input_value)) {
this.add_sample_to_collection();
-
- this.clear_input();
}
+ this.clear_input();
+
return false;
}
}); \ No newline at end of file
diff --git a/index.html b/index.html
index 411135c..223e5fe 100644
--- a/index.html
+++ b/index.html
@@ -24,10 +24,8 @@
<div role="main">
<div id="add-sample">
- <form action="" method="get">
- <input type="text" class="url-input js-sample-url" placeholder="http://www.youtube.com/watch?v=_JGaQ3g8WU4" />
- <button type="button" class="button green large js-create-sample">+</button>
- </form>
+ <input type="text" class="url-input js-sample-url" placeholder="http://www.youtube.com/watch?v=_JGaQ3g8WU4" />
+ <button type="button" class="button green large js-create-sample">+</button>
</div>
<div id="samples"></div>