anchor.diff:  append templates
     script(id='t-summarydevicerow',type='text/x-handlebars-template')
       tr.accordion-toggle(data-toggle="collapse",data-target="#dev-details-{{ uuid }}")
  -      td: button.btn.btn-xs.btn-primary(onclick='clasp.dash.add_device_tab("{{ uuid }}")')
  +      td: button.btn.btn-xs.btn-primary(onclick='clasp.dash.add_device_tab({uuid: "{{ uuid }}"})')
           span.glyphicon.glyphicon-phone
         td {{ ip }}
         td {{ update }}
  
positive.code:   | templates.devicetab = Handlebars.compile($('#t-devicetab').html());
    | templates.devicetabpane = Handlebars.compile($('#t-devicetabpane').html());
  append scriptOnReady
    | clasp.dash.add_device_tab = function(dev_uuid) {
    |   // Ensure we don't add twice
    |   if ($('#devicetab-'+dev_uuid).length != 0) {
    |     console.log('Refusing to create second tab for device ' + dev_uuid);
    |     $('#navtabs a[href="#devicetab-' + dev_uuid + '"]').flash(120,2)
    |     return;
    |   }
    | 
    |   // Add new tab button
    |   var lastTab = $('#navtabs li:last');
    |   lastTab.after(templates.devicetab({uuid: dev_uuid}));
    |   
    |   // Add new tab content
    |   var target = $('#navcontent div.tab-pane:last');
    |   var html = templates.devicetabpane({uuid: dev_uuid});
    |   target.after(html);
    |   
    |   if (!clasp.metaPressed)
    |     clasp.dash.change_tab('#devicetab-'+dev_uuid);
    | };
  
  
  //- Adds new node tab button and page
  append templates
  
negative.code:       div.row(style="margin-top: 20px")
          // TODO Hide side margins on small screens
          div.col-sm-5(style="margin-left: 10px; margin-right: 10px")
            canvas(id="devicecanvas-{{ uuid }}")
          div.col-sm-1: div.btn-group
            button.btn.btn-default: span.glyphicon.glyphicon-home
            button.btn.btn-default: span.glyphicon.glyphicon-circle-arrow-left
            button.btn.btn-default: span.glyphicon.glyphicon-volume-down
  