Decommissions legacy play views

This commit is contained in:
Seyi Adebajo 2017-03-29 00:12:09 -07:00 committed by Mars Lan
parent d2a6ae9564
commit de3df3c7f5
8 changed files with 0 additions and 5047 deletions

View File

@ -1,712 +0,0 @@
@(user: String, isInternal:Boolean, piwikSiteId: Integer)
@main(user, "", isInternal, piwikSiteId) {
<div id="content">
<script type="text/x-handlebars" id="dashboard">
<div id="schemaView" class="container-fluid">
<div class="col-xs-12">
<div class="row">
<div class="col-xs-12">
<h3>Metadata Dashboard</h3>
</div>
</div>
<div class="row">
<div class="col-xs-12 well well-sm">
<ul class="breadcrumbs">
{{#each breadcrumbs as |crumb|}}
<li>
<a href={{crumb.urn}} title={{crumb.title }}>
{{ crumb.title }}
</a>
</li>
{{/each}}
</ul>
</div>
</div>
{{#if platforms}}
<div class="row platform-filter">
<span class="col-xs-1">Platforms:</span>
{{#each platforms as |platform|}}
{{#link-to "user" (query-params platform=platform) class="btn btn-default"}}
{{capitalize platform}}
{{/link-to}}
{{/each}}
</div>
{{/if}}
<ul id="dashboardtabs" class="nav nav-tabs">
<li id="ownershippage">
<a id="ownershiplink" data-toggle="tab" href="#ownershiptab">Ownership</a>
</li>
<li id="descriptionpage">
<a id="descriptionlink" data-toggle="tab" href="#descriptiontab">Description</a>
</li>
<li id="idpcpage">
<a id="idpctablink" data-toggle="tab" href="#idpctab">IDPC Compliance</a>
</li>
<li id="confidentialpage">
<a id="confidentiallink" data-toggle="tab" href="#confidentialtab">Confidential Fields</a>
</li>
</ul>
<div class="tab-content">
<div id="ownershiptab" class="tab-pane">
<div class="row">
<div class="col-xs-12 col-md-4">
<h4>Dataset Ownership for {{ currentOwnershipUser.displayName }}</h4>
<table class="table table-bordered table-condensed table-hover">
<thead>
<tr>
<th class="text-center">Name</th>
<th class="text-center">Completion</th>
<th class="text-center">Total Datasets</th>
<th class="text-center">Confirmed Datasets</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<img src={{currentOwnershipUser.iconUrl}} title={{currentOwnershipUser.displayName}}
width="25px"
height="25px"/>
<a href='metadata#/dashboard/{{currentOwnershipUser.userName}}' title={{currentOwnershipUser.displayName}}>
{{ currentOwnershipUser.displayName }}
</a>
</td>
<td class="text-center">{{ currentOwnershipUser.completed }}%</td>
<td class="text-center">{{ currentOwnershipUser.potentialDatasets }}</td>
<td class="text-center">{{ currentOwnershipUser.confirmed }}</td>
</tr>
</tbody>
</table>
<h4>Ticket Roll-Up for Individual User</h4>
<table class="table table-bordered table-condensed table-hover">
<thead>
<tr>
<th class="text-center">Name</th>
<th class="text-center">Completion</th>
<th class="text-center">Total Datasets</th>
<th class="text-center">Confirmed Datasets</th>
</tr>
</thead>
<tbody>
{{#if userNoOwnershipMembers}}
<tr>
<td colspan="5">
<div class="row">
<div class="col-xs-12 text-center">
This user has no one that reports to them.
</div>
</div>
</td>
</tr>
{{else}}
{{#each ownershipMembers as |user|}}
<tr>
<td>
<img src={{user.iconUrl}} title={{user.displayName}}
width="25px"
height="25px"/>
<a href='metadata#/dashboard/{{user.userName}}' title={{user.displayName}}>
{{ user.displayName }}
</a>
</td>
<td class="text-center">{{ user.completed }}%</td>
<td class="text-center">{{ user.potentialDatasets }}</td>
<td class="text-center">{{ user.confirmed }}</td>
</tr>
{{/each}}
{{/if}}
</tbody>
</table>
</div>
<div class="col-xs-12 col-md-8">
<div class="row">
<div class="col-xs-9">
<h4>List of Datasets</h4>
</div>
<div class="col-xs-3 headerBarFilter">
<form class="form-inline">
<select id="ownerShowOption" class="form-control" {{action "ownerOptionChanged" on="change"}}>
{{#each ownershipOptions as |option index|}}
{{#if index}}
<option value={{option.option}}>{{option.value}}
</option>
{{else}}
<option selected value={{option.option}}>{{option.value}}
</option>
{{/if}}
{{/each}}
</select>
</form>
</div>
</div>
<div class="row">
<div id="ownerPie" class="col-xs-5"></div>
</div>
<div class="search-pagination">
<ul class="pager">
{{#unless ownerFirst}}
<li class="previous">
<a {{ action "prevOwnerPage" }}>
&larr; Prev
</a>
</li>
{{/unless}}
<li>
{{ ownershipDatasets.count }} datasets - page {{ ownershipDatasets.page }} of {{ ownershipDatasets.totalPages }}
</li>
{{#unless ownerLast}}
<li class="next">
<a {{ action "nextOwnerPage" }}>
Next &rarr;
</a>
</li>
{{/unless}}
</ul>
</div>
<table class="table table-bordered table-condensed table-hover table-striped">
<thead>
<tr>
<th class="text-center">Dataset</th>
<th class="text-center">Owners</th>
<th class="text-center">Confirmed Owners</th>
</tr>
</thead>
<tbody>
{{#if ownerInProgress}}
<tr>
<td colspan="8" class="text-center">
<div class="row">
<div class="col-xs-12">
<i class="fa fa-spinner spinning fa-4x">
</i>
</div>
</div>
</td>
</tr>
{{else}}
{{#if userNoOwnershipFields}}
<tr>
<td colspan="8">
<div class="row">
<div class="col-xs-12 text-center">
This user has no datasets with confirmed owners.
</div>
</div>
</td>
</tr>
{{else}}
{{#each ownershipDatasets.datasets as |dataset|}}
<tr>
<td>
<a href="/#/datasets/{{dataset.datasetId}}">
{{ dataset.datasetName }}
</a>
</td>
<td class="text-center">{{ dataset.ownerId }}</td>
<td class="text-center">{{ dataset.confirmedOwnerId }}</td>
</tr>
{{/each}}
{{/if}}
{{/if}}
</tbody>
</table>
</div>
</div>
</div>
<div id="descriptiontab" class="tab-pane">
<div class="row">
<div class="col-xs-12 col-md-4">
<h4>Dataset Description for {{ currentDescriptionUser.displayName }}</h4>
<table class="table table-bordered table-condensed table-hover">
<thead>
<tr>
<th class="text-center">Name</th>
<th class="text-center">Completion</th>
<th class="text-center">Total Datasets</th>
<th class="text-center">Has Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<img src={{currentDescriptionUser.iconUrl}} title={{currentDescriptionUser.displayName}}
width="25px"
height="25px"/>
<a href='metadata#/dashboard/{{currentDescriptionUser.userName}}' title={{currentDescriptionUser.displayName}}>
{{ currentDescriptionUser.displayName }}
</a>
</td>
<td class="text-center">{{ currentDescriptionUser.completed }}%</td>
<td class="text-center">{{ currentDescriptionUser.potentialDatasets }}</td>
<td class="text-center">{{ currentDescriptionUser.confirmed }}</td>
</tr>
</tbody>
</table>
<h4>Ticket Roll-Up for Individual User</h4>
<table class="table table-bordered table-condensed table-hover">
<thead>
<tr>
<th class="text-center">Name</th>
<th class="text-center">Completion</th>
<th class="text-center">Total Datasets</th>
<th class="text-center">Has Description</th>
</tr>
</thead>
<tbody>
{{#if userNoDescMembers}}
<tr>
<td colspan="5">
<div class="row">
<div class="col-xs-12 text-center">
This user has no one that reports to them.
</div>
</div>
</td>
</tr>
{{else}}
{{#each descriptionOwners as |user|}}
<tr>
<td>
<img src={{user.iconUrl}} title={{user.displayName}}
width="25px"
height="25px"/>
<a href='metadata#/dashboard/{{user.userName}}' title={{user.displayName}}>
{{ user.displayName }}
</a>
</td>
<td class="text-center">{{ user.completed }}%</td>
<td class="text-center">{{ user.potentialDatasets }}</td>
<td class="text-center">{{ user.confirmed }}</td>
</tr>
{{/each}}
{{/if}}
</tbody>
</table>
</div>
<div class="col-xs-12 col-md-8">
<div class="row">
<div class="col-xs-9">
<h4>List of Datasets</h4>
</div>
<div class="col-xs-3 headerBarFilter">
<form class="form-inline">
<select id="descShowOption" class="form-control" {{action "optionChanged" on="change"}}>
{{#each descriptionOptions as |option index|}}
{{#if index}}
<option value={{option.option}}>{{option.value}}
</option>
{{else}}
<option selected value={{option.option}}>{{option.value}}
</option>
{{/if}}
{{/each}}
</select>
</form>
</div>
</div>
<div class="row">
<div id="pie" class="col-xs-5"></div>
<div id="barchart" class="col-xs-7"></div>
</div>
<div class="search-pagination">
<ul class="pager">
{{#unless descFirst}}
<li class="previous">
<a {{ action "prevDescPage" }}>
&larr; Prev
</a>
</li>
{{/unless}}
<li>
{{ descriptionDatasets.count }} datasets {{ descriptionDatasets.description }} - page {{ descriptionDatasets.page }} of {{ descriptionDatasets.totalPages }}
</li>
{{#unless descLast}}
<li class="next">
<a {{ action "nextDescPage" }}>
Next &rarr;
</a>
</li>
{{/unless}}
</ul>
</div>
<table class="table table-bordered table-condensed table-hover table-striped">
<thead>
<tr>
<th class="text-center">Dataset</th>
{{#if descriptionDatasets.isDatasetLevel}}
<th class="text-center">Description</th>
{{else}}
<th class="text-center">Fields With Description</th>
{{/if}}
<th class="text-center">Owners</th>
</tr>
</thead>
<tbody>
{{#if descInProgress}}
<tr>
<td colspan="8" class="text-center">
<div class="row">
<div class="col-xs-12">
<i class="fa fa-spinner spinning fa-4x">
</i>
</div>
</div>
</td>
</tr>
{{else}}
{{#if userNoDescriptionFields}}
<tr>
<td colspan="8">
<div class="row">
<div class="col-xs-12 text-center">
This user has no datasets with confidential fields.
</div>
</div>
</td>
</tr>
{{else}}
{{#each descriptionDatasets.datasets as |dataset|}}
<tr>
<td>
<a href="/#/datasets/{{dataset.datasetId}}">
{{ dataset.datasetName }}
</a>
</td>
<td class="text-center" style="word-break: break-all;">
{{ dataset.fields }}
</td>
<td class="text-center">{{ dataset.ownerId }}</td>
</tr>
{{/each}}
{{/if}}
{{/if}}
</tbody>
</table>
</div>
</div>
</div>
<div id="idpctab" class="tab-pane">
<div class="row">
<div class="col-xs-12 col-md-4">
<h4>IDPC Compliance for {{ currentComplianceUser.displayName }}</h4>
<table class="table table-bordered table-condensed table-hover">
<thead>
<tr>
<th class="text-center">Name</th>
<th class="text-center">Completion</th>
<th class="text-center">Total Potential</th>
<th class="text-center">Has Purge Option</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<img src={{currentComplianceUser.iconUrl}} title={{currentComplianceUser.displayName}}
width="25px"
height="25px"/>
<a href='metadata#/dashboard/{{currentComplianceUser.userName}}' title={{currentComplianceUser.displayName}}>
{{ currentComplianceUser.displayName }}
</a>
</td>
<td class="text-center">{{ currentComplianceUser.completed }}%</td>
<td class="text-center">{{ currentComplianceUser.potentialDatasets }}</td>
<td class="text-center">{{ currentComplianceUser.confirmed }}</td>
</tr>
</tbody>
</table>
<h4>Ticket Roll-Up for Individual User</h4>
<table class="table table-bordered table-condensed table-hover">
<thead>
<tr>
<th class="text-center">Name</th>
<th class="text-center">Completion</th>
<th class="text-center">Total Potential</th>
<th class="text-center">Has Purge Option</th>
</tr>
</thead>
<tbody>
{{#if userNoIdpcMembers}}
<tr>
<td colspan="5">
<div class="row">
<div class="col-xs-12 text-center">
This user has no one that reports to them.
</div>
</div>
</td>
</tr>
{{else}}
{{#each complianceOwners as |user|}}
<tr>
<td>
<img src={{user.iconUrl}} title={{user.displayName}}
width="25px"
height="25px"/>
<a href='metadata#/dashboard/{{user.userName}}' title={{user.displayName}}>
{{ user.displayName }}
</a>
</td>
<td class="text-center">{{ user.completed }}%</td>
<td class="text-center">{{ user.potentialDatasets }}</td>
<td class="text-center">{{ user.confirmed }}</td>
</tr>
{{/each}}
{{/if}}
</tbody>
</table>
</div>
<div class="col-xs-12 col-md-8">
<div class="row">
<div class="col-xs-9">
<h4>List of Datasets</h4>
</div>
<div class="col-xs-3 headerBarFilter">
<form class="form-inline">
<select id="idpcShowOption" class="form-control" {{action "idpcOptionChanged" on="change"}}>
{{#each idpcOptions as |option index|}}
{{#if index}}
<option value={{option.option}}>{{option.value}}
</option>
{{else}}
<option selected value={{option.option}}>{{option.value}}
</option>
{{/if}}
{{/each}}
</select>
</form>
</div>
</div>
<div class="search-pagination">
<ul class="pager">
{{#unless idpcFirst}}
<li class="previous">
<a {{ action "prevIdpcPage" }}>
&larr; Prev
</a>
</li>
{{/unless}}
<li>
{{ complianceDatasets.count }} datasets - page {{ complianceDatasets.page }} of {{ complianceDatasets.totalPages }}
</li>
{{#unless idpcLast}}
<li class="next">
<a {{ action "nextIdpcPage" }}>
Next &rarr;
</a>
</li>
{{/unless}}
</ul>
</div>
<table class="table table-bordered table-condensed table-hover table-striped">
<thead>
<tr>
<th class="text-center">Dataset</th>
<th class="text-center">Purge Option</th>
<th class="text-center">Owners</th>
</tr>
</thead>
<tbody>
{{#if idpcInProgress}}
<tr>
<td colspan="8" class="text-center">
<div class="row">
<div class="col-xs-12">
<i class="fa fa-spinner spinning fa-4x">
</i>
</div>
</div>
</td>
</tr>
{{else}}
{{#if userNoComplianceFields}}
<tr>
<td colspan="8">
<div class="row">
<div class="col-xs-12 text-center">
This user has no datasets with IDPC compliance information.
</div>
</div>
</td>
</tr>
{{else}}
{{#each complianceDatasets.datasets as |dataset|}}
<tr>
<td>
<a href="/#/datasets/{{dataset.datasetId}}">
{{ dataset.datasetName }}
</a>
</td>
<td class="text-center">
{{ dataset.fields }}
</td>
<td class="text-center">{{ dataset.ownerId }}</td>
</tr>
{{/each}}
{{/if}}
{{/if}}
</tbody>
</table>
</div>
</div>
</div>
<div id="confidentialtab" class="tab-pane">
<div class="row">
<div class="col-xs-12 col-md-4">
<h4>Confidential Fields for {{ currentConfidentialFieldsUser.displayName }}</h4>
<table class="table table-bordered table-condensed table-hover">
<thead>
<tr>
<th class="text-center">Name</th>
<th class="text-center">Completion</th>
<th class="text-center">Total Potential</th>
<th class="text-center">Confirmed</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<img src={{currentConfidentialFieldsUser.iconUrl}} title={{currentConfidentialFieldsUser.displayName}}
width="25px"
height="25px"/>
<a href='metadata#/dashboard/{{currentConfidentialFieldsUser.userName}}' title={{currentConfidentialFieldsUser.displayName}}>
{{ currentConfidentialFieldsUser.displayName }}
</a>
</td>
<td class="text-center">{{ currentConfidentialFieldsUser.completed }}%</td>
<td class="text-center">{{ currentConfidentialFieldsUser.potentialDatasets }}</td>
<td class="text-center">{{ currentConfidentialFieldsUser.confirmed }}</td>
</tr>
</tbody>
</table>
<h4>Ticket Roll-Up for Individual User</h4>
<table class="table table-bordered table-condensed table-hover">
<thead>
<tr>
<th class="text-center">Name</th>
<th class="text-center">Completion</th>
<th class="text-center">Total Potential</th>
<th class="text-center">Confirmed</th>
</tr>
</thead>
<tbody>
{{#if userNoCfMembers}}
<tr>
<td colspan="5">
<div class="row">
<div class="col-xs-12 text-center">
This user has no one that reports to them.
</div>
</div>
</td>
</tr>
{{else}}
{{#each confidentialFieldsOwners as |user|}}
<tr>
<td>
<img src={{user.iconUrl}} title={{user.displayName}}
width="25px"
height="25px"/>
<a href='metadata#/dashboard/{{user.userName}}' title={{user.displayName}}>
{{ user.displayName }}
</a>
</td>
<td class="text-center">{{ user.completed }}%</td>
<td class="text-center">{{ user.potentialDatasets }}</td>
<td class="text-center">{{ user.confirmed }}</td>
</tr>
{{/each}}
{{/if}}
</tbody>
</table>
</div>
<div class="col-xs-12 col-md-8">
<div class="row">
<div class="col-xs-9">
<h4>List of Potential Datasets</h4>
</div>
</div>
<div class="search-pagination">
<ul class="pager">
{{#unless cfFirst}}
<li class="previous">
<a {{ action "prevCfPage" }}>
&larr; Prev
</a>
</li>
{{/unless}}
<li>
{{ confidentialFieldsDatasets.count }} datasets - page {{ confidentialFieldsDatasets.page }} of {{ confidentialFieldsDatasets.totalPages }}
</li>
{{#unless cfLast}}
<li class="next">
<a {{ action "nextCfPage" }}>
Next &rarr;
</a>
</li>
{{/unless}}
</ul>
</div>
<table class="table table-bordered table-condensed table-hover table-striped">
<thead>
<tr>
<th class="text-center">Dataset</th>
<th class="text-center">Fields</th>
<th class="text-center">Owners</th>
</tr>
</thead>
<tbody>
{{#if cfInProgress}}
<tr>
<td colspan="8" class="text-center">
<div class="row">
<div class="col-xs-12">
<i class="fa fa-spinner spinning fa-4x">
</i>
</div>
</div>
</td>
</tr>
{{else}}
{{#if userNoConfidentialFields}}
<tr>
<td colspan="8">
<div class="row">
<div class="col-xs-12 text-center">
This user has no datasets with confidential fields.
</div>
</div>
</td>
</tr>
{{else}}
{{#each confidentialFieldsDatasets.datasets as |dataset|}}
<tr>
<td>
<a href="/#/datasets/{{dataset.datasetId}}">
{{ dataset.datasetName }}
</a>
</td>
<td class="text-center">
{{ dataset.fields }}
</td>
<td class="text-center">{{ dataset.ownerId }}</td>
</tr>
{{/each}}
{{/if}}
{{/if}}
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
</script>
</div>
<script src="@routes.Assets.at("vendors/ember-2.6.2/ember-template-compiler.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("vendors/ember-2.6.2/ember.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("vendors/dagre-d3/lib/d3.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("vendors/d3pie-0.18/d3pie-customized.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("javascripts/dashboard.js")" type="text/javascript"></script>
}

View File

@ -1,387 +0,0 @@
@(user: String, isInternal:Boolean, piwikSiteId: Integer)
@main(user, "", isInternal, piwikSiteId) {
<div id="content">
<script type="text/x-handlebars" id="jira">
<div id="schemaView" class="container-fluid">
<div class="col-xs-12">
<div class="row">
<div class="col-xs-12">
<h3>Jira - Closed Account Auto Purge</h3>
</div>
</div>
<div class="row">
<div class="col-xs-12 well well-sm">
<ul class="breadcrumbs">
{{#each breadcrumbs as |crumb|}}
<li>
<a href={{crumb.urn}} title={{crumb.title }}>
{{ crumb.title }}
</a>
</li>
{{/each}}
</ul>
</div>
</div>
<ul id="jiratabs" class="nav nav-tabs">
<li id="headlesspage">
<a id="headlesstablink" data-toggle="tab" href="#headlesstab">Headless</a>
</li>
<li id="userpage">
<a id="usertablink" data-toggle="tab" href="#usertab">User</a>
</li>
</ul>
<div class="tab-content">
<div id="headlesstab" class="tab-pane">
<div class="row">
<div class="col-xs-12 col-md-4">
<h4>Tickets for {{ selectedUser.displayName }}</h4>
<table class="table table-bordered table-condensed table-hover">
<thead>
<tr>
<th class="text-center">Name</th>
<th class="text-center">Completion</th>
<th class="text-center">Total</th>
<th class="text-center">Open</th>
<th class="text-center">Closed</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<img src={{selectedUser.iconUrl}} title={{selectedUser.displayName }}
width="25px"
height="25px"/>
<a href={{selectedUser.url}} title={{selectedUser.displayName}}>
{{ selectedUser.displayName }}
</a>
</td>
<td class="text-center">{{ selectedUser.headlessTicketsCompletion }}%</td>
<td class="text-center">{{ selectedUser.totalHeadlessTickets }}</td>
<td class="text-center">{{ selectedUser.openedHeadlessTickets }}</td>
<td class="text-center">{{ selectedUser.closedHeadlessTickets }}</td>
</tr>
</tbody>
</table>
<h4>Tickets Roll-Up for Headless Group</h4>
<table class="table table-bordered table-condensed table-hover">
<thead>
<tr>
<th class="text-center">Name</th>
<th class="text-center">Completion</th>
<th class="text-center">Total</th>
<th class="text-center">Open</th>
<th class="text-center">Closed</th>
</tr>
</thead>
<tbody>
{{#if membersInProgress}}
<tr>
<td colspan="5" class="text-center">
<div class="row">
<div class="col-xs-12">
<i class="fa fa-spinner spinning fa-4x">
</i>
</div>
</div>
</td>
</tr>
{{else}}
{{#if userNoMembers}}
<tr>
<td colspan="5">
<div class="row">
<div class="col-xs-12 text-center">
This user has no one that reports to them.
</div>
</div>
</td>
</tr>
{{else}}
{{#each members as |user|}}
<tr>
<td>
<img src={{user.iconUrl}} title={{user.displayName}}
width="25px"
height="25px"/>
<a href={{user.url}} title={{user.displayName}}>
{{ user.displayName }}
</a>
</td>
<td class="text-center">{{ user.headlessTicketsCompletion }}%</td>
<td class="text-center">{{ user.totalHeadlessTickets }}</td>
<td class="text-center">{{ user.openedHeadlessTickets }}</td>
<td class="text-center">{{ user.closedHeadlessTickets }}</td>
</tr>
{{/each}}
{{/if}}
{{/if}}
</tbody>
</table>
</div>
<div class="col-xs-12 col-md-8">
<div class="row">
<div class="col-xs-9">
<h4>List of Headless Group Tickets</h4>
</div>
<div class="col-xs-3 headerBarFilter">
<form class="form-inline">
<div class="form-group">
<label>Sort Options</label>
<select class="form-control">
{{#each sortOptions as |option|}}
<option value={{option}}>{{option}}
</option>
{{/each}}
</select>
</div>
</form>
</div>
</div>
<table class="table table-bordered table-condensed table-hover table-striped">
<thead>
<tr>
<th class="text-center">Assignee</th>
<th class="text-center">Ticket</th>
<th class="text-center">Status</th>
<th class="text-center">HDFS Name</th>
<th class="text-center">Directory Path</th>
<th class="text-center">Total Size (MB)</th>
<th class="text-center"># of Files</th>
<th class="text-center">Last Update Time</th>
</tr>
</thead>
<tbody>
{{#if ticketsInProgress}}
<tr>
<td colspan="8" class="text-center">
<div class="row">
<div class="col-xs-12">
<i class="fa fa-spinner spinning fa-4x">
</i>
</div>
</div>
</td>
</tr>
{{else}}
{{#if headlessNoTickets}}
<tr>
<td colspan="8">
<div class="row">
<div class="col-xs-12 text-center">
This user has no tickets.
</div>
</div>
</td>
</tr>
{{else}}
{{#each headlessTickets as |ticket|}}
<tr>
<td>
<img src={{ticket.assigneeIconUrl}} title={{ticket.assigneeDisplayName}}
width="25px"
height="25px"/>
{{ ticket.assigneeDisplayName }}
</td>
<td class="text-center">
<a href={{ticket.jiraKeyUrl}} title={{ticket.ticketKey}} target="_blank">
{{ ticket.ticketKey }}
</a>
</td>
<td class="text-center">{{ ticket.ticketStatus }}</td>
<td class="text-center">{{ ticket.ticketHdfsName }}</td>
<td class="text-left">{{ ticket.ticketDirectoryPath }}</td>
<td class="text-right">{{ ticket.ticketTotalSize }}</td>
<td class="text-right">{{ ticket.ticketNumOfFiles}}</td>
<td class="text-center">{{ ticket.jiraLastUpdatedTime }}</td>
</tr>
{{/each}}
{{/if}}
{{/if}}
</tbody>
</table>
</div>
</div>
</div>
<div id="usertab" class="tab-pane">
<div class="row">
<div class="col-xs-12 col-md-4">
<h4>Tickets for {{ selectedUser.displayName }}</h4>
<table class="table table-bordered table-condensed table-hover">
<thead>
<tr>
<th class="text-center">Name</th>
<th class="text-center">Completion</th>
<th class="text-center">Total</th>
<th class="text-center">Open</th>
<th class="text-center">Closed</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<img src={{selectedUser.iconUrl}} title={{selectedUser.displayName}}
width="25px"
height="25px"/>
<a href={{selectedUser.orgHierarchyUrl}} title={{selectedUser.displayName}}>
{{ selectedUser.displayName }}
</a>
</td>
<td class="text-center">{{ selectedUser.userCompletion }}%</td>
<td class="text-center">{{ selectedUser.userTotalTickets }}</td>
<td class="text-center">{{ selectedUser.userOpenTickets }}</td>
<td class="text-center">{{ selectedUser.userClosedTickets }}</td>
</tr>
</tbody>
</table>
<h4>Ticket Roll-Up for Individual User</h4>
<table class="table table-bordered table-condensed table-hover">
<thead>
<tr>
<th class="text-center">Name</th>
<th class="text-center">Completion</th>
<th class="text-center">Total</th>
<th class="text-center">Open</th>
<th class="text-center">Closed</th>
</tr>
</thead>
<tbody>
{{#if membersInProgress}}
<tr>
<td colspan="5" class="text-center">
<div class="row">
<div class="col-xs-12">
<i class="fa fa-spinner spinning fa-4x">
</i>
</div>
</div>
</td>
</tr>
{{else}}
{{#if userNoMembers}}
<tr>
<td colspan="5">
<div class="row">
<div class="col-xs-12 text-center">
This user has no one that reports to them.
</div>
</div>
</td>
</tr>
{{else}}
{{#each members as |user|}}
<tr>
<td>
<img src={{user.iconUrl}} title={{user.displayName}}
width="25px"
height="25px"/>
<a href={{user.orgHierarchyUrl}} title={{user.displayName}}>
{{ user.displayName }}
</a>
</td>
<td class="text-center">{{ user.userCompletion }}%</td>
<td class="text-center">{{ user.userTotalTickets }}</td>
<td class="text-center">{{ user.userOpenTickets }}</td>
<td class="text-center">{{ user.userClosedTickets }}</td>
</tr>
{{/each}}
{{/if}}
{{/if}}
</tbody>
</table>
</div>
<div class="col-xs-12 col-md-8">
<div class="row">
<div class="col-xs-9">
<h4>List of User Tickets</h4>
</div>
<div class="col-xs-3 headerBarFilter">
<form class="form-inline">
<div class="form-group">
<label>Sort Options</label>
<select class="form-control">
{{#each sortOptions as |option|}}
<option value={{option }}>{{option}}
</option>
{{/each}}
</select>
</div>
</form>
</div>
</div>
<table class="table table-bordered table-condensed table-hover table-striped">
<thead>
<tr>
<th class="text-center">Assignee</th>
<th class="text-center">Ticket</th>
<th class="text-center">Status</th>
<th class="text-center">HDFS Name</th>
<th class="text-center">Directory Path</th>
<th class="text-center">Total Size (Mb)</th>
<th class="text-center"># of Files</th>
<th class="text-center">Last Update Time</th>
</tr>
</thead>
<tbody>
{{#if ticketsInProgress}}
<tr>
<td colspan="8" class="text-center">
<div class="row">
<div class="col-xs-12">
<i class="fa fa-spinner spinning fa-4x">
</i>
</div>
</div>
</td>
</tr>
{{else}}
{{#if userNoTickets}}
<tr>
<td colspan="8">
<div class="row">
<div class="col-xs-12 text-center">
This user has no tickets.
</div>
</div>
</td>
</tr>
{{else}}
{{#each userTickets as |ticket|}}
<tr>
<td>
<img src={{ticket.currentAssigneeIconUrl}}
title={{ticket.currentAssigneeDisplayName}}
width="25px"
height="25px"/>
{{ ticket.assigneeDisplayName }}
</td>
<td class="text-center">
<a href={{ticket.jiraKeyUrl}} title={{ticket.jiraKey}} target="_blank">
{{ ticket.ticketKey }}
</a>
</td>
<td class="text-center">{{ ticket.ticketStatus }}</td>
<td class="text-center">{{ ticket.ticketHdfsName }}</td>
<td class="text-left">{{ ticket.ticketDirectoryPath }}</td>
<td class="text-right">{{ ticket.ticketTotalSize }}</td>
<td class="text-right">{{ ticket.ticketNumOfFiles}}</td>
<td class="text-center">{{ ticket.jiraLastUpdatedTime }}</td>
</tr>
{{/each}}
{{/if}}
{{/if}}
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
</script>
</div>
<script src="@routes.Assets.at("vendors/ember-2.6.2/ember-template-compiler.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("vendors/ember-2.6.2/ember.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("javascripts/idpc.js")" type="text/javascript"></script>
}

File diff suppressed because it is too large Load Diff

View File

@ -1,65 +0,0 @@
@(user: String, isInternal:Boolean, lineageType: String, lineageID: Integer, application: String, project: String, flow:String, piwikSiteId: Integer)
@main(user, "", isInternal, piwikSiteId) {
<link rel="stylesheet" media="screen" href="@routes.Assets.at("stylesheets/lineage.css")">
<link rel="stylesheet" media="screen" href="@routes.Assets.at("stylesheets/lineage-search.css")">
<link rel="stylesheet" media="screen" href="@routes.Assets.at("vendors/dagre-d3/css/tipsy.css")">
<div id="mainSplitter" ng-app="myModule" ng-controller="treeController">
<div id="graphSplitter" class="splitter-panel">
<div style="height:100%; width:100%;position:relative;min-height:800px; overflow:hidden;">
@if(lineageType != "chains" && lineageType != "azkaban" && lineageType != "appworx"){
<button id="uplevelbtn" title="next level of upstream" style="background-color: transparent;opacity: 0.5;" class="btn pull-left"><i class="fa fa-caret-square-o-left"></i></button>
<button id="downlevelbtn" title="next level of downstream" style="background-color: transparent;opacity: 0.5;" class="btn pull-left"><i class="fa fa-caret-square-o-right"></i></button>
}
<button id="chainselectorbtn" title="select the chains" ng-click="toggleChains()" style="display:none;background-color: transparent;opacity: 0.5;" class="btn pull-left"><i class="fa fa-random"></i></button>
<button id="rotationgraphbtn" title="rotate the graph" style="background-color: transparent;opacity: 0.5;" class="btn pull-left"><i class="fa fa-repeat"></i></button>
<h4 id="title"></h4>
<input id="lineageType" style="display: none;" value=@lineageType>
<input id="lineageID" style="display: none;" value=@lineageID>
<input id="application" style="display: none;" value=@application>
<input id="project" style="display: none;" value=@project>
<input id="flow" style="display: none;" value=@flow>
<div id="controls" class="search">
<input id="searchfield" title="Search" tabindex="1" class="search-field" type="text">
<i class="search-icon fa fa-search"></i>
<i id="search-clear" title="Clear search" tabindex="1" class="search-clear"><span class="description">Clear search</span></i>
<i title="Submit search" tabindex="1" style="display:none;" class="search-submit fa fa-arrow-right"><span class="description">Submit search</span></i>
</div>
<div id="loading" style="position:absolute;top:12px;left:500px;display: none;"><i class="fa fa-spinner spinning fa-4x"></i></div>
@if(lineageType == "chains") {
<div id='chainComboBox'></div>
}
<div id="canvas" tabindex="0" style="width: 100%;">
<svg id="svg-canvas" width="1024"></svg>
</div>
</div>
</div>
<div id="nodeInfoSplitter">
<ul id="nodeInfoTab" class="nav nav-tabs">
<li id="datatabpage"><a id="datatablink" data-toggle="tab" href="#datanodestab">Data</a></li>
<li id="jobtabpage"><a id="jobtablink" data-toggle="tab" href="#jobnodestab">Job</a></li>
</ul>
<div class="tab-content">
<div id="datanodestab" class="tab-pane">
<table id="lineagedatatable" class="table table-bordered">
</table>
</div>
<div id="jobnodestab" class="tab-pane">
<table id="lineagejobtable" class="table table-bordered">
</table>
</div>
</div>
</div>
</div>
<script src="@routes.Assets.at("vendors/dagre-d3/lib/lodash.min.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("vendors/dagre-d3/lib/d3.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("vendors/dagre-d3/js/utility.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("vendors/dagre-d3/js/dagre-d3.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("vendors/dagre-d3/js/tipsy.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("vendors/dagre-d3/js/jquery.contextMenu.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("javascripts/search.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("javascripts/lineage.js")" type="text/javascript"></script>
}

View File

@ -1,17 +0,0 @@
@(csrfToken: String, isInternal:Boolean, piwikSiteId: Integer)
@main(null, csrfToken, isInternal, piwikSiteId) {
@if(play.mvc.Controller.flash().containsKey("error")) {
<div class="alert alert-danger alert-dismissible" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
@play.mvc.Controller.flash().get("error")
</div>
}
@if(play.mvc.Controller.flash().containsKey("success")) {
<div class="alert alert-success alert-dismissible" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
@play.mvc.Controller.flash().get("success")
</div>
}
<p style="text-align:center;"><img style="opacity:0.75;" src ="@routes.Assets.at("images/login_screen_bckgrd.png")"></p>
}

File diff suppressed because it is too large Load Diff

View File

@ -1,118 +0,0 @@
@(user: String, isInternal:Boolean, piwikSiteId: Integer)
@main(user, "", isInternal, piwikSiteId) {
<link rel="stylesheet" media="screen" href="@routes.Assets.at("vendors/jsondiffpatch-master/html.css")">
<link rel="stylesheet" media="screen" href="@routes.Assets.at("vendors/jsondiffpatch-master/annotated.css")">
<link rel="stylesheet" media="screen" href="@routes.Assets.at("stylesheets/scriptFinder.css")">
<div id="content">
<div class="row">
<div class="col-xs-12">
<form class="form-inline">
<div class="form-group">
<label for="name">Name</label>
<input id="name" type="text" class="form-control" placeholder="Filter by Name"/>
</div>
</form>
</div>
</div>
<script type="text/x-handlebars" id="schemas">
<div id="schemaView" class="container-fluid">
<div class="row-fluid">
<div class="span9">
<div class="search-pagination">
<ul class="pager">
{{#unless first}}
<li class="previous">
{{#link-to 'page' previousPage}}
&larr; Prev
{{/link-to}}
</li>
{{/unless}}
<li>
{{ model.data.count }} scripts - page {{ model.data.page }} of {{ model.data.totalPages }}
</li>
{{#unless last}}
<li class="next">
{{#link-to 'page' nextPage}}
Next &rarr;
{{/link-to}}
</li>
{{/unless}}
</ul>
</div>
<table id="schematable" class="table table-bordered table-hover search-results">
<thead>
<tr class="results-header">
<th class="span3">Dataset Name</th>
<th class="span6">Dataset URN</th>
<th class="span3">Last Modified Date</th>
</tr>
</thead>
<tbody>
{{#each model.data.datasets as |dataset| }}
<tr {{action 'onSelect' dataset this}} class="schema-row">
<td class="dataset-info">
{{dataset.name}}
</td>
<td >{{ dataset.urn }}</td>
<td>{{ dataset.lastModified }}</td>
</tr>
{{/each}}
</tbody>
</table>
</div>
<div class="span9">
{{outlet}}
</div>
</div>
</div>
<div>
<ul id="historytabs" class="nav nav-tabs">
<li id="timelinepage"><a id="timelinetablink" data-toggle="tab" href="#timelinetab">Timeline</a></li>
<li id="diffviewpage"><a id="diffviewtablink" data-toggle="tab" href="#diffviewtab">Schema</a></li>
</ul>
<div class="tab-content">
<div id="timelinetab" class="tab-pane">
<div id="timeline"></div>
</div>
<div id="diffviewtab" class="tab-pane">
<div class="col-xs-10">
<div class="control-group">
<div class="controls">
<div class="row">
<div class="col-xs-1 text-right">
<label>Source</label>
</div>
<div class="col-xs-3">
<select id="leftSchemaSelector" class="col-xs-8 form-control">
<option value="na">-- choose a date --</option>
</select>
</div>
<div class="col-xs-1 text-right">
<label>Target</label>
</div>
<div class="col-xs-3">
<select id="rightSchemaSelector" class="col-xs-8 form-control">
<option value="na">-- choose a date --</option>
</select>
</div>
</div>
</div>
</div>
<div id="schemaContent">
</div>
</div>
</div>
</div>
</div>
</script>
</div>
<script src="@routes.Assets.at("vendors/ember-2.6.2/ember-template-compiler.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("vendors/ember-2.6.2/ember.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("vendors/jsondiffpatch-master/diff_match_patch_uncompressed.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("vendors/jsondiffpatch-master/jsondiffpatch.min.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("vendors/jsondiffpatch-master/jsondiffpatch-formatters.min.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("javascripts/highcharts.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("javascripts/search.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("javascripts/schemaHistory.js")" type="text/javascript"></script>
}

View File

@ -1,128 +0,0 @@
@(user: String, isInternal:Boolean, piwikSiteId: Integer)
@main(user, "", isInternal, piwikSiteId) {
<link rel="stylesheet" media="screen" href="@routes.Assets.at("stylesheets/scriptFinder.css")">
<div id="content">
<script type="text/x-handlebars" id="scripts">
<div id="scriptView" class="container-fluid">
<div class="row-fluid">
<div class="span9">
<div class="search-pagination">
<ul class="pager">
{{#unless first}}
<li class="previous">
{{#link-to 'page' previousPage}}
&larr; Prev
{{/link-to}}
</li>
{{/unless}}
<li>
{{ model.data.count }} scripts - page {{ model.data.page }} of {{ model.data.totalPages }}
</li>
{{#unless last}}
<li class="next">
{{#link-to 'page' nextPage}}
Next &rarr;
{{/link-to}}
</li>
{{/unless}}
</ul>
</div>
<table id="scriptstable" class="table table-bordered table-hover search-results">
<thead>
<tr class="results-header">
<th class="span2">Script Name</th>
<th class="span2">Script Path</th>
<th class="span1">Type</th>
<th class="span2">Chain Name</th>
<th class="span2">Job Name</th>
<th class="span1">Committer Name</th>
</tr>
</thead>
<tbody>
<tr {{action 'onSelect' script this}} class="script-row">
<td>
<input id="scriptName" type="text" class="script-filter form-control" placeholder="Filter by Script Name"/>
</td>
<td>
<input id="scriptPath" type="text" class="script-filter form-control" placeholder="Filter by Script Path"/>
</td>
<td>
<input id="scriptType" type="text" class="script-filter form-control" placeholder="Filter by Script Type"/>
</td>
<td>
<input id="chainName" type="text" class="script-filter form-control" placeholder="Filter by Chain Name"/>
</td>
<td>
<input id="jobName" type="text" class="script-filter form-control" placeholder="Filter by Job Name"/>
</td>
<td>
<input id="committerName" type="text" class="script-filter form-control" placeholder="Filter by Committer Name"/>
</td>
<td>
</td>
</tr>
{{#each model.data.scripts as |script|}}
<tr {{action 'onSelect' script this}} class="script-row">
<td class="dataset-info">
<a href={{script.scriptUrl}}>
{{{script.scriptName}}}
</a>
</td>
<td>{{ script.scriptPath }}</td>
<td>{{ script.scriptType }}</td>
<td>{{ script.chainName }}</td>
<td>{{ script.jobName }}</td>
<td>{{ script.committerName }}</td>
</tr>
{{/each}}
</tbody>
</table>
</div>
<div class="row">
<div class="col-xs-12">
<div class="row">
<div class="col-xs-12 col-sm-12 col-md-6">
<div id="runtime" config="runtime"></div>
</div>
<div class="col-xs-12 col-sm-12 col-md-6">
<h4>Lineage</h4>
<table class="table table-bordered search-results">
<thead>
<tr>
<th>Object Name</th>
<th>Source/Target</th>
<th>Storage Type</th>
<th>Operation</th>
</tr>
</thead>
<tbody>
{{#each lineages as |lineage|}}
<tr ng-repeat="row in lineages">
<td>{{ lineage.abstractedObjectName }}</td>
<td>{{ lineage.sourceTargetType }}</td>
<td>{{ lineage.storageType }}</td>
<td>{{ lineage.operation }}</td>
</tr>
{{/each}}
</tbody>
</table>
</div>
</div>
</div>
</div>
<div class="span9">
{{outlet}}
</div>
</div>
</div>
</script>
</div>
<script src="@routes.Assets.at("vendors/ember-2.6.2/ember-template-compiler.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("vendors/ember-2.6.2/ember.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("vendors/highcharts/highcharts.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("javascripts/search.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("javascripts/scriptFinder.js")" type="text/javascript"></script>
}