diff --git a/dev/js/src/init.js b/dev/js/src/init.js
index 80257e6..3f6d3a5 100644
--- a/dev/js/src/init.js
+++ b/dev/js/src/init.js
@@ -242,7 +242,7 @@
      * Add VC creation on submission.
      */
     var form = document.getElementById('searchform');
-    if (form !== undefined) {
+    if (form !== null) {
       form.addEventListener('submit', function (e) {
 	var qf = document.getElementById('q-field');
 
diff --git a/dev/js/src/tutorial.js b/dev/js/src/tutorial.js
index 5009a17..2979657 100644
--- a/dev/js/src/tutorial.js
+++ b/dev/js/src/tutorial.js
@@ -173,7 +173,9 @@
     setPage : function (obj) {
       var page = obj;
       if (typeof page != 'string') {
-	page = window.location.pathname + window.location.search;
+	var l = this._iframe !== null ? window.frames[0].location : window.location;
+	page = l.pathname + l.search;
+
 	for (var i = 1; i < 5; i++) {
 	  if (obj.nodeName === 'SECTION') {
 	    if (obj.hasAttribute('id'))
@@ -196,7 +198,7 @@
      * Get the current tutorial URL
      */
     getPage : function () {
-      this._session.get('tutpage');
+      return this._session.get('tutpage');
     }
   };
 });
diff --git a/dev/js/src/vc.js b/dev/js/src/vc.js
index b607f2c..0685242 100644
--- a/dev/js/src/vc.js
+++ b/dev/js/src/vc.js
@@ -110,12 +110,9 @@
 	KorAP._vcMatchopMenu = {
 	  'string' : menuClass.create([
 	    ['eq', null],
-	    ['ne', null]
-/*
-  ,
+	    ['ne', null],
 	    ['contains', null],
 	    ['excludes', null]
-*/
 	  ]),
 	  'date' : menuClass.create([
 	    ['eq', null],
@@ -124,9 +121,9 @@
 	  ]),
 	  'regex' : menuClass.create([
 	    ['eq', null],
-	    ['ne', null]/*,
+	    ['ne', null],
 	    ['contains', null],
-	    ['excludes', null]*/
+	    ['excludes', null]
 	  ])
 	};
       };
diff --git a/dev/scss/main/helper.scss b/dev/scss/main/helper.scss
new file mode 100644
index 0000000..ec33901
--- /dev/null
+++ b/dev/scss/main/helper.scss
@@ -0,0 +1,9 @@
+// Make cursor helper
+body.helper, body.helper a {
+  cursor: help !important;
+}
+
+// Make hover links visible
+body.helper *[data-helper]:hover {
+  text-shadow: 0 0 5px $dark-orange !important;
+}
\ No newline at end of file
