Column View Options

Sheet view With Sidebar

by chrischilcoat

HTML

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<script src="//cdn.jsdelivr.net/jquery.sidr/2.2.1/jquery.sidr.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.10.4/jquery-ui.min.js"></script>
<link rel="stylesheet" href="//cdn.datatables.net/1.10.11/css/jquery.dataTables.min.css">
<script src="//cdn.datatables.net/1.10.11/js/jquery.dataTables.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">



<!-- Note: If other data sources exist. -->
<div class="form-horizontal">

  <div class="form-group">
    <label class="control-label col-xs-12" title="Select the data grid widget that contains the data from which you want to populate this graph." aria-label="Select the data grid widget that contains the data from which you want to populate this graph." for="data_choice"
      style="text-align: left;">Data Group</label>
    <div class="col-xs-12 form-control-value">
      <select type="text" id="data_choice" class="form-control input-sm ybx-graph-config ybx-graph-select-field">
        <option value="">-Select-</option>
        <option value="group109838">Defects by User and Rank</option>
        <option value="new">Create a new data group</option>
      </select>
      <div class="input-group hide" id="data-source-name">
        <input type="text" class="form-control input-sm" aria-label="Name your data source" placeholder="Name">
        <span role="button" aria-label="click to cancel new data option" label="Cancel" tabindex="0" class="input-group-addon"><span class="fa fa-close"></span></span>
      </div>
    </div> 
  </div>

  <div class="form-group hide temp-group-options">
    <label class="control-label col-xs-12...

CSS

body {
  padding: 20px;
}

JavaScript

var $divOptions = $('.temp-group-options'),
    $selectList = $('.ybx-graph-config'),
    $inputDataSourceName = $('#data-source-name'),
    $closeNewGroup = $inputDataSourceName.find('.input-group-addon'),
    $showOptions = function() {
      $selectList.addClass('hide');
      $inputDataSourceName.removeClass('hide').find('.form-control').focus();
      $divOptions.removeClass('hide');
    },
    $hideOptions = function() {
      $selectList.removeClass('hide').val( $(".ybx-graph-config option:first").val() );
      $inputDataSourceName.addClass('hide');
      $divOptions.addClass('hide');
    };
    
$selectList.change(function() {
  var $x = $( this ).val();
  switch ( $x ) {
    default: 

      break;
    case 'new':
      $showOptions();
      break; 
    case 'group109838':

      break;
  }
});

$closeNewGroup.on('click', function(){
  $hideOptions();
});