Initial Config Theme & File Store Changes

Update theme & remove dynatree requirement
This commit is contained in:
Gary Sharp
2014-04-13 20:19:02 +10:00
parent 41dc002ef8
commit a4f4b7d0b3
34 changed files with 1048 additions and 813 deletions
+3 -3
View File
@@ -24,7 +24,7 @@ namespace Disco.Web
return true;
}
private static void InitalizeEnvironment(DiscoDataContext Database)
public static void InitalizeCoreEnvironment(DiscoDataContext Database)
{
// Initialize Logging
Disco.Services.Logging.LogContext.Initalize(Database, DiscoApplication.SchedulerFactory);
@@ -48,7 +48,7 @@ namespace Disco.Web
public static void InitalizeNormalEnvironment(DiscoDataContext Database)
{
InitalizeEnvironment(Database);
InitalizeCoreEnvironment(Database);
// Initialize Expressions
BI.Expressions.Expression.InitializeExpressions();
@@ -81,7 +81,7 @@ namespace Disco.Web
public static void InitializeUpdateEnvironment(DiscoDataContext Database, Version PreviousVersion)
{
InitalizeEnvironment(Database);
InitalizeCoreEnvironment(Database);
// Initialize Scheduled Tasks
Disco.Services.Tasks.ScheduledTasks.InitalizeScheduledTasks(Database, DiscoApplication.SchedulerFactory, true);
+1 -1
View File
@@ -20,7 +20,7 @@ namespace Disco.Web
BundleTable.Add(new Bundle("~/Style/Credits", Links.ClientSource.Style.Credits_min_css));
BundleTable.Add(new Bundle("~/Style/InitialConfig", Links.ClientSource.Style.InitialConfig_min_css));
BundleTable.Add(new Bundle("~/Style/jQueryUI/dynatree", Links.ClientSource.Style.jQueryUI.dynatree.ui_dynatree_min_css));
BundleTable.Add(new Bundle("~/Style/Fancytree", Links.ClientSource.Style.Fancytree.ui_fancytree_min_css));
BundleTable.Add(new Bundle("~/Style/Fancytree", Links.ClientSource.Style.Fancytree.disco_fancytree_min_css));
BundleTable.Add(new Bundle("~/Style/Shadowbox", Links.ClientSource.Style.Shadowbox_min_css));
BundleTable.Add(new Bundle("~/Style/Timeline", Links.ClientSource.Style.Timeline_min_css));
+1 -1
View File
@@ -16,7 +16,7 @@ namespace Disco.Web
// Install Route
routes.MapRoute(
name: "InitialConfig", // Route name
url: "{controller}/{action}/{id}", // URL with parameters
url: "{action}/{id}", // URL with parameters
defaults: new { controller = "InitialConfig", action = "Index", id = UrlParameter.Optional }, // Parameter defaults
namespaces: new string[] { "Disco.Web.Controllers" } // Controllers Namespace Only
);
+5 -5
View File
@@ -4359,18 +4359,18 @@ td.subtleHighlight {
border-radius: 3px;
}
.field-validation-error {
color: red;
color: #e51400 !important;
}
.field-validation-valid {
display: none;
}
.input-validation-error {
border: 1px solid red;
background-color: #ffeeee;
border: 1px solid #e51400 !important;
background-color: #fff7f7 !important;
}
.validation-summary-errors {
font-weight: bold;
color: red;
font-weight: bold !important;
color: #e51400 !important;
}
.validation-summary-valid {
display: none;
File diff suppressed because one or more lines are too long
@@ -0,0 +1,526 @@
/*
* Fancytree Win8 styles
Borders have NO radius and NO gradients are used!
both:
unselected background: white
hover bar (unselected, inactive): #E5F3FB (border: #70C0E7) 'very light blue'
active node: #CBE8F6 (border: #26A0DA) 'light blue'
active node with hover: wie active node
Tree view:
active node, tree inactive: #F7F7F7 (border: #DEDEDE) 'light gray, selected, but tree not active'
List view:
selected bar: --> active bar
focus bar: transparent(white) + border 1px solid #3399FF ()
table left/right border: #EDEDED 'light gray'
*/
.ui-helper-hidden {
display: none;
}
.fancytree-container {
/*font-family: tahoma, arial, helvetica;*/
font-size: 10pt;
/* font size should not be too big */
white-space: nowrap;
padding: 3px;
margin: 0;
/* issue 201 */
background-color: white;
border: 1px dotted gray;
overflow: auto;
height: 100%;
/* issue 263 */
}
ul.fancytree-container ul {
padding: 0 0 0 16px;
margin: 0;
}
ul.fancytree-container li {
list-style-image: none;
list-style-position: outside;
list-style-type: none;
-moz-background-clip: border;
-moz-background-inline-policy: continuous;
-moz-background-origin: padding;
background-attachment: scroll;
background-color: transparent;
background-position: 0 0;
background-repeat: repeat-y;
background-image: none;
/* no v-lines */
margin: 0;
padding: 1px 0 0 0;
}
/* Suppress lines for last child node */
ul.fancytree-container li.fancytree-lastsib {
background-image: none;
}
/* Suppress lines if level is fixed expanded (option minExpandLevel) */
ul.fancytree-no-connector > li {
background-image: none;
}
/* Style, when control is disabled */
.ui-fancytree-disabled ul.fancytree-container {
opacity: 0.5;
/* filter: alpha(opacity=50); /* Yields a css warning */
background-color: silver;
}
span.fancytree-node {
display: inline-block;
width: 100%;
border: 1px solid transparent;
}
/*******************************************************************************
* Common icon definitions
*/
span.fancytree-empty,
span.fancytree-vline,
span.fancytree-expander,
span.fancytree-icon,
span.fancytree-checkbox,
span.fancytree-radio,
span.fancytree-drag-helper-img,
#fancytree-drop-marker {
width: 16px;
height: 16px;
/* display: -moz-inline-box; /* @ FF 1+2 removed for issue 221*/
/* -moz-box-align: start; /* issue 221 */
display: inline-block;
/* Required to make a span sizeable */
vertical-align: top;
background-repeat: no-repeat;
background-position: left;
background-image: url('data:image/png;base64,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') /*icons-disco-shrunk.png*/;
background-position: 0 0;
}
/** Used by iconclass option */
span.fancytree-custom-icon {
display: inline-block;
}
/** Used by 'icon' node option: */
.fancytree-container img {
width: 16px;
height: 16px;
margin-left: 3px;
vertical-align: top;
border-style: none;
}
/*******************************************************************************
* Lines and connectors
*/
/* span.fancytree-connector
{
background-image: none;
}
*/
/*******************************************************************************
* Expander icon
* Note: IE6 doesn't correctly evaluate multiples class names,
* so we create combined class names that can be used in the CSS.
*
* Prefix: fancytree-exp-
* 1st character: 'e': expanded, 'c': collapsed, 'n': no children
* 2nd character (optional): 'd': lazy (Delayed)
* 3rd character (optional): 'l': Last sibling
*/
span.fancytree-expander {
background-position: 0px -80px;
cursor: pointer;
}
span.fancytree-expander:hover {
background-position: -16px -80px;
}
.fancytree-exp-n span.fancytree-expander:hover {
background-position: -16px -80px;
}
.fancytree-exp-e span.fancytree-expander,
.fancytree-exp-ed span.fancytree-expander,
.fancytree-exp-el span.fancytree-expander,
.fancytree-exp-edl span.fancytree-expander {
background-position: -32px -80px;
}
.fancytree-exp-e span.fancytree-expander:hover,
.fancytree-exp-ed span.fancytree-expander:hover,
.fancytree-exp-el span.fancytree-expander:hover,
.fancytree-exp-edl span.fancytree-expander:hover {
background-position: -48px -80px;
}
.fancytree-loading span.fancytree-expander {
background-position: 0 0;
background-image: url(data:image/gif;base64,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) /*loading.gif*/;
}
.fancytree-exp-n span.fancytree-expander,
.fancytree-exp-nl span.fancytree-expander {
background-image: none;
cursor: default;
}
/*******************************************************************************
* Checkbox icon
*/
span.fancytree-checkbox {
margin-left: 3px;
background-position: 0px -32px;
}
span.fancytree-checkbox:hover {
background-position: -16px -32px;
}
.fancytree-partsel span.fancytree-checkbox {
background-position: -64px -32px;
}
.fancytree-partsel span.fancytree-checkbox:hover {
background-position: -80px -32px;
}
.fancytree-selected span.fancytree-checkbox {
background-position: -32px -32px;
}
.fancytree-selected span.fancytree-checkbox:hover {
background-position: -48px -32px;
}
/*******************************************************************************
* Radiobutton icon
* This is a customization, that may be activated by overriding the 'checkbox'
* class name as 'fancytree-radio' in the tree options.
*/
.fancytree-radio span.fancytree-checkbox {
margin-left: 3px;
background-position: 0px -48px;
}
.fancytree-radio span.fancytree-checkbox:hover {
background-position: -16px -48px;
}
.fancytree-radio .fancytree-partsel span.fancytree-checkbox {
background-position: -64px -48px;
}
.fancytree-radio .fancytree-partsel span.fancytree-checkbox:hover {
background-position: -80px -48px;
}
.fancytree-radio .fancytree-selected span.fancytree-checkbox {
background-position: -32px -48px;
}
.fancytree-radio .fancytree-selected span.fancytree-checkbox:hover {
background-position: -48px -48px;
}
/*******************************************************************************
* Node type icon
* Note: IE6 doesn't correctly evaluate multiples class names,
* so we create combined class names that can be used in the CSS.
*
* Prefix: fancytree-ico-
* 1st character: 'e': expanded, 'c': collapsed
* 2nd character (optional): 'f': folder
*/
span.fancytree-icon {
margin-left: 3px;
background-position: 0px 0px;
}
.fancytree-has-children span.fancytree-icon {
/* background-position: 0px -16px; */
}
.fancytree-ico-cf span.fancytree-icon {
background-position: 0px -16px;
}
.fancytree-ico-ef span.fancytree-icon {
background-position: -64px -16px;
}
/* Status node icons */
.fancytree-statusnode-wait span.fancytree-icon {
background-image: url(data:image/gif;base64,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) /*loading.gif*/;
}
.fancytree-statusnode-error span.fancytree-icon {
background-position: 0px -112px;
/* background-image: url("ltError.gif");*/
}
/*******************************************************************************
* Node titles
*/
span.fancytree-title {
display: inline-block;
}
/* Remove blue color and underline from title links */
a.fancytree-title {
text-decoration: none;
}
.fancytree-title {
display: inline-block;
/* Better alignment, when title contains <br> */
/* vertical-align: top;*/
padding-left: 3px;
padding-right: 3px;
/* Otherwise italic font will be outside bounds */
/* line-height: 16px; /* should be the same as img height, in case 16 px */
color: black;
/* inherit doesn't work on IE */
vertical-align: top;
margin: 0px;
margin-left: 3px;
/* outline: 0; /* @ Firefox, prevent dotted border after click */
/* Set transparent border to prevent jumping when active node gets a border
(we can do this, because this theme doesn't use vertical lines)
*/
/* border: 1px solid white; /* Note: 'transparent' would not work in IE6 */
cursor: pointer;
}
span.fancytree-node:hover {
background-color: #E5F3FB;
border-color: #70C0E7;
}
.fancytree-container.fancytree-focused span.fancytree-node.fancytree-focused {
border-color: #3399FF;
/* outline: 1px solid #3399FF; */
}
span.fancytree-node.fancytree-active,
span.fancytree-node.fancytree-selected {
/* active/selcted nodes inside inactive tree */
background-color: #F7F7F7;
border-color: #DEDEDE;
}
.fancytree-container.fancytree-focused span.fancytree-node.fancytree-active,
.fancytree-container.fancytree-focused span.fancytree-node.fancytree-selected,
span.fancytree-node.fancytree-active:hover,
span.fancytree-node.fancytree-selected:hover {
background-color: #CBE8F6;
border-color: #26A0DA;
}
span.fancytree-node.fancytree-selected {
font-style: italic;
}
/*******************************************************************************
* 'table' extension
*/
/*
table.fancytree-ext-table {
border-collapse: collapse;
width: 100%;
}
table.fancytree-ext-table tbody tr:nth-child(even){
background-color: #f4f4f8;
}
table.fancytree-ext-table tbody tr td {
border: 1px solid lightgray;
}
*/
table.fancytree-ext-table {
border-collapse: collapse;
}
table.fancytree-ext-table tbody tr:hover {
background-color: #E5F3FB;
outline: 1px solid #70C0E7;
}
table.fancytree-ext-table.fancytree-container.fancytree-focused span.fancytree-node.fancytree-focused {
outline: 1px solid #3399FF;
}
table.fancytree-ext-table.fancytree-focused tbody tr.fancytree-focused {
outline: 1px solid #26A0DA;
}
table.fancytree-ext-table.fancytree-focused tbody tr.fancytree-active,
table.fancytree-ext-table.fancytree-focused tbody tr.fancytree-selected {
background-color: #CBE8F6;
outline: 1px solid #26A0DA;
}
table.fancytree-ext-table tbody tr.fancytree-active,
table.fancytree-ext-table tbody tr.fancytree-selected {
background-color: #F7F7F7;
outline: 1px solid #DEDEDE;
}
/*******************************************************************************
* 'columnview' extension
*/
/*
table.fancytree-ext-columnview {
border-collapse: collapse;
width: 100%;
}
*/
table.fancytree-ext-columnview td {
position: relative;
}
table.fancytree-ext-columnview td > ul {
padding: 0;
}
table.fancytree-ext-columnview td > ul li {
list-style-image: none;
list-style-position: outside;
list-style-type: none;
-moz-background-clip: border;
-moz-background-inline-policy: continuous;
-moz-background-origin: padding;
background-attachment: scroll;
background-color: transparent;
background-position: 0 0;
background-repeat: repeat-y;
background-image: none;
/* no v-lines */
margin: 0;
padding: 1px 0 0 0;
}
/*
table.fancytree-ext-columnview tbody tr[0] {
height: 200px;
}
*/
table.fancytree-ext-columnview tbody tr td {
border: 1px solid gray;
vertical-align: top;
overflow: auto;
}
table.fancytree-ext-columnview span.fancytree-node {
position: relative;
/* allow positioning of embedded spans*/
}
table.fancytree-ext-columnview span.fancytree-node.fancytree-expanded {
background-color: #CBE8F6;
}
/*
table.fancytree-ext-columnview span.fancytree-node.fancytree-active {
background-color: royalblue;
}
*/
table.fancytree-ext-columnview span.fancytree-cv-right {
background-position: 0px -80px;
position: absolute;
right: 3px;
}
/*******************************************************************************
* 'filter' extension
*/
.fancytree-ext-filter span.fancytree-node .fancytree-title {
color: silver;
font-weight: lighter;
}
.fancytree-ext-filter span.fancytree-node.fancytree-submatch .fancytree-title {
color: black;
font-weight: normal;
}
.fancytree-ext-filter span.fancytree-node.fancytree-match .fancytree-title {
color: black;
font-weight: bold;
}
/*******************************************************************************
* Drag'n'drop support
*/
/*** Helper object ************************************************************/
div.fancytree-drag-helper a {
border: 1px solid gray;
background-color: white;
padding-left: 5px;
padding-right: 5px;
opacity: 0.8;
}
span.fancytree-drag-helper-img {
/*
position: relative;
left: -16px;
*/
}
div.fancytree-drag-helper {
/* border-color: green;
background-color: red;*/
}
div.fancytree-drop-accept span.fancytree-drag-helper-img {
background-position: -32px -112px;
}
div.fancytree-drag-helper.fancytree-drop-reject {
border-color: red;
}
div.fancytree-drop-reject span.fancytree-drag-helper-img {
background-position: -16px -112px;
}
/*** Drop marker icon *********************************************************/
#fancytree-drop-marker {
width: 24px;
position: absolute;
background-position: 0 -128px;
margin: 0;
}
#fancytree-drop-marker.fancytree-drop-after,
#fancytree-drop-marker.fancytree-drop-before {
width: 64px;
background-position: 0 -144px;
}
#fancytree-drop-marker.fancytree-drop-copy {
background-position: -64px -128px;
}
#fancytree-drop-marker.fancytree-drop-move {
background-position: -64px -128px;
}
/*** Source node while dragging ***********************************************/
span.fancytree-drag-source {
/* border: 1px dotted gray; */
background-color: #e0e0e0;
}
span.fancytree-drag-source a {
color: gray;
}
/*** Target node while dragging cursor is over it *****************************/
span.fancytree-drop-target {
/*border: 1px solid gray;*/
}
span.fancytree-drop-target.fancytree-drop-accept a {
/*border: 1px solid green;*/
background-color: #3169C6 !important;
color: white !important;
/* @ IE6 */
text-decoration: none;
}
span.fancytree-drop-target.fancytree-drop-reject {
/*border: 1px solid red;*/
}
.fancytree-container {
border: none;
}
span.fancytree-node {
padding: 1px;
border: none;
}
span.fancytree-node > span.fancytree-icon {
background: none;
display: inline-block;
font-family: FontAwesome;
font-size: 1.2em;
width: 14px;
}
span.fancytree-ico-ef > span.fancytree-icon:before {
color: #9e9e9e;
font-size: 1em;
content: "\f07c";
}
span.fancytree-ico-cf > span.fancytree-icon:before {
color: #9e9e9e;
font-size: 1em;
content: "\f07b";
}
span.fancytree-ico-c > span.fancytree-icon:before {
color: #e51400;
content: "\f023";
}
span.fancytree-ico-c.fancytree-selected > span.fancytree-icon:before {
color: #60a917;
content: "\f09c";
}
span.fancytree-node.fancytree-selected {
font-style: normal;
background: none;
}
span.fancytree-checkbox {
margin-left: 3px;
background-position: -96px -32px;
}
span.fancytree-checkbox:hover {
background-position: -96px -32px;
}
.fancytree-partsel span.fancytree-checkbox {
background-position: -128px -32px;
}
.fancytree-partsel span.fancytree-checkbox:hover {
background-position: -128px -32px;
}
.fancytree-selected span.fancytree-checkbox {
background-position: -112px -32px;
}
.fancytree-selected span.fancytree-checkbox:hover {
background-position: -112px -32px;
}
@@ -0,0 +1,68 @@
@import "../Declarations";
@import "ui.fancytree.less";
// Default Disco Fancytree Styles
.fancytree-container {
border: none;
}
span.fancytree-node {
padding: 1px;
border: none;
}
span.fancytree-node > span.fancytree-icon {
background: none;
display: inline-block;
font-family: FontAwesome;
font-size: 1.2em;
width: 14px;
}
span.fancytree-ico-ef > span.fancytree-icon:before{
color: @StatusClosed;
font-size: 1em;
content: "\f07c";
}
span.fancytree-ico-cf > span.fancytree-icon:before{
color: @StatusClosed;
font-size: 1em;
content: "\f07b";
}
span.fancytree-ico-c > span.fancytree-icon:before{
color: @StatusRemove;
content: "\f023";
}
span.fancytree-ico-c.fancytree-selected > span.fancytree-icon:before{
color: @StatusSuccess;
content: "\f09c";
}
span.fancytree-node.fancytree-selected {
font-style: normal;
background: none;
}
span.fancytree-checkbox {
margin-left: 3px;
background-position: -96px -32px;
}
span.fancytree-checkbox:hover {
background-position: -96px -32px;
}
.fancytree-partsel span.fancytree-checkbox {
background-position: -128px -32px;
}
.fancytree-partsel span.fancytree-checkbox:hover {
background-position: -128px -32px;
}
.fancytree-selected span.fancytree-checkbox {
background-position: -112px -32px;
}
.fancytree-selected span.fancytree-checkbox:hover {
background-position: -112px -32px;
}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 319 KiB

File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+5 -5
View File
@@ -1182,18 +1182,18 @@ td.subtleHighlight {
border-radius: 3px;
}
.field-validation-error {
color: red;
color: #e51400 !important;
}
.field-validation-valid {
display: none;
}
.input-validation-error {
border: 1px solid red;
background-color: #ffeeee;
border: 1px solid #e51400 !important;
background-color: #fff7f7 !important;
}
.validation-summary-errors {
font-weight: bold;
color: red;
font-weight: bold !important;
color: #e51400 !important;
}
.validation-summary-valid {
display: none;
+5 -5
View File
@@ -1199,7 +1199,7 @@ td.subtleHighlight {
}
.field-validation-error {
color: red;
color: @StatusError !important;
}
.field-validation-valid {
@@ -1207,13 +1207,13 @@ td.subtleHighlight {
}
.input-validation-error {
border: 1px solid red;
background-color: #ffeeee;
border: 1px solid @StatusError !important;
background-color: #fff7f7 !important;
}
.validation-summary-errors {
font-weight: bold;
color: red;
font-weight: bold !important;
color: @StatusError !important;
}
.validation-summary-valid {
File diff suppressed because one or more lines are too long
-55
View File
@@ -209,61 +209,6 @@
display: block;
text-align: right;
}
#UserDetailTab-Authorization .fancytree-container {
border: none;
}
#UserDetailTab-Authorization span.fancytree-node {
padding: 1px;
border: none;
}
#UserDetailTab-Authorization span.fancytree-node > span.fancytree-icon {
background: none;
display: inline-block;
font-family: FontAwesome;
font-size: 1.2em;
width: 14px;
}
#UserDetailTab-Authorization span.fancytree-ico-ef > span.fancytree-icon:before {
color: #9e9e9e;
font-size: 1em;
content: "\f07c";
}
#UserDetailTab-Authorization span.fancytree-ico-cf > span.fancytree-icon:before {
color: #9e9e9e;
font-size: 1em;
content: "\f07b";
}
#UserDetailTab-Authorization span.fancytree-ico-c > span.fancytree-icon:before {
color: #e51400;
content: "\f023";
}
#UserDetailTab-Authorization span.fancytree-ico-c.fancytree-selected > span.fancytree-icon:before {
color: #60a917;
content: "\f09c";
}
#UserDetailTab-Authorization span.fancytree-node.fancytree-selected {
font-style: normal;
background: none;
}
#UserDetailTab-Authorization span.fancytree-checkbox {
margin-left: 3px;
background-position: -96px -32px;
}
#UserDetailTab-Authorization span.fancytree-checkbox:hover {
background-position: -96px -32px;
}
#UserDetailTab-Authorization .fancytree-partsel span.fancytree-checkbox {
background-position: -128px -32px;
}
#UserDetailTab-Authorization .fancytree-partsel span.fancytree-checkbox:hover {
background-position: -128px -32px;
}
#UserDetailTab-Authorization .fancytree-selected span.fancytree-checkbox {
background-position: -112px -32px;
}
#UserDetailTab-Authorization .fancytree-selected span.fancytree-checkbox:hover {
background-position: -112px -32px;
}
#UserDetailTab-Authorization #UserDetailTab-Authorization_Membership {
width: 40%;
float: right;
-65
View File
@@ -174,71 +174,6 @@
}
}
.fancytree-container {
border: none;
}
span.fancytree-node {
padding: 1px;
border: none;
}
span.fancytree-node > span.fancytree-icon {
background: none;
display: inline-block;
font-family: FontAwesome;
font-size: 1.2em;
width: 14px;
}
span.fancytree-ico-ef > span.fancytree-icon:before{
color: @StatusClosed;
font-size: 1em;
content: "\f07c";
}
span.fancytree-ico-cf > span.fancytree-icon:before{
color: @StatusClosed;
font-size: 1em;
content: "\f07b";
}
span.fancytree-ico-c > span.fancytree-icon:before{
color: @StatusRemove;
content: "\f023";
}
span.fancytree-ico-c.fancytree-selected > span.fancytree-icon:before{
color: @StatusSuccess;
content: "\f09c";
}
span.fancytree-node.fancytree-selected {
font-style: normal;
background: none;
}
span.fancytree-checkbox {
margin-left: 3px;
background-position: -96px -32px;
}
span.fancytree-checkbox:hover {
background-position: -96px -32px;
}
.fancytree-partsel span.fancytree-checkbox {
background-position: -128px -32px;
}
.fancytree-partsel span.fancytree-checkbox:hover {
background-position: -128px -32px;
}
.fancytree-selected span.fancytree-checkbox {
background-position: -112px -32px;
}
.fancytree-selected span.fancytree-checkbox:hover {
background-position: -112px -32px;
}
#UserDetailTab-Authorization_Membership {
width: 40%;
float: right;
File diff suppressed because one or more lines are too long
@@ -68,9 +68,6 @@ namespace Disco.Web.Controllers
base.OnActionExecuting(filterContext);
}
//
// GET: /Install/
public virtual ActionResult Index()
{
return RedirectToAction(MVC.InitialConfig.Welcome());
@@ -204,53 +201,36 @@ namespace Disco.Web.Controllers
{
if (ModelState.IsValid)
{
// Ensure Path Exists
using (DiscoDataContext database = new DiscoDataContext())
{
var configItem = database.ConfigurationItems.Where(ci => ci.Scope == "System" && ci.Key == "DataStoreLocation").FirstOrDefault();
if (configItem == null)
{ // Create Config
database.ConfigurationItems.Add(new Disco.Models.Repository.ConfigurationItem()
{
Scope = "System",
Key = "DataStoreLocation",
Value = m.FileStoreLocation
});
}
else
{ // Update Config
configItem.Value = m.FileStoreLocation;
}
database.DiscoConfiguration.DataStoreLocation = m.FileStoreLocation;
database.SaveChanges();
// Extract DataStore Template into FileStore
var templatePath = Server.MapPath("~/ClientBin/DataStoreTemplate.zip");
if (System.IO.File.Exists(templatePath))
{
try
{
using (ZipArchive templateArchive = ZipFile.Open(templatePath, ZipArchiveMode.Read))
{
foreach (var entry in templateArchive.Entries)
{
var entryDestinationPath = Path.Combine(m.FileStoreLocation, entry.FullName);
if (System.IO.File.Exists(entryDestinationPath))
System.IO.File.Delete(entryDestinationPath);
}
templateArchive.ExtractToDirectory(m.FileStoreLocation);
}
}
catch (Exception ex)
{
ModelState.AddModelError(string.Empty, string.Format("Unable to extract File Store template: [{0}] {1}", ex.GetType().Name, ex.Message));
}
}
}
// Extract DataStore Template into FileStore
var templatePath = Server.MapPath("~/ClientBin/DataStoreTemplate.zip");
if (System.IO.File.Exists(templatePath))
{
try
{
using (ZipArchive templateArchive = ZipFile.Open(templatePath, ZipArchiveMode.Read))
{
foreach (var entry in templateArchive.Entries)
{
var entryDestinationPath = Path.Combine(m.FileStoreLocation, entry.FullName);
if (System.IO.File.Exists(entryDestinationPath))
System.IO.File.Delete(entryDestinationPath);
}
templateArchive.ExtractToDirectory(m.FileStoreLocation);
}
return RedirectToAction(MVC.InitialConfig.Complete());
}
catch (Exception ex)
{
ModelState.AddModelError(string.Empty, string.Format("Unable to extract File Store template: [{0}] {1}", ex.GetType().Name, ex.Message));
}
}
else
{
return RedirectToAction(MVC.InitialConfig.Complete());
}
return RedirectToAction(MVC.InitialConfig.Complete());
}
m.ExpandDirectoryModel();
@@ -263,6 +243,10 @@ namespace Disco.Web.Controllers
}
#endregion
#region Administrators
#endregion
#region Complete
public virtual ActionResult Complete()
{
+12 -12
View File
@@ -708,11 +708,6 @@
<DesignTime>True</DesignTime>
<DependentUpon>Welcome.cshtml</DependentUpon>
</Compile>
<Compile Include="Views\InitialConfig\_Layout.generated.cs">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>_Layout.cshtml</DependentUpon>
</Compile>
<Compile Include="Views\InitialConfig\_ViewStart.generated.cs">
<DependentUpon>_ViewStart.cshtml</DependentUpon>
<AutoGen>True</AutoGen>
@@ -1236,6 +1231,7 @@
<Content Include="ClientSource\Style\ExpressionEditor.min.css">
<DependentUpon>ExpressionEditor.css</DependentUpon>
</Content>
<None Include="ClientSource\Style\Fancytree\disco.fancytree.less" />
<None Include="ClientSource\Style\Images\Actions\dataTableFirst.png" />
<None Include="ClientSource\Style\Images\Actions\dataTableFirstDisabled.png" />
<None Include="ClientSource\Style\Images\Actions\dataTableLast.png" />
@@ -1251,11 +1247,17 @@
<None Include="ClientSource\Style\Images\Actions\unlocked.png" />
<None Include="ClientSource\Style\Fancytree\icons.gif" />
<None Include="ClientSource\Style\Fancytree\loading.gif" />
<None Include="ClientSource\Style\Fancytree\ui.fancytree.css" />
<None Include="ClientSource\Style\Fancytree\ui.fancytree.less" />
<None Include="ClientSource\Style\Fancytree\icons-DiscoMod.png" />
<None Include="ClientSource\Style\Fancytree\icons-disco-shrunk.png" />
<Content Include="ClientSource\Style\Fancytree\disco.fancytree.css">
<DependentUpon>disco.fancytree.less</DependentUpon>
</Content>
<Content Include="ClientSource\Style\Fancytree\disco.fancytree.min.css">
<DependentUpon>disco.fancytree.less</DependentUpon>
</Content>
<Content Include="ClientSource\Style\Fancytree\ui.fancytree.min.css">
<DependentUpon>ui.fancytree.css</DependentUpon>
<DependentUpon>ui.fancytree.less</DependentUpon>
</Content>
<Content Include="ClientSource\Style\Images\AttachmentTypes\document.png" />
<Content Include="ClientSource\Style\Images\AttachmentTypes\expressionBrowserIcons.png" />
@@ -1265,6 +1267,7 @@
<None Include="ClientSource\Style\Images\BackgroundDocument.png" />
<None Include="ClientSource\Style\Images\BackgroundInitialConfig.jpg" />
<None Include="ClientSource\Style\Images\BackgroundPage.png" />
<Content Include="ClientSource\Style\Images\BackgroundInitialHeading.jpg" />
<Content Include="ClientSource\Style\Images\DeviceTypes\AppliancePC.png" />
<Content Include="ClientSource\Style\Images\DeviceTypes\Desktop.png" />
<Content Include="ClientSource\Style\Images\DeviceTypes\EnterpriseServer.png" />
@@ -1275,6 +1278,7 @@
<Content Include="ClientSource\Style\Images\DeviceTypes\Unknown.png" />
<Content Include="ClientSource\Style\Images\DeviceTypes\Workstation.png" />
<Content Include="ClientSource\Style\Images\Heading.png" />
<Content Include="ClientSource\Style\Images\Heading64.png" />
<Content Include="ClientSource\Style\Images\Status\fail32.png" />
<None Include="ClientSource\Style\Images\Status\fileBroken256.png" />
<None Include="ClientSource\Style\Images\Status\loading.gif" />
@@ -1559,10 +1563,6 @@
<Generator>RazorGenerator</Generator>
<LastGenOutput>_ViewStart.generated.cs</LastGenOutput>
</None>
<None Include="Views\InitialConfig\_Layout.cshtml">
<Generator>RazorGenerator</Generator>
<LastGenOutput>_Layout.generated.cs</LastGenOutput>
</None>
<None Include="Views\InitialConfig\_ViewStart.cshtml">
<Generator>RazorGenerator</Generator>
<LastGenOutput>_ViewStart.generated.cs</LastGenOutput>
@@ -2036,7 +2036,7 @@
<SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
</WebProjectProperties>
</FlavorProperties>
<UserProperties BuildVersion_UpdateFileVersion="True" BuildVersion_UpdateAssemblyVersion="True" BuildVersion_BuildVersioningStyle="None.DeltaBaseYear.MonthAndDayStamp.TimeStamp" BuildVersion_DetectChanges="False" BuildVersion_UseGlobalSettings="False" BuildVersion_BuildAction="Both" BuildVersion_StartDate="2011/7/1" />
<UserProperties BuildVersion_StartDate="2011/7/1" BuildVersion_BuildAction="Both" BuildVersion_UseGlobalSettings="False" BuildVersion_DetectChanges="False" BuildVersion_BuildVersioningStyle="None.DeltaBaseYear.MonthAndDayStamp.TimeStamp" BuildVersion_UpdateAssemblyVersion="True" BuildVersion_UpdateFileVersion="True" />
</VisualStudio>
</ProjectExtensions>
<Import Project="$(SolutionDir)\.nuget\nuget.targets" />
@@ -170,7 +170,11 @@ namespace Disco.Web.Models.InitialConfig
{
foreach (var subDir in dirInfo.EnumerateDirectories())
{
this.SubDirectories.Add(subDir.Name.ToUpper(), FileStoreDirectoryModel.FromInfo(subDir));
if (((subDir.Attributes & FileAttributes.System) != FileAttributes.System) &&
((subDir.Attributes & FileAttributes.Hidden) != FileAttributes.Hidden))
{
this.SubDirectories.Add(subDir.Name.ToUpper(), FileStoreDirectoryModel.FromInfo(subDir));
}
}
}
else
+7 -4
View File
@@ -537,12 +537,15 @@ namespace Links
private const string URLPATH = "~/ClientSource/Style/Fancytree";
public static string Url() { return T4MVCHelpers.ProcessVirtualPath(URLPATH); }
public static string Url(string fileName) { return T4MVCHelpers.ProcessVirtualPath(URLPATH + "/" + fileName); }
public static readonly string disco_fancytree_less = Url("disco.fancytree.less");
public static readonly string disco_fancytree_css = T4MVCHelpers.IsProduction() && T4Extensions.FileExists(URLPATH + "/disco.fancytree.min.css") ? Url("disco.fancytree.min.css") : Url("disco.fancytree.css");
public static readonly string disco_fancytree_min_css = Url("disco.fancytree.min.css");
public static readonly string icons_disco_shrunk_png = Url("icons-disco-shrunk.png");
public static readonly string icons_DiscoMod_png = Url("icons-DiscoMod.png");
public static readonly string icons_gif = Url("icons.gif");
public static readonly string loading_gif = Url("loading.gif");
public static readonly string ui_fancytree_css = T4MVCHelpers.IsProduction() && T4Extensions.FileExists(URLPATH + "/ui.fancytree.min.css") ? Url("ui.fancytree.min.css") : Url("ui.fancytree.css");
public static readonly string ui_fancytree_less = Url("ui.fancytree.less");
public static readonly string ui_fancytree_min_css = Url("ui.fancytree.min.css");
}
@@ -598,6 +601,7 @@ namespace Links
public static readonly string BackgroundDocument_png = Url("BackgroundDocument.png");
public static readonly string BackgroundInitialConfig_jpg = Url("BackgroundInitialConfig.jpg");
public static readonly string BackgroundInitialHeading_jpg = Url("BackgroundInitialHeading.jpg");
public static readonly string BackgroundPage_png = Url("BackgroundPage.png");
[GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode]
public static class DeviceTypes {
@@ -616,6 +620,7 @@ namespace Links
}
public static readonly string Heading_png = Url("Heading.png");
public static readonly string Heading64_png = Url("Heading64.png");
[GeneratedCode("T4MVC", "2.0"), DebuggerNonUserCode]
public static class Status {
private const string URLPATH = "~/ClientSource/Style/Images/Status";
@@ -1174,7 +1179,6 @@ namespace Disco.Web.Controllers
public _ViewNamesClass ViewNames { get { return s_ViewNames; } }
public class _ViewNamesClass
{
public readonly string _Layout = "_Layout";
public readonly string _ViewStart = "_ViewStart";
public readonly string Complete = "Complete";
public readonly string Database = "Database";
@@ -1182,7 +1186,6 @@ namespace Disco.Web.Controllers
public readonly string RestartWebApp = "RestartWebApp";
public readonly string Welcome = "Welcome";
}
public readonly string _Layout = "~/Views/InitialConfig/_Layout.cshtml";
public readonly string _ViewStart = "~/Views/InitialConfig/_ViewStart.cshtml";
public readonly string Complete = "~/Views/InitialConfig/Complete.cshtml";
public readonly string Database = "~/Views/InitialConfig/Database.cshtml";
+120 -177
View File
@@ -1,8 +1,8 @@
@model Disco.Web.Models.InitialConfig.FileStoreModel
@{
ViewBag.Title = null;
Html.BundleDeferred("~/Style/jQueryUI/dynatree");
Html.BundleDeferred("~/ClientScripts/Modules/jQueryUI-DynaTree");
Html.BundleDeferred("~/Style/Fancytree");
Html.BundleDeferred("~/ClientScripts/Modules/jQuery-Fancytree");
}
<h1>@CommonHelpers.Breadcrumbs(Html.ToBreadcrumb("Initial Configuration", MVC.InitialConfig.Index(), "File Store"))</h1>
<div id="initialConfig_FileStore">
@@ -37,213 +37,156 @@
</div>
}
</div>
<div id="dialogWait" title="Please Wait">
<div id="dialogWait" title="Please Wait" class="dialog">
<h2><span class="ajaxLoading"></span>Building and Validating File Store</h2>
<div>Please wait while the Disco File Store is created and/or validated</div>
</div>
<div id="dialogCreateDirectory" title="Create Directory">
<div id="dialogCreateDirectory" title="Create Directory" class="dialog">
<h2>Create Directory</h2>
<input type="text" id="createDirectoryName" />
<div>Parent: <span id="createDirectoryParent" class="code"></span></div>
</div>
<script>
(function () {
var tree = null;
var $tree = $('#treeFilesystem');
var $dialogCreateDirectory;
var fileSystemBranchUrl = '@(Url.Action(MVC.InitialConfig.FileStoreBranch()))';
var fileSystemInitialBranches = null;
var fileSystemBranchSelected = null;
var $treeFilesystem = $('#treeFilesystem');
var rootNodes = processNode(@(new HtmlString(Json.Encode(Model.DirectoryModel)))).children;
var nodeDataLoaded = function (node) {
var addedNodes = [];
var previousUpdateMode = node.tree.enableUpdate(false);
var descriptor = node.data.fileSystemDescriptor;
// Sub Folders
if (descriptor.SubDirectories) {
var hasSubDirectories = false;
for (var k in descriptor.SubDirectories) {
hasSubDirectories = true;
var d = descriptor.SubDirectories[k];
var n = node.addChild({ key: d.Path, title: d.IsNew ? d.Name + ' [New]' : d.Name, tooltip: d.Path, unselectable: !d.Selectable, addClass: 'directory', isLazy: true, isFolder: true, fileSystemDescriptor: d });
addedNodes.push(n);
if (d.SubDirectories) {
nodeDataLoaded(n);
}
}
if (!hasSubDirectories) {
// Leaf
node.data.isLazy = false;
if (!fileSystemInitialBranches)
node.render();
}
}
node.setLazyNodeStatus(DTNodeStatus_Ok);
node.tree.enableUpdate(previousUpdateMode);
return addedNodes;
function processNodes(nodes) {
return $.map(nodes, processNode);
}
function processNode(node) {
var children = null;
if (node.SubDirectories) {
children = $.map(node.SubDirectories, processNode);
}
return {
title: node.IsNew ? node.Name + ' [New]' : node.Name,
key: node.Path,
folder: true,
expanded: !!children,
unselectable: !node.Selectable,
tooltip: node.Path,
children: children,
lazy: !children
};
}
var loadNodeData = function (node) {
var descriptor = node.data.fileSystemDescriptor;
if (!descriptor.SubDirectories) {
$.ajax({
tree = $tree.fancytree({
source: rootNodes,
checkbox: false,
selectMode: 1,
keyboard: false,
lazyload: function (e, data) {
var node = data.node;
data.result = {
url: fileSystemBranchUrl,
dataType: 'json',
data: { Path: descriptor.Path },
success: function (data) {
node.data.fileSystemDescriptor = data;
return nodeDataLoaded(node);
},
error: function () {
alert('Unable to access this path: ' + descriptor.Path);
node.remove();
}
})
} else {
return nodeDataLoaded(node);
}
}
var lazyLoadNode = function (node) {
if (node.data.fileSystemDescriptor) {
node.setLazyNodeStatus(DTNodeStatus_Loading);
loadNodeData(node);
} else {
node.setLazyNodeStatus(DTNodeStatus_Ok);
}
}
var activeNodeUpdated = function () {
var activeNode = $("#treeFilesystem").dynatree("getActiveNode");
data: { Path: node.key },
cache: false
}
},
postProcess: function (e, data) {
data.result = processNode(data.response).children;
},
activate: function (e, data) {
var node = data.node;
if (activeNode !== null) {
fileSystemBranchSelected = activeNode.data.fileSystemDescriptor;
} else {
fileSystemBranchSelected = null
}
if (fileSystemBranchSelected !== null) {
$('#locationPath').text(fileSystemBranchSelected.Path);
$('#createDirectory').attr('disabled', false);
if (fileSystemBranchSelected.Selectable) {
$('#submitForm').attr('disabled', false);
$('#locationPathInvalid').hide();
} else {
$('#submitForm').attr('disabled', true);
if (node.unselectable) {
$('#submitForm').prop('disabled', true);
$('#locationPathInvalid').show();
}
} else {
$('#createDirectory').attr('disabled', true);
$('#submitForm').attr('disabled', true);
$('#locationPath').text('<None>');
$('#locationPathInvalid').show();
}
}
var scrollToNode = function (node) {
var $li = $(node.li);
var $treeRoot = $($treeFilesystem.dynatree('getRoot').ul);
var ih = $li.height();
var th = $treeRoot.height();
var ts = $treeRoot.scrollTop();
var is = $li.position().top;
if ((ih + is) > th) {
if (ih > th) {
$treeRoot.animate({ 'scrollTop': (is + ts) }, 'fast');
} else {
$treeRoot.animate({ 'scrollTop': (ih + is + ts - th) }, 'fast');
$('#submitForm').prop('disabled', false);
$('#locationPathInvalid').hide();
}
$('#createDirectory').prop('disabled', false);
$('#locationPath').text(node.key);
}
}).fancytree('getTree');
var initalValue = $('#FileStoreLocation').val();
if (initalValue) {
var initialNode = tree.getNodeByKey(initalValue);
if (initialNode) {
initialNode.setActive(true);
}
}
var nodeExpanded = function (flag, node) {
if (flag)
window.setTimeout(function () { scrollToNode(node); }, 1);
}
var nodeDeactivated = function () {
activeNodeUpdated();
}
var nodeActivated = function (node) {
activeNodeUpdated();
nodeExpanded(true, node);
}
$(function () {
$('#dialogWait').dialog({
autoOpen: false,
draggable: false,
modal: true,
resizable: false,
width: 400,
height: 150,
closeOnEscape: false
}).closest('.ui-dialog').find('.ui-dialog-titlebar-close').hide();
$('#createDirectory').click(function () {
if (!$(this).prop('disabled')) {
$('#dialogCreateDirectory').dialog({
autoOpen: false,
draggable: false,
modal: true,
resizable: false,
width: 400,
height: 180,
buttons: {
'Cancel': function () {
$('#dialogCreateDirectory').dialog('close');
},
'Create Directory': function () {
var activeNode = $("#treeFilesystem").dynatree("getActiveNode");
if (activeNode) {
var name = $('#createDirectoryName').val();
d = {
Name: name,
Path: fileSystemBranchSelected.Path.charAt(fileSystemBranchSelected.Path.length - 1) === '\\' ? fileSystemBranchSelected.Path + name : fileSystemBranchSelected.Path + '\\' + name,
IsNew: true,
Selectable: true,
SubDirectories: {}
// Create Dialog
if (!$dialogCreateDirectory) {
$('#dialogCreateDirectory').dialog({
autoOpen: false,
draggable: false,
modal: true,
resizable: false,
width: 400,
height: 200,
buttons: {
'Cancel': function () {
$('#dialogCreateDirectory').dialog('close');
},
'Create Directory': function () {
var dirName = $('#createDirectoryName').val();
if (!!dirName) {
var activeNode = tree.getActiveNode();
if (activeNode) {
var parentPath = activeNode.key;
var path = parentPath.charAt(parentPath.length - 1) === '\\' ? parentPath + dirName : parentPath + '\\' + dirName;
node = {
title: dirName + ' [New]',
key: path,
folder: true,
expanded: false,
unselectable: false,
tooltip: path,
lazy: false
}
activeNode.addNode(node).setActive(true);
}
}
$('#dialogCreateDirectory').dialog('close');
}
activeNode.addChild({ title: d.Name + ' [New]', tooltip: d.Path, unselectable: !d.Selectable, addClass: 'newDirectory', isLazy: false, isFolder: true, fileSystemDescriptor: d }).activate();
}
$('#dialogCreateDirectory').dialog('close');
}
})
}
})
$('#createDirectory').click(function () {
if (fileSystemBranchSelected) {
var activeNode = tree.getActiveNode();
if (activeNode) {
$('#dialogCreateDirectory').dialog('open');
$('#createDirectoryName').val('').focus();
$('#createDirectoryParent').text(fileSystemBranchSelected.Path);
$('#createDirectoryParent').text(activeNode.key);
}
return false;
});
$('#submitForm').closest('form').submit(function () {
if (fileSystemBranchSelected && fileSystemBranchSelected.Selectable) {
if ($(this).valid()) {
$('#dialogWait').dialog('open');
$('#FileStoreLocation').val(fileSystemBranchSelected.Path);
}
return true;
} else {
alert('Invalid FileStore Location');
return false;
}
});
$treeFilesystem.dynatree({ onLazyRead: lazyLoadNode, onActivate: nodeActivated, onDeactivate: nodeDeactivated, onExpand: nodeExpanded });
var rootNode = $treeFilesystem.dynatree('getRoot');
var previousUpdateMode = rootNode.tree.enableUpdate(false);
rootNode.data.fileSystemDescriptor = fileSystemInitialBranches[0];
loadNodeData(rootNode);
rootNode.tree.enableUpdate(previousUpdateMode);
var initialValue = $('#FileStoreLocation').val();
if (initialValue) {
var initialNode = rootNode.tree.getNodeByKey(initialValue);
if (initialNode)
initialNode.activate();
}
fileSystemInitialBranches = null;
});
fileSystemInitialBranches = [@(new HtmlString(Json.Encode(Model.DirectoryModel)))];
$('#submitForm').closest('form').submit(function () {
var activeNode = tree.getActiveNode();
if (activeNode && !activeNode.unselectable) {
$('#FileStoreLocation').val(activeNode.key);
if ($(this).valid()) {
$('#dialogWait').dialog({
autoOpen: true,
draggable: false,
modal: true,
resizable: false,
width: 400,
height: 150,
closeOnEscape: false
}).closest('.ui-dialog').find('.ui-dialog-titlebar-close').hide();
}
return true;
} else {
alert('Invalid FileStore Location');
return false;
}
});
})();
</script>
@@ -2,7 +2,7 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.34011
// Runtime Version:4.0.30319.34014
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
@@ -48,8 +48,8 @@ namespace Disco.Web.Views.InitialConfig
#line 2 "..\..\Views\InitialConfig\FileStore.cshtml"
ViewBag.Title = null;
Html.BundleDeferred("~/Style/jQueryUI/dynatree");
Html.BundleDeferred("~/ClientScripts/Modules/jQueryUI-DynaTree");
Html.BundleDeferred("~/Style/Fancytree");
Html.BundleDeferred("~/ClientScripts/Modules/jQuery-Fancytree");
#line default
@@ -179,6 +179,8 @@ WriteLiteral(" id=\"dialogWait\"");
WriteLiteral(" title=\"Please Wait\"");
WriteLiteral(" class=\"dialog\"");
WriteLiteral(">\r\n <h2><span");
WriteLiteral(" class=\"ajaxLoading\"");
@@ -190,6 +192,8 @@ WriteLiteral(" id=\"dialogCreateDirectory\"");
WriteLiteral(" title=\"Create Directory\"");
WriteLiteral(" class=\"dialog\"");
WriteLiteral(">\r\n <h2>Create Directory</h2>\r\n <input");
WriteLiteral(" type=\"text\"");
@@ -202,130 +206,95 @@ WriteLiteral(" id=\"createDirectoryParent\"");
WriteLiteral(" class=\"code\"");
WriteLiteral("></span></div>\r\n</div>\r\n<script>\r\n (function () {\r\n var fileSystemBranc" +
"hUrl = \'");
WriteLiteral("></span></div>\r\n</div>\r\n<script>\r\n (function () {\r\n var tree = null;\r\n " +
" var $tree = $(\'#treeFilesystem\');\r\n var $dialogCreateDirectory;\r\n " +
" var fileSystemBranchUrl = \'");
#line 51 "..\..\Views\InitialConfig\FileStore.cshtml"
#line 54 "..\..\Views\InitialConfig\FileStore.cshtml"
Write(Url.Action(MVC.InitialConfig.FileStoreBranch()));
#line default
#line hidden
WriteLiteral("\';\r\n var fileSystemInitialBranches = null;\r\n var fileSystemBranchSe" +
"lected = null;\r\n var $treeFilesystem = $(\'#treeFilesystem\');\r\n\r\n v" +
"ar nodeDataLoaded = function (node) {\r\n var addedNodes = [];\r\n " +
" var previousUpdateMode = node.tree.enableUpdate(false);\r\n var de" +
"scriptor = node.data.fileSystemDescriptor;\r\n // Sub Folders\r\n " +
" if (descriptor.SubDirectories) {\r\n var hasSubDirectories = fa" +
"lse;\r\n for (var k in descriptor.SubDirectories) {\r\n " +
" hasSubDirectories = true;\r\n var d = descriptor.SubDirec" +
"tories[k];\r\n var n = node.addChild({ key: d.Path, title: d.Is" +
"New ? d.Name + \' [New]\' : d.Name, tooltip: d.Path, unselectable: !d.Selectable, " +
"addClass: \'directory\', isLazy: true, isFolder: true, fileSystemDescriptor: d });" +
"\r\n addedNodes.push(n);\r\n\r\n if (d.SubDirect" +
"ories) {\r\n nodeDataLoaded(n);\r\n }\r\n " +
" }\r\n if (!hasSubDirectories) {\r\n /" +
"/ Leaf\r\n node.data.isLazy = false;\r\n if (!" +
"fileSystemInitialBranches)\r\n node.render();\r\n " +
" }\r\n }\r\n node.setLazyNodeStatus(DTNodeStatus_Ok);\r\n " +
" node.tree.enableUpdate(previousUpdateMode);\r\n return addedNod" +
"es;\r\n }\r\n var loadNodeData = function (node) {\r\n var de" +
"scriptor = node.data.fileSystemDescriptor;\r\n\r\n if (!descriptor.SubDir" +
"ectories) {\r\n $.ajax({\r\n url: fileSystemBranch" +
"Url,\r\n dataType: \'json\',\r\n data: { Path: d" +
"escriptor.Path },\r\n success: function (data) {\r\n " +
" node.data.fileSystemDescriptor = data;\r\n retur" +
"n nodeDataLoaded(node);\r\n },\r\n error: func" +
"tion () {\r\n alert(\'Unable to access this path: \' + descri" +
"ptor.Path);\r\n node.remove();\r\n }\r\n " +
" })\r\n } else {\r\n return nodeDataLoaded(node" +
");\r\n }\r\n }\r\n var lazyLoadNode = function (node) {\r\n " +
" if (node.data.fileSystemDescriptor) {\r\n node.setLazyNodeS" +
"tatus(DTNodeStatus_Loading);\r\n loadNodeData(node);\r\n }" +
" else {\r\n node.setLazyNodeStatus(DTNodeStatus_Ok);\r\n }" +
"\r\n }\r\n var activeNodeUpdated = function () {\r\n var acti" +
"veNode = $(\"#treeFilesystem\").dynatree(\"getActiveNode\");\r\n\r\n if (acti" +
"veNode !== null) {\r\n fileSystemBranchSelected = activeNode.data.f" +
"ileSystemDescriptor;\r\n } else {\r\n fileSystemBranchSele" +
"cted = null\r\n }\r\n\r\n if (fileSystemBranchSelected !== null)" +
" {\r\n $(\'#locationPath\').text(fileSystemBranchSelected.Path);\r\n " +
" $(\'#createDirectory\').attr(\'disabled\', false);\r\n if " +
"(fileSystemBranchSelected.Selectable) {\r\n $(\'#submitForm\').at" +
"tr(\'disabled\', false);\r\n $(\'#locationPathInvalid\').hide();\r\n " +
" } else {\r\n $(\'#submitForm\').attr(\'disabled\', t" +
"rue);\r\n $(\'#locationPathInvalid\').show();\r\n }\r" +
"\n } else {\r\n $(\'#createDirectory\').attr(\'disabled\', tr" +
"ue);\r\n $(\'#submitForm\').attr(\'disabled\', true);\r\n " +
"$(\'#locationPath\').text(\'<None>\');\r\n $(\'#locationPathInvalid\').sh" +
"ow();\r\n }\r\n }\r\n var scrollToNode = function (node) {\r\n " +
" var $li = $(node.li);\r\n var $treeRoot = $($treeFilesystem." +
"dynatree(\'getRoot\').ul);\r\n var ih = $li.height();\r\n var th" +
" = $treeRoot.height();\r\n var ts = $treeRoot.scrollTop();\r\n " +
" var is = $li.position().top;\r\n if ((ih + is) > th) {\r\n " +
" if (ih > th) {\r\n $treeRoot.animate({ \'scrollTop\': (is + ts)" +
" }, \'fast\');\r\n } else {\r\n $treeRoot.animate({ " +
"\'scrollTop\': (ih + is + ts - th) }, \'fast\');\r\n }\r\n }\r\n" +
" }\r\n var nodeExpanded = function (flag, node) {\r\n if (f" +
"lag)\r\n window.setTimeout(function () { scrollToNode(node); }, 1);" +
"\r\n }\r\n var nodeDeactivated = function () {\r\n activeNode" +
"Updated();\r\n }\r\n var nodeActivated = function (node) {\r\n " +
" activeNodeUpdated();\r\n nodeExpanded(true, node);\r\n }\r\n\r\n " +
" $(function () {\r\n $(\'#dialogWait\').dialog({\r\n auto" +
"Open: false,\r\n draggable: false,\r\n modal: true,\r\n " +
" resizable: false,\r\n width: 400,\r\n h" +
"eight: 150,\r\n closeOnEscape: false\r\n }).closest(\'.ui-d" +
"ialog\').find(\'.ui-dialog-titlebar-close\').hide();\r\n\r\n $(\'#dialogCreat" +
"eDirectory\').dialog({\r\n autoOpen: false,\r\n draggab" +
"le: false,\r\n modal: true,\r\n resizable: false,\r\n " +
" width: 400,\r\n height: 180,\r\n buttons:" +
" {\r\n \'Cancel\': function () {\r\n $(\'#dia" +
"logCreateDirectory\').dialog(\'close\');\r\n },\r\n " +
" \'Create Directory\': function () {\r\n var activeNode = $" +
"(\"#treeFilesystem\").dynatree(\"getActiveNode\");\r\n if (acti" +
"veNode) {\r\n var name = $(\'#createDirectoryName\').val(" +
");\r\n d = {\r\n Name: nam" +
"e,\r\n Path: fileSystemBranchSelected.Path.charAt(f" +
"ileSystemBranchSelected.Path.length - 1) === \'\\\\\' ? fileSystemBranchSelected.Pat" +
"h + name : fileSystemBranchSelected.Path + \'\\\\\' + name,\r\n " +
" IsNew: true,\r\n Selectable: true,\r\n " +
" SubDirectories: {}\r\n }\r\n " +
" activeNode.addChild({ title: d.Name + \' [New]\', tooltip" +
": d.Path, unselectable: !d.Selectable, addClass: \'newDirectory\', isLazy: false, " +
"isFolder: true, fileSystemDescriptor: d }).activate();\r\n " +
"}\r\n $(\'#dialogCreateDirectory\').dialog(\'close\');\r\n " +
" }\r\n }\r\n })\r\n\r\n $(\'#createDirec" +
"tory\').click(function () {\r\n if (fileSystemBranchSelected) {\r\n " +
" $(\'#dialogCreateDirectory\').dialog(\'open\');\r\n " +
" $(\'#createDirectoryName\').val(\'\').focus();\r\n $(\'#createDire" +
"ctoryParent\').text(fileSystemBranchSelected.Path);\r\n }\r\n " +
" return false;\r\n });\r\n\r\n $(\'#submitForm\').closest(\'f" +
"orm\').submit(function () {\r\n if (fileSystemBranchSelected && file" +
"SystemBranchSelected.Selectable) {\r\n if ($(this).valid()) {\r\n" +
" $(\'#dialogWait\').dialog(\'open\');\r\n " +
" $(\'#FileStoreLocation\').val(fileSystemBranchSelected.Path);\r\n " +
" }\r\n return true;\r\n } else {\r\n " +
" alert(\'Invalid FileStore Location\');\r\n return false;\r\n " +
" }\r\n });\r\n\r\n $treeFilesystem.dynatree({ onLa" +
"zyRead: lazyLoadNode, onActivate: nodeActivated, onDeactivate: nodeDeactivated, " +
"onExpand: nodeExpanded });\r\n var rootNode = $treeFilesystem.dynatree(" +
"\'getRoot\');\r\n\r\n var previousUpdateMode = rootNode.tree.enableUpdate(f" +
"alse);\r\n rootNode.data.fileSystemDescriptor = fileSystemInitialBranch" +
"es[0];\r\n loadNodeData(rootNode);\r\n rootNode.tree.enableUpd" +
"ate(previousUpdateMode);\r\n\r\n var initialValue = $(\'#FileStoreLocation" +
"\').val();\r\n if (initialValue) {\r\n var initialNode = ro" +
"otNode.tree.getNodeByKey(initialValue);\r\n if (initialNode)\r\n " +
" initialNode.activate();\r\n }\r\n\r\n fileSystemI" +
"nitialBranches = null;\r\n });\r\n\r\n\r\n fileSystemInitialBranches = [");
WriteLiteral("\';\r\n var rootNodes = processNode(");
#line 247 "..\..\Views\InitialConfig\FileStore.cshtml"
Write(new HtmlString(Json.Encode(Model.DirectoryModel)));
#line 55 "..\..\Views\InitialConfig\FileStore.cshtml"
Write(new HtmlString(Json.Encode(Model.DirectoryModel)));
#line default
#line hidden
WriteLiteral("];\r\n })();\r\n</script>\r\n");
WriteLiteral(").children;\r\n\r\n function processNodes(nodes) {\r\n return $.map(n" +
"odes, processNode);\r\n }\r\n function processNode(node) {\r\n " +
" var children = null;\r\n if (node.SubDirectories) {\r\n " +
"children = $.map(node.SubDirectories, processNode);\r\n }\r\n " +
"return {\r\n title: node.IsNew ? node.Name + \' [New]\' : node.Name,\r" +
"\n key: node.Path,\r\n folder: true,\r\n " +
" expanded: !!children,\r\n unselectable: !node.Selectable,\r\n " +
" tooltip: node.Path,\r\n children: children,\r\n " +
" lazy: !children\r\n };\r\n }\r\n\r\n tree = $tree.fancytree(" +
"{\r\n source: rootNodes,\r\n checkbox: false,\r\n sel" +
"ectMode: 1,\r\n keyboard: false,\r\n lazyload: function (e, da" +
"ta) {\r\n var node = data.node;\r\n data.result = {\r\n " +
" url: fileSystemBranchUrl,\r\n data: { Path: " +
"node.key },\r\n cache: false\r\n }\r\n }," +
"\r\n postProcess: function (e, data) {\r\n data.result = p" +
"rocessNode(data.response).children;\r\n },\r\n activate: funct" +
"ion (e, data) {\r\n var node = data.node;\r\n\r\n if (no" +
"de.unselectable) {\r\n $(\'#submitForm\').prop(\'disabled\', true);" +
"\r\n $(\'#locationPathInvalid\').show();\r\n } else " +
"{\r\n $(\'#submitForm\').prop(\'disabled\', false);\r\n " +
" $(\'#locationPathInvalid\').hide();\r\n }\r\n\r\n $(" +
"\'#createDirectory\').prop(\'disabled\', false);\r\n $(\'#locationPath\')" +
".text(node.key);\r\n\r\n }\r\n }).fancytree(\'getTree\');\r\n\r\n v" +
"ar initalValue = $(\'#FileStoreLocation\').val();\r\n if (initalValue) {\r\n " +
" var initialNode = tree.getNodeByKey(initalValue);\r\n if (init" +
"ialNode) {\r\n initialNode.setActive(true);\r\n }\r\n " +
" }\r\n\r\n $(\'#createDirectory\').click(function () {\r\n if (!$(this" +
").prop(\'disabled\')) {\r\n\r\n // Create Dialog\r\n if (!" +
"$dialogCreateDirectory) {\r\n $(\'#dialogCreateDirectory\').dialo" +
"g({\r\n autoOpen: false,\r\n draggable" +
": false,\r\n modal: true,\r\n resizabl" +
"e: false,\r\n width: 400,\r\n height: " +
"200,\r\n buttons: {\r\n \'Cancel\': " +
"function () {\r\n $(\'#dialogCreateDirectory\').dialo" +
"g(\'close\');\r\n },\r\n \'Create" +
" Directory\': function () {\r\n var dirName = $(\'#cr" +
"eateDirectoryName\').val();\r\n if (!!dirName) {\r\n " +
" var activeNode = tree.getActiveNode();\r\n " +
" if (activeNode) {\r\n " +
" var parentPath = activeNode.key;\r\n " +
" var path = parentPath.charAt(parentPath.length - 1) === \'\\\\\' ? parentPath + d" +
"irName : parentPath + \'\\\\\' + dirName;\r\n n" +
"ode = {\r\n title: dirName + \' [New]\',\r" +
"\n key: path,\r\n " +
" folder: true,\r\n " +
"expanded: false,\r\n unselectable: fals" +
"e,\r\n tooltip: path,\r\n " +
" lazy: false\r\n " +
" }\r\n activeNode.addNode(node).setActive(t" +
"rue);\r\n }\r\n }\r" +
"\n $(\'#dialogCreateDirectory\').dialog(\'close\');\r\n " +
" }\r\n }\r\n })\r" +
"\n }\r\n\r\n var activeNode = tree.getActiveNode();\r\n " +
" if (activeNode) {\r\n $(\'#dialogCreateDirectory\')" +
".dialog(\'open\');\r\n $(\'#createDirectoryName\').val(\'\').focus();" +
"\r\n $(\'#createDirectoryParent\').text(activeNode.key);\r\n " +
" }\r\n\r\n return false;\r\n }\r\n });\r\n\r\n " +
" $(\'#submitForm\').closest(\'form\').submit(function () {\r\n var active" +
"Node = tree.getActiveNode();\r\n if (activeNode && !activeNode.unselect" +
"able) {\r\n $(\'#FileStoreLocation\').val(activeNode.key);\r\n " +
" if ($(this).valid()) {\r\n $(\'#dialogWait\').dialog({\r\n " +
" autoOpen: true,\r\n draggable: false," +
"\r\n modal: true,\r\n resizable: false" +
",\r\n width: 400,\r\n height: 150,\r\n " +
" closeOnEscape: false\r\n }).closest(\'.ui-" +
"dialog\').find(\'.ui-dialog-titlebar-close\').hide();\r\n }\r\n " +
" return true;\r\n } else {\r\n alert(\'Invalid FileSt" +
"ore Location\');\r\n return false;\r\n }\r\n });\r\n " +
"})();\r\n</script>\r\n");
}
}
@@ -1,35 +0,0 @@
@{
Html.BundleDeferred("~/Style/Site");
Html.BundleDeferred("~/ClientScripts/Core");
}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<title>Disco@{if(ViewBag.Title != null){<text> - @CommonHelpers.BreadcrumbsTitle(ViewBag.Title)</text>}}</title>
@Html.BundleRenderDeferred()
@RenderSection("head", false)
</head>
<body class="layout">
<div class="page">
<header>
<div class="clearfix">
<div id="heading">
<a href="@Url.Action(MVC.Public.Public.Index())">
<img src="@Links.ClientSource.Style.Images.Heading_png" alt="DISCO - ICT Asset Management" /></a>
</div>
<div id="headerMenu">
</div>
</div>
</header>
@if(ViewBag.Title != null){<div id="layout_PageHeading">@CommonHelpers.Breadcrumbs(ViewBag.Title)</div>}
<section id="layout_Page">
@RenderBody()
</section>
<footer>
Disco v@(Disco.Web.DiscoApplication.Version)
</footer>
</div>
</body>
</html>
@@ -1,222 +0,0 @@
#pragma warning disable 1591
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.34011
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Disco.Web.Views.InitialConfig
{
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Web;
using System.Web.Helpers;
using System.Web.Mvc;
using System.Web.Mvc.Ajax;
using System.Web.Mvc.Html;
using System.Web.Routing;
using System.Web.Security;
using System.Web.UI;
using System.Web.WebPages;
using Disco;
using Disco.BI.Extensions;
using Disco.Models.Repository;
using Disco.Services;
using Disco.Services.Authorization;
using Disco.Services.Web;
using Disco.Web;
using Disco.Web.Extensions;
[System.CodeDom.Compiler.GeneratedCodeAttribute("RazorGenerator", "2.0.0.0")]
[System.Web.WebPages.PageVirtualPathAttribute("~/Views/InitialConfig/_Layout.cshtml")]
public partial class Layout : Disco.Services.Web.WebViewPage<dynamic>
{
public Layout()
{
}
public override void Execute()
{
#line 1 "..\..\Views\InitialConfig\_Layout.cshtml"
Html.BundleDeferred("~/Style/Site");
Html.BundleDeferred("~/ClientScripts/Core");
#line default
#line hidden
WriteLiteral("\r\n<!DOCTYPE html>\r\n<html>\r\n<head>\r\n <meta");
WriteLiteral(" charset=\"utf-8\"");
WriteLiteral(" />\r\n <meta");
WriteLiteral(" http-equiv=\"X-UA-Compatible\"");
WriteLiteral(" content=\"IE=edge\"");
WriteLiteral(" />\r\n <title>Disco");
#line 10 "..\..\Views\InitialConfig\_Layout.cshtml"
if(ViewBag.Title != null){
#line default
#line hidden
WriteLiteral(" - ");
#line 10 "..\..\Views\InitialConfig\_Layout.cshtml"
Write(CommonHelpers.BreadcrumbsTitle(ViewBag.Title));
#line default
#line hidden
#line 10 "..\..\Views\InitialConfig\_Layout.cshtml"
}
#line default
#line hidden
WriteLiteral("</title>\r\n");
WriteLiteral(" ");
#line 11 "..\..\Views\InitialConfig\_Layout.cshtml"
Write(Html.BundleRenderDeferred());
#line default
#line hidden
WriteLiteral("\r\n");
WriteLiteral(" ");
#line 12 "..\..\Views\InitialConfig\_Layout.cshtml"
Write(RenderSection("head", false));
#line default
#line hidden
WriteLiteral("\r\n</head>\r\n<body");
WriteLiteral(" class=\"layout\"");
WriteLiteral(">\r\n <div");
WriteLiteral(" class=\"page\"");
WriteLiteral(">\r\n <header>\r\n <div");
WriteLiteral(" class=\"clearfix\"");
WriteLiteral(">\r\n <div");
WriteLiteral(" id=\"heading\"");
WriteLiteral(">\r\n <a");
WriteAttribute("href", Tuple.Create(" href=\"", 578), Tuple.Create("\"", 623)
#line 19 "..\..\Views\InitialConfig\_Layout.cshtml"
, Tuple.Create(Tuple.Create("", 585), Tuple.Create<System.Object, System.Int32>(Url.Action(MVC.Public.Public.Index())
#line default
#line hidden
, 585), false)
);
WriteLiteral(">\r\n <img");
WriteAttribute("src", Tuple.Create(" src=\"", 655), Tuple.Create("\"", 705)
#line 20 "..\..\Views\InitialConfig\_Layout.cshtml"
, Tuple.Create(Tuple.Create("", 661), Tuple.Create<System.Object, System.Int32>(Links.ClientSource.Style.Images.Heading_png
#line default
#line hidden
, 661), false)
);
WriteLiteral(" alt=\"DISCO - ICT Asset Management\"");
WriteLiteral(" /></a>\r\n </div>\r\n <div");
WriteLiteral(" id=\"headerMenu\"");
WriteLiteral(">\r\n </div>\r\n </div>\r\n </header>\r\n");
#line 26 "..\..\Views\InitialConfig\_Layout.cshtml"
#line default
#line hidden
#line 26 "..\..\Views\InitialConfig\_Layout.cshtml"
if(ViewBag.Title != null){
#line default
#line hidden
WriteLiteral("<div");
WriteLiteral(" id=\"layout_PageHeading\"");
WriteLiteral(">");
#line 26 "..\..\Views\InitialConfig\_Layout.cshtml"
Write(CommonHelpers.Breadcrumbs(ViewBag.Title));
#line default
#line hidden
WriteLiteral("</div>");
#line 26 "..\..\Views\InitialConfig\_Layout.cshtml"
}
#line default
#line hidden
WriteLiteral(" <section");
WriteLiteral(" id=\"layout_Page\"");
WriteLiteral(">\r\n");
WriteLiteral(" ");
#line 28 "..\..\Views\InitialConfig\_Layout.cshtml"
Write(RenderBody());
#line default
#line hidden
WriteLiteral("\r\n </section>\r\n <footer>\r\n Disco v");
#line 31 "..\..\Views\InitialConfig\_Layout.cshtml"
Write(Disco.Web.DiscoApplication.Version);
#line default
#line hidden
WriteLiteral("\r\n </footer>\r\n </div>\r\n</body>\r\n</html>");
}
}
}
#pragma warning restore 1591
@@ -1,4 +1,5 @@
@{
Layout = MVC.InitialConfig.Views._Layout;
ViewContext.ViewBag.IsInitialConfig = true;
Layout = MVC.Shared.Views._PublicLayout;
Html.BundleDeferred("~/Style/InitialConfig");
}
@@ -2,7 +2,7 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.34011
// Runtime Version:4.0.30319.34014
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
@@ -47,7 +47,8 @@ namespace Disco.Web.Views.InitialConfig
#line 1 "..\..\Views\InitialConfig\_ViewStart.cshtml"
Layout = MVC.InitialConfig.Views._Layout;
ViewContext.ViewBag.IsInitialConfig = true;
Layout = MVC.Shared.Views._PublicLayout;
Html.BundleDeferred("~/Style/InitialConfig");
+9 -5
View File
@@ -5,9 +5,11 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<title>Disco - @CommonHelpers.BreadcrumbsTitle(ViewBag.Title)</title>
<title>Disco@{if(ViewBag.Title != null){<text> - @CommonHelpers.BreadcrumbsTitle(ViewBag.Title)</text>}}</title>
<link rel="shortcut icon" type="image/x-icon" href="/favicon.ico?v=20131224c" />
<meta name="application-name" content="Disco" />
<meta name="msapplication-starturl" content="/" />
<meta name="msapplication-tooltip" content="Open Disco" />
@Html.BundleRenderDeferred()
@RenderSection("head", false)
</head>
@@ -17,19 +19,21 @@
<div id="heading">
<a href="@Url.Action(MVC.Job.Index())"><i title="Disco - ICT Management"></i></a>
</div>
@if (ViewBag.IsInitialConfig != null){<text>
<nav>
<ul id="menu">
<li class="active">@Html.ActionLink("Reports", MVC.Public.Public.Index())</li>
<li>@Html.ActionLink("Administration", MVC.Job.Index(), accesskey: "1")</li>
</ul>
</nav>
</text>}
</header>
<div id="layout_PageHeading">@CommonHelpers.Breadcrumbs(ViewBag.Title)</div>
@if(ViewBag.Title != null){<div id="layout_PageHeading">@CommonHelpers.Breadcrumbs(ViewBag.Title)</div>}
<section id="layout_Page">
@RenderBody()
</section>
<footer>
Disco v@(Disco.Web.DiscoApplication.Version) @@ @(Disco.Web.DiscoApplication.OrganisationName) | @Html.ActionLink("Credits", MVC.Public.Public.Credits()) | @Html.ActionLink("Licence", MVC.Public.Public.Licence())
Disco v@(Disco.Web.DiscoApplication.Version) @if (ViewBag.IsInitialConfig != null){<text>@@ @(Disco.Web.DiscoApplication.OrganisationName) | @Html.ActionLink("Credits", MVC.Public.Public.Credits()) | @Html.ActionLink("Licence", MVC.Public.Public.Licence())</text>}
</footer>
</div>
@{ Disco.Services.Plugins.Features.UIExtension.UIExtensions.ExecuteExtensionResult(this); }
+128 -40
View File
@@ -2,7 +2,7 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.34011
// Runtime Version:4.0.30319.34014
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
@@ -53,31 +53,61 @@ namespace Disco.Web.Views.Shared
#line default
#line hidden
WriteLiteral("\r\n<!DOCTYPE html>\r\n<html>\r\n<head>\r\n <meta");
WriteLiteral(" charset=\"utf-8\"");
WriteLiteral(" />\r\n <meta");
WriteLiteral(" http-equiv=\"X-UA-Compatible\"");
WriteLiteral(" content=\"IE=edge\"");
WriteLiteral(" />\r\n <title>Disco - ");
WriteLiteral("\r\n<!DOCTYPE html>\r\n<html>\r\n<head>\r\n <title>Disco");
#line 10 "..\..\Views\Shared\_PublicLayout.cshtml"
Write(CommonHelpers.BreadcrumbsTitle(ViewBag.Title));
#line 8 "..\..\Views\Shared\_PublicLayout.cshtml"
if(ViewBag.Title != null){
#line default
#line hidden
WriteLiteral(" - ");
#line 8 "..\..\Views\Shared\_PublicLayout.cshtml"
Write(CommonHelpers.BreadcrumbsTitle(ViewBag.Title));
#line default
#line hidden
WriteLiteral("</title>\r\n");
#line 8 "..\..\Views\Shared\_PublicLayout.cshtml"
}
#line default
#line hidden
WriteLiteral("</title>\r\n <link");
WriteLiteral(" rel=\"shortcut icon\"");
WriteLiteral(" type=\"image/x-icon\"");
WriteLiteral(" href=\"/favicon.ico?v=20131224c\"");
WriteLiteral(" />\r\n <meta");
WriteLiteral(" name=\"application-name\"");
WriteLiteral(" content=\"Disco\"");
WriteLiteral(" />\r\n <meta");
WriteLiteral(" name=\"msapplication-starturl\"");
WriteLiteral(" content=\"/\"");
WriteLiteral(" />\r\n <meta");
WriteLiteral(" name=\"msapplication-tooltip\"");
WriteLiteral(" content=\"Open Disco\"");
WriteLiteral(" />\r\n");
WriteLiteral(" ");
#line 11 "..\..\Views\Shared\_PublicLayout.cshtml"
#line 13 "..\..\Views\Shared\_PublicLayout.cshtml"
Write(Html.BundleRenderDeferred());
@@ -88,7 +118,7 @@ WriteLiteral("\r\n");
WriteLiteral(" ");
#line 12 "..\..\Views\Shared\_PublicLayout.cshtml"
#line 14 "..\..\Views\Shared\_PublicLayout.cshtml"
Write(RenderSection("head", false));
@@ -108,21 +138,35 @@ WriteLiteral(" id=\"heading\"");
WriteLiteral(">\r\n <a");
WriteAttribute("href", Tuple.Create(" href=\"", 491), Tuple.Create("\"", 526)
WriteAttribute("href", Tuple.Create(" href=\"", 703), Tuple.Create("\"", 738)
#line 18 "..\..\Views\Shared\_PublicLayout.cshtml"
, Tuple.Create(Tuple.Create("", 498), Tuple.Create<System.Object, System.Int32>(Url.Action(MVC.Job.Index())
#line 20 "..\..\Views\Shared\_PublicLayout.cshtml"
, Tuple.Create(Tuple.Create("", 710), Tuple.Create<System.Object, System.Int32>(Url.Action(MVC.Job.Index())
#line default
#line hidden
, 498), false)
, 710), false)
);
WriteLiteral("><i");
WriteLiteral(" title=\"Disco - ICT Management\"");
WriteLiteral("></i></a>\r\n </div>\r\n <nav>\r\n <ul");
WriteLiteral("></i></a>\r\n </div>\r\n");
#line 22 "..\..\Views\Shared\_PublicLayout.cshtml"
#line default
#line hidden
#line 22 "..\..\Views\Shared\_PublicLayout.cshtml"
if (ViewBag.IsInitialConfig != null){
#line default
#line hidden
WriteLiteral("\r\n <nav>\r\n <ul");
WriteLiteral(" id=\"menu\"");
@@ -133,7 +177,7 @@ WriteLiteral(" class=\"active\"");
WriteLiteral(">");
#line 22 "..\..\Views\Shared\_PublicLayout.cshtml"
#line 25 "..\..\Views\Shared\_PublicLayout.cshtml"
Write(Html.ActionLink("Reports", MVC.Public.Public.Index()));
@@ -142,27 +186,58 @@ WriteLiteral(">");
WriteLiteral("</li>\r\n <li>");
#line 23 "..\..\Views\Shared\_PublicLayout.cshtml"
#line 26 "..\..\Views\Shared\_PublicLayout.cshtml"
Write(Html.ActionLink("Administration", MVC.Job.Index(), accesskey: "1"));
#line default
#line hidden
WriteLiteral("</li>\r\n </ul>\r\n </nav>\r\n </header>\r\n <div" +
"");
WriteLiteral("</li>\r\n </ul>\r\n </nav>\r\n ");
#line 29 "..\..\Views\Shared\_PublicLayout.cshtml"
}
#line default
#line hidden
WriteLiteral(" </header>\r\n");
#line 31 "..\..\Views\Shared\_PublicLayout.cshtml"
#line default
#line hidden
#line 31 "..\..\Views\Shared\_PublicLayout.cshtml"
if(ViewBag.Title != null){
#line default
#line hidden
WriteLiteral("<div");
WriteLiteral(" id=\"layout_PageHeading\"");
WriteLiteral(">");
#line 27 "..\..\Views\Shared\_PublicLayout.cshtml"
Write(CommonHelpers.Breadcrumbs(ViewBag.Title));
#line 31 "..\..\Views\Shared\_PublicLayout.cshtml"
Write(CommonHelpers.Breadcrumbs(ViewBag.Title));
#line default
#line hidden
WriteLiteral("</div>\r\n <section");
WriteLiteral("</div>");
#line 31 "..\..\Views\Shared\_PublicLayout.cshtml"
}
#line default
#line hidden
WriteLiteral(" <section");
WriteLiteral(" id=\"layout_Page\"");
@@ -171,7 +246,7 @@ WriteLiteral(">\r\n");
WriteLiteral(" ");
#line 29 "..\..\Views\Shared\_PublicLayout.cshtml"
#line 33 "..\..\Views\Shared\_PublicLayout.cshtml"
Write(RenderBody());
@@ -180,7 +255,7 @@ WriteLiteral(" ");
WriteLiteral("\r\n </section>\r\n <footer>\r\n Disco v");
#line 32 "..\..\Views\Shared\_PublicLayout.cshtml"
#line 36 "..\..\Views\Shared\_PublicLayout.cshtml"
Write(Disco.Web.DiscoApplication.Version);
@@ -188,11 +263,17 @@ WriteLiteral("\r\n </section>\r\n <footer>\r\n Disco v"
#line hidden
WriteLiteral(" ");
#line 36 "..\..\Views\Shared\_PublicLayout.cshtml"
if (ViewBag.IsInitialConfig != null){
#line default
#line hidden
WriteLiteral("@ ");
#line 32 "..\..\Views\Shared\_PublicLayout.cshtml"
Write(Disco.Web.DiscoApplication.OrganisationName);
#line 36 "..\..\Views\Shared\_PublicLayout.cshtml"
Write(Disco.Web.DiscoApplication.OrganisationName);
#line default
@@ -200,8 +281,8 @@ WriteLiteral("@ ");
WriteLiteral(" | ");
#line 32 "..\..\Views\Shared\_PublicLayout.cshtml"
Write(Html.ActionLink("Credits", MVC.Public.Public.Credits()));
#line 36 "..\..\Views\Shared\_PublicLayout.cshtml"
Write(Html.ActionLink("Credits", MVC.Public.Public.Credits()));
#line default
@@ -209,22 +290,29 @@ WriteLiteral(" | ");
WriteLiteral(" | ");
#line 32 "..\..\Views\Shared\_PublicLayout.cshtml"
Write(Html.ActionLink("Licence", MVC.Public.Public.Licence()));
#line 36 "..\..\Views\Shared\_PublicLayout.cshtml"
Write(Html.ActionLink("Licence", MVC.Public.Public.Licence()));
#line default
#line hidden
WriteLiteral("\r\n </footer>\r\n </div>\r\n");
#line 36 "..\..\Views\Shared\_PublicLayout.cshtml"
}
#line 35 "..\..\Views\Shared\_PublicLayout.cshtml"
#line default
#line hidden
WriteLiteral(" </footer>\r\n </div>\r\n");
#line 39 "..\..\Views\Shared\_PublicLayout.cshtml"
#line default
#line hidden
#line 35 "..\..\Views\Shared\_PublicLayout.cshtml"
#line 39 "..\..\Views\Shared\_PublicLayout.cshtml"
Disco.Services.Plugins.Features.UIExtension.UIExtensions.ExecuteExtensionResult(this);
#line default