Pass a name to widgets

Change-Id: I1ac7096d263f860f5c5c80115bfd07f8cbe40c0f
diff --git a/dev/demo/plugin-server.html b/dev/demo/plugin-server.html
index c032c33..0d4a454 100644
--- a/dev/demo/plugin-server.html
+++ b/dev/demo/plugin-server.html
@@ -16,7 +16,7 @@
         <ol>
           <li class="active">
             <div id="container"></div>
-            <a onclick="KorAP.Plugin.addWidget(document.getElementById('container'), 'http://localhost:3003/demo/plugin-client.html')">Open widget</a>
+            <a onclick="KorAP.Plugin.addWidget(document.getElementById('container'), 'Example', 'http://localhost:3003/demo/plugin-client.html')">Open widget</a>
           </li>
         </ol>
       </div>
diff --git a/dev/js/src/plugin/server.js b/dev/js/src/plugin/server.js
index b0d8f52..d4190fb 100644
--- a/dev/js/src/plugin/server.js
+++ b/dev/js/src/plugin/server.js
@@ -47,7 +47,7 @@
     /**
      * Open a new widget as a child to a certain element
      */
-    addWidget : function (element, src) {
+    addWidget : function (element, name, src) {
 
       // Is it the first widget?
       if (!this._listener) {
@@ -72,7 +72,7 @@
       var id = 'id-' + this._randomID();
 
       // Create a new widget
-      var widget = widgetClass.create(src, id);
+      var widget = widgetClass.create(name, src, id);
 
       // Store the widget based on the identifier
       widgets[id] = widget;
diff --git a/dev/js/src/plugin/widget.js b/dev/js/src/plugin/widget.js
index 1fe417a..338faa3 100644
--- a/dev/js/src/plugin/widget.js
+++ b/dev/js/src/plugin/widget.js
@@ -19,12 +19,13 @@
     /**
      * Create new widget
      */
-    create : function (src, id) {
-      return Object.create(this)._init(src, id);
+    create : function (name, src, id) {
+      return Object.create(this)._init(name, src, id);
     },
 
     // Initialize widget
-    _init : function (src, id) {
+    _init : function (name, src, id) {
+      this.name = name;
       this.src = src;
       this.id = id;
       return this;
@@ -60,6 +61,12 @@
       close.classList.add('close');
       close.setAttribute('title', loc.CLOSE);
 
+      // Add info button on plugin
+      var plugin = ul.addE('li');
+      plugin.addE('span').addT(this.name);
+      plugin.classList.add('plugin');
+      plugin.setAttribute('title', this.name);
+      
       // Close match
       close.addEventListener('click', function (e) {
         e.halt();
diff --git a/dev/scss/main/kwic.scss b/dev/scss/main/kwic.scss
index 6950559..58257b5 100644
--- a/dev/scss/main/kwic.scss
+++ b/dev/scss/main/kwic.scss
@@ -456,6 +456,10 @@
 	      font-family: "FontAwesome";
 	      content: $fa-info;
       }
+      &.plugin::after {
+	      font-family: "FontAwesome";
+	      content: $fa-plugin;        
+      }
     }
   }
 }
diff --git a/dev/scss/util.scss b/dev/scss/util.scss
index fcc4206..16cea3e 100644
--- a/dev/scss/util.scss
+++ b/dev/scss/util.scss
@@ -249,4 +249,5 @@
 // $fa-metadata:    "\f067";
 $fa-metadata:    "\f055";
 $fa-to-query:    "\f102";
-$fa-cut:         "\f0c4";
\ No newline at end of file
+$fa-cut:         "\f0c4";
+$fa-plugin:      "\f1e6";
\ No newline at end of file