GIT: perform LF normalization

This commit is contained in:
Gary Sharp
2013-02-28 17:15:46 +11:00
parent 989f08a24d
commit 7d9be5620d
729 changed files with 300734 additions and 300712 deletions
+339 -339
View File
@@ -1,339 +1,339 @@
@{
ViewBag.Title = "Credits";
Html.BundleDeferred("~/Style/Credits");
}
<h2>
Organisations</h2>
<div id="organisationCredits">
<span class="message">The development team would like to thank the following organisations
for their generous contributions:</span>
<ul>
<li><a href="http://www.geelonghigh.vic.edu.au/" target="_blank">Geelong High School</a></li>
<li><a href="http://www.bellarinesc.vic.edu.au/" target="_blank">Bellarine Secondary
College</a></li>
</ul>
</div>
<hr />
<table id="pageMenu">
<tr>
<td>
<h2>
Platform</h2>
<div class="pageMenuArea MicrosoftNET">
<a href="http://www.microsoft.com/net/" target="_blank">Microsoft .NET Framework</a>
<div class="pageMenuBlurb">
The Microsoft .NET Framework is the hosting virtual machine most of Disco runs on.
Most of Disco's components are written in <a href="http://msdn.microsoft.com/en-us/vstudio/hh388566.aspx"
target="_blank">C#</a>.
</div>
</div>
<div class="pageMenuArea MicrosoftASPNET">
<a href="http://www.asp.net/" target="_blank">Microsoft ASP.NET Framework</a>
<div class="pageMenuBlurb">
The Microsoft ASP.NET Framework powers all Web features of this web application.
<a href="http://www.nuget.org/packages/Microsoft.Web.Optimization" target="_blank">Microsoft
Web Optimization - Bundling</a> is used to provide JavaScript, CSS and LESS
minification and bundling.
</div>
<a href="http://www.asp.net/" target="_blank">Microsoft ASP.NET MVC Framework</a>
<div class="pageMenuBlurb">
The Microsoft ASP.NET MVC Framework providers the Model-View-Controller pattern
for ASP.NET which is implemented by this web application. Most of this web application's
views are written in <a href="http://www.asp.net/web-pages/tutorials/basics/2-introduction-to-asp-net-web-programming-using-the-razor-syntax"
target="_blank">C# Razor Syntax</a>. Web application start-up time is increase
by pre-compiling all Razor views with <a href="http://razorgenerator.codeplex.com/"
target="_blank">Razor Generator</a>.
</div>
<a href="http://www.asp.net/entity-framework" target="_blank">Microsoft .NET Entity
Framework</a>
<div class="pageMenuBlurb">
The Microsoft .NET Entity Framework is the Object-Relational Mapping (ORM) toolset
used by this web application.
</div>
</div>
<div class="pageMenuArea MicrosoftSQLServer">
<a href="http://www.microsoft.com/sqlserver/" target="_blank">Microsoft SQL Server</a>
<div class="pageMenuBlurb">
Microsoft SQL Server is used for storage and querying of relational data.
</div>
<a href="http://msdn.microsoft.com/en-us/data/ff687142" target="_blank">Microsoft SQL
Server Compact</a>
<div class="pageMenuBlurb">
Microsoft SQL Server Compact provides file-based relational data storage. It is
used by this web application to store all logs and is available for plug-ins to
use for additional storage.
</div>
</div>
<div class="pageMenuArea MicrosoftSilverlight">
<a href="http://www.silverlight.net/" target="_blank">Microsoft Silverlight</a>
<div class="pageMenuBlurb">
Microsoft Silverlight is an application framework for writing and running rich Internet
applications. The run-time environment for Silverlight is available as a plug-in
for web browsers running under Microsoft Windows and Mac OS X. Silverlight supports
multimedia, graphics and animation, and give developers support for CLI languages
and development tools.
</div>
</div>
<div class="pageMenuArea SignalR">
<a href="http://signalr.net/" target="_blank">SignalR</a><span class="licence"><a
href="http://www.opensource.org/licenses/mit-license.php" target="_blank">MIT</a></span>
<div class="pageMenuBlurb">
SignalR is used extensively by this web application to provide real-time feedback
to the client browser. This includes real-time log viewing, enrolment status, document
import status and noticeboards.
</div>
</div>
<div class="pageMenuArea nuget">
<a href="http://nuget.org/" target="_blank">nuget</a><span class="licence"><a href="http://www.apache.org/licenses/LICENSE-2.0.html"
target="_blank">Apache License, Version 2.0</a></span>
<div class="pageMenuBlurb">
NuGet is a Visual Studio extension that makes it easy to install and update third-party
libraries and tools in Visual Studio.
</div>
</div>
<div class="pageMenuArea T4MVC">
<a href="http://t4mvc.codeplex.com/" target="_blank">T4MVC</a><span class="licence"><a
href="http://www.apache.org/licenses/LICENSE-2.0.html" target="_blank">Apache License,
Version 2.0</a></span>
<div class="pageMenuBlurb">
T4MVC is a T4 template for ASP.NET MVC apps that creates strongly typed helpers
that eliminate the use of literal strings when referring the controllers, actions
and views.
</div>
</div>
</td>
<td>
<h2>
SDK/Helpers</h2>
<div class="pageMenuArea dotless">
<a href="http://www.dotlesscss.org/" target="_blank">.less</a><span class="licence"><a
href="http://www.apache.org/licenses/LICENSE-2.0.html" target="_blank">Apache License,
Version 2.0</a></span>
<div class="pageMenuBlurb">
.less is a Microsoft .NET Framework port of the popular <a href="http://lesscss.org/"
target="_blank">LESS JavaScript library</a>. LESS syntax adds features to the
Cascading StyleSheet specification for developers to take advantage of. It is compiled
to CSS for the client browser to consume.
</div>
</div>
<div class="pageMenuArea SpringNET">
<a href="http://www.springframework.net/" target="_blank">Spring.net</a><span class="licence"><a
href="http://www.apache.org/licenses/LICENSE-2.0.html" target="_blank">Apache License,
Version 2.0</a></span>
<div class="pageMenuBlurb">
Spring.NET is an open source application framework that makes building enterprise
.NET applications easier. In particular, this application makes use of <a href="http://www.springframework.net/doc-latest/reference/html/expressions.html"
target="_blank">Spring Expression Evaluation</a>.
</div>
</div>
<div class="pageMenuArea Quartz">
<a href="http://quartznet.sourceforge.net/" target="_blank">Quartz.NET</a><span
class="licence"><a href="http://www.apache.org/licenses/LICENSE-2.0.html" target="_blank">Apache
License, Version 2.0</a></span>
<div class="pageMenuBlurb">
Quartz.NET is a full-featured, open source job scheduling system that can be used
from smallest apps to large scale enterprise systems. Quartz.NET is a pure .NET
library written in C# and is a port of very popular open source Java job scheduling
framework, <a href="http://www.quartz-scheduler.org/" target="_blank">Quartz</a>.
</div>
</div>
<div class="pageMenuArea iTextSharp">
<a href="http://sourceforge.net/projects/itextsharp/" target="_blank">iTextSharp</a><span
class="licence"><a href="http://opensource.org/licenses/AGPL-3.0" target="_blank">AGPL</a></span>
<div class="pageMenuBlurb">
iText# (iTextSharp) is a port of the iText open source java library for PDF generation
written entirely in C# for the .NET platform.
</div>
</div>
<div class="pageMenuArea CrystalIcons">
<a href="http://everaldo.com/crystal/" target="_blank">Crystal Project Icons</a><span
class="licence"><a href="http://opensource.org/licenses/LGPL-2.1" target="_blank">LGPLv2.1</a></span>
<div class="pageMenuBlurb">
The Crystal Project produces a set of icons targeted towards Linux based operating
system distributions.
</div>
</div>
<div class="pageMenuArea JsonNET">
<a href="http://json.codeplex.com/" target="_blank">Json.NET</a><span class="licence"><a
href="http://www.opensource.org/licenses/mit-license.php" target="_blank">MIT</a></span>
<div class="pageMenuBlurb">
While in most places the (Microsoft .NET Framework) built-in JSON Serializer is
used, however on occasion (and where other frameworks require) Json.NET is used.
</div>
</div>
<div class="pageMenuArea LibTiff">
<a href="http://bitmiracle.com/libtiff/" target="_blank">LibTiff.Net</a><span class="licence"><a
href="http://bitmiracle.com/libtiff/help/license-and-copyright.aspx" target="_blank">Copyright</a>
| <a href="http://opensource.org/licenses/BSD-3-Clause" target="_blank">New BSD</a></span>
<div class="pageMenuBlurb">
LibTiff.Net provides support for the Tag Image File Format (TIFF), a widely used
format for storing image data.
</div>
</div>
<div class="pageMenuArea DotNetZip">
<a href="http://dotnetzip.codeplex.com/" target="_blank">DotNetZip</a><span class="licence"><a
href="http://opensource.org/licenses/MS-PL" target="_blank">Ms-PL</a></span>
<div class="pageMenuBlurb">
DotNetZip is an easy-to-use, FAST, FREE class library and toolset for manipulating
zip files or folders.
</div>
</div>
<div class="pageMenuArea SharpSSH">
<a href="http://www.tamirgal.com/blog/page/SharpSSH.aspx" target="_blank">SharpSSH</a><span
class="licence"><a href="http://www.jcraft.com/jsch/LICENSE.txt" target="_blank">BSD-Style</a></span>
<div class="pageMenuBlurb">
SharpSSH is a pure .NET implementation of the SSH2 client protocol suite. It provides
an API for communication with SSH servers and can be integrated into any .NET application.
The library is a C# port of the <a href="http://www.jcraft.com/jsch/" target="_blank">
JSch</a> project from JCraft Inc.
</div>
</div>
<div class="pageMenuArea ZXing">
<a href="http://code.google.com/p/zxing/" target="_blank">ZXing</a><span class="licence"><a
href="http://www.apache.org/licenses/LICENSE-2.0.html" target="_blank">Apache License,
Version 2.0</a></span>
<div class="pageMenuBlurb">
ZXing (pronounced "zebra crossing") is an open-source, multi-format 1D/2D barcode
image processing library implemented in Java, with ports to other languages.
</div>
</div>
<div class="pageMenuArea HtmlAgilityPack">
<a href="http://htmlagilitypack.codeplex.com/" target="_blank">Html Agility Pack</a><span
class="licence"><a href="http://opensource.org/licenses/MS-PL" target="_blank">Ms-PL</a></span>
<div class="pageMenuBlurb">
This is an agile HTML parser that builds a read/write DOM and supports plain XPATH
or XSLT. It is a .NET code library that allows you to parse "out of the web" HTML
files. The parser is very tolerant with "real world" malformed HTML.
</div>
</div>
</td>
<td>
<h2>
Web Client</h2>
<div class="pageMenuArea jQuery">
<a href="http://jquery.com/" target="_blank">jQuery</a><span class="licence"><a href="http://www.opensource.org/licenses/mit-license.php"
target="_blank">MIT</a>/<a href="http://www.opensource.org/licenses/GPL-2.0" target="_blank">GPLv2</a></span>
<div class="pageMenuBlurb">
jQuery is used extensively by this web application to improve browser compatibility
and speed up development by providing query mechanisms for the browsers document
object model (DOM).
</div>
<div class="pageMenuAreaSub">
<h3>
Plugins:</h3>
<div>
<a href="http://github.com/jquery/jquery-color#readme" target="_blank">Color</a>
- The main purpose of this plugin to animate color properties on elements using
jQuery's .animate() <span class="licence"><a href="http://www.opensource.org/licenses/mit-license.php"
target="_blank">MIT</a>/<a href="http://www.opensource.org/licenses/GPL-3.0" target="_blank">GPL</a></span>
</div>
@* <div>
<a href="http://plugins.jquery.com/project/equal-height" target="_blank">Equal Height</a>
- This plug-in makes HTML-elements equal height by adjusting their min-height CSS
properties. <span class="licence"><a href="http://creativecommons.org/licenses/by/3.0/"
target="_blank">Creative Commons 3.0 Attribution</a></span>
</div>*@
<div>
<a href="http://www.timdown.co.uk/jshashtable/" target="_blank">jshashtable</a>
- jshashtable is a JavaScript implementation of a hash table. It associates objects
("keys") with other objects ("values"). <span class="licence"><a href="http://www.apache.org/licenses/LICENSE-2.0.html"
target="_blank">Apache License, Version 2.0</a></span>
</div>
<div>
<a href="http://code.google.com/p/jquery-numberformatter/" target="_blank">Number Formatter</a>
- This plugin is a number formatting and parsing plugin for jQuery. <span class="licence">
<a href="http://www.opensource.org/licenses/mit-license.php" target="_blank">MIT</a></span>
</div>
<div>
<a href="http://code.google.com/p/jquery-watermark/" target="_blank">Watermark</a>
- This simple-to-use jQuery plugin adds watermark capability to HTML input and textarea
elements. <span class="licence"><a href="http://www.opensource.org/licenses/mit-license.php"
target="_blank">MIT</a>/<a href="http://www.opensource.org/licenses/GPL-2.0" target="_blank">GPL2</a></span>
</div>
<div>
<a href="http://bassistance.de/jquery-plugins/jquery-plugin-validation/" target="_blank">
Validation</a> - This jQuery plugin makes simple client-side form validation
trivial, while offering lots of option for customization. <span class="licence"><a
href="http://www.opensource.org/licenses/mit-license.php" target="_blank">MIT</a>/<a
href="http://www.opensource.org/licenses/GPL-3.0" target="_blank">GPL</a></span>
</div>
</div>
</div>
<div class="pageMenuArea jQueryUI">
<a href="http://jqueryui.com/" target="_blank">jQuery UI</a><span class="licence"><a
href="http://www.opensource.org/licenses/mit-license.php" target="_blank">MIT</a>/<a
href="http://www.opensource.org/licenses/GPL-2.0" target="_blank">GPL2</a></span>
<div class="pageMenuBlurb">
jQuery UI is used extensively by this web application to provide in-browser user
interface widgets such as dialogs, date pickers and auto-complete drop-down menus.
</div>
<div class="pageMenuAreaSub">
<h3>
Plugins:</h3>
<div>
<a href="http://code.google.com/p/dynatree/" target="_blank">Dynatree</a> - Dynatree
is a jQuery plugin that allows the creation of dynamic html tree view controls using
JavaScript. <span class="licence"><a href="http://www.opensource.org/licenses/mit-license.php"
target="_blank">MIT</a></span>
</div>
<div>
<a href="http://isotope.metafizzy.co/" target="_blank">Isotope</a> - Isotope is
a jQuery plugin which provides dynamic layout and transition functionality. <span
class="licence"><a href="http://isotope.metafizzy.co/docs/license.html" target="_blank">
non-commercial</a></span>
</div>
<div>
<a href="http://code.google.com/p/jquery-timepicker/" target="_blank">TimePicker</a>
- jQuery plugin that replaces a single text input with a set of pulldown menus to
select hour, minute, and am/pm. <span class="licence"><a href="http://www.opensource.org/licenses/mit-license.php"
target="_blank">MIT</a></span>
</div>
</div>
</div>
<div class="pageMenuArea Modernizr">
<a href="http://modernizr.com/" target="_blank">Modernizr</a><span class="licence"><a
href="http://www.opensource.org/licenses/mit-license.php" target="_blank">MIT</a>/<a
href="http://modernizr.com/license/" target="_blank">BSD-Style</a></span>
<div class="pageMenuBlurb">
Modernizr is an open-source JavaScript library that helps you build the next generation
of HTML5 and CSS3-powered websites.
</div>
</div>
<div class="pageMenuArea knockoutjs">
<a href="http://knockoutjs.com/" target="_blank">Knockout.js</a><span class="licence"><a
href="http://www.opensource.org/licenses/mit-license.php" target="_blank">MIT</a></span>
<div class="pageMenuBlurb">
Knockout.js is used by this web application to provider Model-View-Controller (MVC)
patterns to the client browser. It enables advanced dynamic layouts such as the
real-time enrolment or document import status.
</div>
</div>
<div class="pageMenuArea HighchartsJS">
<a href="http://www.highcharts.com/" target="_blank">Highcharts JS</a><span class="licence"><a
href="http://creativecommons.org/licenses/by-nc/3.0/" target="_blank">CC 3.0 Attrib-NonCommercial</a></span>
<div class="pageMenuBlurb">
Highcharts JS is used by this web application to display in-browser dynamic charts.
</div>
</div>
<div class="pageMenuArea TinyMCE">
<a href="http://www.tinymce.com/" target="_blank">TinyMCE</a><span class="licence"><a
href="http://opensource.org/licenses/LGPL-2.1" target="_blank">LGPLv2.1</a></span>
<div class="pageMenuBlurb">
TinyMCE is a platform independent web based JavaScript HTML WYSIWYG editor control.
TinyMCE has the ability to convert HTML TEXTAREA fields or other HTML elements to
editor instances.
</div>
</div>
<div class="pageMenuArea Shadowboxjs">
<a href="http://www.shadowbox-js.com/" target="_blank">Shadowbox.js</a><span class="licence"><a
href="http://www.shadowbox-js.com/LICENSE" target="_blank">Non-Commercial License
v1.0</a></span>
<div class="pageMenuBlurb">
Shadowbox is a web-based media viewer application that supports all of the web's
most popular media publishing formats. Shadowbox can showcase a wide assortment
of media in all major browsers without navigating users away from the linking page.
</div>
</div>
</td>
</tr>
</table>
@{
ViewBag.Title = "Credits";
Html.BundleDeferred("~/Style/Credits");
}
<h2>
Organisations</h2>
<div id="organisationCredits">
<span class="message">The development team would like to thank the following organisations
for their generous contributions:</span>
<ul>
<li><a href="http://www.geelonghigh.vic.edu.au/" target="_blank">Geelong High School</a></li>
<li><a href="http://www.bellarinesc.vic.edu.au/" target="_blank">Bellarine Secondary
College</a></li>
</ul>
</div>
<hr />
<table id="pageMenu">
<tr>
<td>
<h2>
Platform</h2>
<div class="pageMenuArea MicrosoftNET">
<a href="http://www.microsoft.com/net/" target="_blank">Microsoft .NET Framework</a>
<div class="pageMenuBlurb">
The Microsoft .NET Framework is the hosting virtual machine most of Disco runs on.
Most of Disco's components are written in <a href="http://msdn.microsoft.com/en-us/vstudio/hh388566.aspx"
target="_blank">C#</a>.
</div>
</div>
<div class="pageMenuArea MicrosoftASPNET">
<a href="http://www.asp.net/" target="_blank">Microsoft ASP.NET Framework</a>
<div class="pageMenuBlurb">
The Microsoft ASP.NET Framework powers all Web features of this web application.
<a href="http://www.nuget.org/packages/Microsoft.Web.Optimization" target="_blank">Microsoft
Web Optimization - Bundling</a> is used to provide JavaScript, CSS and LESS
minification and bundling.
</div>
<a href="http://www.asp.net/" target="_blank">Microsoft ASP.NET MVC Framework</a>
<div class="pageMenuBlurb">
The Microsoft ASP.NET MVC Framework providers the Model-View-Controller pattern
for ASP.NET which is implemented by this web application. Most of this web application's
views are written in <a href="http://www.asp.net/web-pages/tutorials/basics/2-introduction-to-asp-net-web-programming-using-the-razor-syntax"
target="_blank">C# Razor Syntax</a>. Web application start-up time is increase
by pre-compiling all Razor views with <a href="http://razorgenerator.codeplex.com/"
target="_blank">Razor Generator</a>.
</div>
<a href="http://www.asp.net/entity-framework" target="_blank">Microsoft .NET Entity
Framework</a>
<div class="pageMenuBlurb">
The Microsoft .NET Entity Framework is the Object-Relational Mapping (ORM) toolset
used by this web application.
</div>
</div>
<div class="pageMenuArea MicrosoftSQLServer">
<a href="http://www.microsoft.com/sqlserver/" target="_blank">Microsoft SQL Server</a>
<div class="pageMenuBlurb">
Microsoft SQL Server is used for storage and querying of relational data.
</div>
<a href="http://msdn.microsoft.com/en-us/data/ff687142" target="_blank">Microsoft SQL
Server Compact</a>
<div class="pageMenuBlurb">
Microsoft SQL Server Compact provides file-based relational data storage. It is
used by this web application to store all logs and is available for plug-ins to
use for additional storage.
</div>
</div>
<div class="pageMenuArea MicrosoftSilverlight">
<a href="http://www.silverlight.net/" target="_blank">Microsoft Silverlight</a>
<div class="pageMenuBlurb">
Microsoft Silverlight is an application framework for writing and running rich Internet
applications. The run-time environment for Silverlight is available as a plug-in
for web browsers running under Microsoft Windows and Mac OS X. Silverlight supports
multimedia, graphics and animation, and give developers support for CLI languages
and development tools.
</div>
</div>
<div class="pageMenuArea SignalR">
<a href="http://signalr.net/" target="_blank">SignalR</a><span class="licence"><a
href="http://www.opensource.org/licenses/mit-license.php" target="_blank">MIT</a></span>
<div class="pageMenuBlurb">
SignalR is used extensively by this web application to provide real-time feedback
to the client browser. This includes real-time log viewing, enrolment status, document
import status and noticeboards.
</div>
</div>
<div class="pageMenuArea nuget">
<a href="http://nuget.org/" target="_blank">nuget</a><span class="licence"><a href="http://www.apache.org/licenses/LICENSE-2.0.html"
target="_blank">Apache License, Version 2.0</a></span>
<div class="pageMenuBlurb">
NuGet is a Visual Studio extension that makes it easy to install and update third-party
libraries and tools in Visual Studio.
</div>
</div>
<div class="pageMenuArea T4MVC">
<a href="http://t4mvc.codeplex.com/" target="_blank">T4MVC</a><span class="licence"><a
href="http://www.apache.org/licenses/LICENSE-2.0.html" target="_blank">Apache License,
Version 2.0</a></span>
<div class="pageMenuBlurb">
T4MVC is a T4 template for ASP.NET MVC apps that creates strongly typed helpers
that eliminate the use of literal strings when referring the controllers, actions
and views.
</div>
</div>
</td>
<td>
<h2>
SDK/Helpers</h2>
<div class="pageMenuArea dotless">
<a href="http://www.dotlesscss.org/" target="_blank">.less</a><span class="licence"><a
href="http://www.apache.org/licenses/LICENSE-2.0.html" target="_blank">Apache License,
Version 2.0</a></span>
<div class="pageMenuBlurb">
.less is a Microsoft .NET Framework port of the popular <a href="http://lesscss.org/"
target="_blank">LESS JavaScript library</a>. LESS syntax adds features to the
Cascading StyleSheet specification for developers to take advantage of. It is compiled
to CSS for the client browser to consume.
</div>
</div>
<div class="pageMenuArea SpringNET">
<a href="http://www.springframework.net/" target="_blank">Spring.net</a><span class="licence"><a
href="http://www.apache.org/licenses/LICENSE-2.0.html" target="_blank">Apache License,
Version 2.0</a></span>
<div class="pageMenuBlurb">
Spring.NET is an open source application framework that makes building enterprise
.NET applications easier. In particular, this application makes use of <a href="http://www.springframework.net/doc-latest/reference/html/expressions.html"
target="_blank">Spring Expression Evaluation</a>.
</div>
</div>
<div class="pageMenuArea Quartz">
<a href="http://quartznet.sourceforge.net/" target="_blank">Quartz.NET</a><span
class="licence"><a href="http://www.apache.org/licenses/LICENSE-2.0.html" target="_blank">Apache
License, Version 2.0</a></span>
<div class="pageMenuBlurb">
Quartz.NET is a full-featured, open source job scheduling system that can be used
from smallest apps to large scale enterprise systems. Quartz.NET is a pure .NET
library written in C# and is a port of very popular open source Java job scheduling
framework, <a href="http://www.quartz-scheduler.org/" target="_blank">Quartz</a>.
</div>
</div>
<div class="pageMenuArea iTextSharp">
<a href="http://sourceforge.net/projects/itextsharp/" target="_blank">iTextSharp</a><span
class="licence"><a href="http://opensource.org/licenses/AGPL-3.0" target="_blank">AGPL</a></span>
<div class="pageMenuBlurb">
iText# (iTextSharp) is a port of the iText open source java library for PDF generation
written entirely in C# for the .NET platform.
</div>
</div>
<div class="pageMenuArea CrystalIcons">
<a href="http://everaldo.com/crystal/" target="_blank">Crystal Project Icons</a><span
class="licence"><a href="http://opensource.org/licenses/LGPL-2.1" target="_blank">LGPLv2.1</a></span>
<div class="pageMenuBlurb">
The Crystal Project produces a set of icons targeted towards Linux based operating
system distributions.
</div>
</div>
<div class="pageMenuArea JsonNET">
<a href="http://json.codeplex.com/" target="_blank">Json.NET</a><span class="licence"><a
href="http://www.opensource.org/licenses/mit-license.php" target="_blank">MIT</a></span>
<div class="pageMenuBlurb">
While in most places the (Microsoft .NET Framework) built-in JSON Serializer is
used, however on occasion (and where other frameworks require) Json.NET is used.
</div>
</div>
<div class="pageMenuArea LibTiff">
<a href="http://bitmiracle.com/libtiff/" target="_blank">LibTiff.Net</a><span class="licence"><a
href="http://bitmiracle.com/libtiff/help/license-and-copyright.aspx" target="_blank">Copyright</a>
| <a href="http://opensource.org/licenses/BSD-3-Clause" target="_blank">New BSD</a></span>
<div class="pageMenuBlurb">
LibTiff.Net provides support for the Tag Image File Format (TIFF), a widely used
format for storing image data.
</div>
</div>
<div class="pageMenuArea DotNetZip">
<a href="http://dotnetzip.codeplex.com/" target="_blank">DotNetZip</a><span class="licence"><a
href="http://opensource.org/licenses/MS-PL" target="_blank">Ms-PL</a></span>
<div class="pageMenuBlurb">
DotNetZip is an easy-to-use, FAST, FREE class library and toolset for manipulating
zip files or folders.
</div>
</div>
<div class="pageMenuArea SharpSSH">
<a href="http://www.tamirgal.com/blog/page/SharpSSH.aspx" target="_blank">SharpSSH</a><span
class="licence"><a href="http://www.jcraft.com/jsch/LICENSE.txt" target="_blank">BSD-Style</a></span>
<div class="pageMenuBlurb">
SharpSSH is a pure .NET implementation of the SSH2 client protocol suite. It provides
an API for communication with SSH servers and can be integrated into any .NET application.
The library is a C# port of the <a href="http://www.jcraft.com/jsch/" target="_blank">
JSch</a> project from JCraft Inc.
</div>
</div>
<div class="pageMenuArea ZXing">
<a href="http://code.google.com/p/zxing/" target="_blank">ZXing</a><span class="licence"><a
href="http://www.apache.org/licenses/LICENSE-2.0.html" target="_blank">Apache License,
Version 2.0</a></span>
<div class="pageMenuBlurb">
ZXing (pronounced "zebra crossing") is an open-source, multi-format 1D/2D barcode
image processing library implemented in Java, with ports to other languages.
</div>
</div>
<div class="pageMenuArea HtmlAgilityPack">
<a href="http://htmlagilitypack.codeplex.com/" target="_blank">Html Agility Pack</a><span
class="licence"><a href="http://opensource.org/licenses/MS-PL" target="_blank">Ms-PL</a></span>
<div class="pageMenuBlurb">
This is an agile HTML parser that builds a read/write DOM and supports plain XPATH
or XSLT. It is a .NET code library that allows you to parse "out of the web" HTML
files. The parser is very tolerant with "real world" malformed HTML.
</div>
</div>
</td>
<td>
<h2>
Web Client</h2>
<div class="pageMenuArea jQuery">
<a href="http://jquery.com/" target="_blank">jQuery</a><span class="licence"><a href="http://www.opensource.org/licenses/mit-license.php"
target="_blank">MIT</a>/<a href="http://www.opensource.org/licenses/GPL-2.0" target="_blank">GPLv2</a></span>
<div class="pageMenuBlurb">
jQuery is used extensively by this web application to improve browser compatibility
and speed up development by providing query mechanisms for the browsers document
object model (DOM).
</div>
<div class="pageMenuAreaSub">
<h3>
Plugins:</h3>
<div>
<a href="http://github.com/jquery/jquery-color#readme" target="_blank">Color</a>
- The main purpose of this plugin to animate color properties on elements using
jQuery's .animate() <span class="licence"><a href="http://www.opensource.org/licenses/mit-license.php"
target="_blank">MIT</a>/<a href="http://www.opensource.org/licenses/GPL-3.0" target="_blank">GPL</a></span>
</div>
@* <div>
<a href="http://plugins.jquery.com/project/equal-height" target="_blank">Equal Height</a>
- This plug-in makes HTML-elements equal height by adjusting their min-height CSS
properties. <span class="licence"><a href="http://creativecommons.org/licenses/by/3.0/"
target="_blank">Creative Commons 3.0 Attribution</a></span>
</div>*@
<div>
<a href="http://www.timdown.co.uk/jshashtable/" target="_blank">jshashtable</a>
- jshashtable is a JavaScript implementation of a hash table. It associates objects
("keys") with other objects ("values"). <span class="licence"><a href="http://www.apache.org/licenses/LICENSE-2.0.html"
target="_blank">Apache License, Version 2.0</a></span>
</div>
<div>
<a href="http://code.google.com/p/jquery-numberformatter/" target="_blank">Number Formatter</a>
- This plugin is a number formatting and parsing plugin for jQuery. <span class="licence">
<a href="http://www.opensource.org/licenses/mit-license.php" target="_blank">MIT</a></span>
</div>
<div>
<a href="http://code.google.com/p/jquery-watermark/" target="_blank">Watermark</a>
- This simple-to-use jQuery plugin adds watermark capability to HTML input and textarea
elements. <span class="licence"><a href="http://www.opensource.org/licenses/mit-license.php"
target="_blank">MIT</a>/<a href="http://www.opensource.org/licenses/GPL-2.0" target="_blank">GPL2</a></span>
</div>
<div>
<a href="http://bassistance.de/jquery-plugins/jquery-plugin-validation/" target="_blank">
Validation</a> - This jQuery plugin makes simple client-side form validation
trivial, while offering lots of option for customization. <span class="licence"><a
href="http://www.opensource.org/licenses/mit-license.php" target="_blank">MIT</a>/<a
href="http://www.opensource.org/licenses/GPL-3.0" target="_blank">GPL</a></span>
</div>
</div>
</div>
<div class="pageMenuArea jQueryUI">
<a href="http://jqueryui.com/" target="_blank">jQuery UI</a><span class="licence"><a
href="http://www.opensource.org/licenses/mit-license.php" target="_blank">MIT</a>/<a
href="http://www.opensource.org/licenses/GPL-2.0" target="_blank">GPL2</a></span>
<div class="pageMenuBlurb">
jQuery UI is used extensively by this web application to provide in-browser user
interface widgets such as dialogs, date pickers and auto-complete drop-down menus.
</div>
<div class="pageMenuAreaSub">
<h3>
Plugins:</h3>
<div>
<a href="http://code.google.com/p/dynatree/" target="_blank">Dynatree</a> - Dynatree
is a jQuery plugin that allows the creation of dynamic html tree view controls using
JavaScript. <span class="licence"><a href="http://www.opensource.org/licenses/mit-license.php"
target="_blank">MIT</a></span>
</div>
<div>
<a href="http://isotope.metafizzy.co/" target="_blank">Isotope</a> - Isotope is
a jQuery plugin which provides dynamic layout and transition functionality. <span
class="licence"><a href="http://isotope.metafizzy.co/docs/license.html" target="_blank">
non-commercial</a></span>
</div>
<div>
<a href="http://code.google.com/p/jquery-timepicker/" target="_blank">TimePicker</a>
- jQuery plugin that replaces a single text input with a set of pulldown menus to
select hour, minute, and am/pm. <span class="licence"><a href="http://www.opensource.org/licenses/mit-license.php"
target="_blank">MIT</a></span>
</div>
</div>
</div>
<div class="pageMenuArea Modernizr">
<a href="http://modernizr.com/" target="_blank">Modernizr</a><span class="licence"><a
href="http://www.opensource.org/licenses/mit-license.php" target="_blank">MIT</a>/<a
href="http://modernizr.com/license/" target="_blank">BSD-Style</a></span>
<div class="pageMenuBlurb">
Modernizr is an open-source JavaScript library that helps you build the next generation
of HTML5 and CSS3-powered websites.
</div>
</div>
<div class="pageMenuArea knockoutjs">
<a href="http://knockoutjs.com/" target="_blank">Knockout.js</a><span class="licence"><a
href="http://www.opensource.org/licenses/mit-license.php" target="_blank">MIT</a></span>
<div class="pageMenuBlurb">
Knockout.js is used by this web application to provider Model-View-Controller (MVC)
patterns to the client browser. It enables advanced dynamic layouts such as the
real-time enrolment or document import status.
</div>
</div>
<div class="pageMenuArea HighchartsJS">
<a href="http://www.highcharts.com/" target="_blank">Highcharts JS</a><span class="licence"><a
href="http://creativecommons.org/licenses/by-nc/3.0/" target="_blank">CC 3.0 Attrib-NonCommercial</a></span>
<div class="pageMenuBlurb">
Highcharts JS is used by this web application to display in-browser dynamic charts.
</div>
</div>
<div class="pageMenuArea TinyMCE">
<a href="http://www.tinymce.com/" target="_blank">TinyMCE</a><span class="licence"><a
href="http://opensource.org/licenses/LGPL-2.1" target="_blank">LGPLv2.1</a></span>
<div class="pageMenuBlurb">
TinyMCE is a platform independent web based JavaScript HTML WYSIWYG editor control.
TinyMCE has the ability to convert HTML TEXTAREA fields or other HTML elements to
editor instances.
</div>
</div>
<div class="pageMenuArea Shadowboxjs">
<a href="http://www.shadowbox-js.com/" target="_blank">Shadowbox.js</a><span class="licence"><a
href="http://www.shadowbox-js.com/LICENSE" target="_blank">Non-Commercial License
v1.0</a></span>
<div class="pageMenuBlurb">
Shadowbox is a web-based media viewer application that supports all of the web's
most popular media publishing formats. Shadowbox can showcase a wide assortment
of media in all major browsers without navigating users away from the linking page.
</div>
</div>
</td>
</tr>
</table>
File diff suppressed because it is too large Load Diff
@@ -1,29 +1,29 @@
@{
ViewBag.Title = Html.ToBreadcrumb("Public Reports", null);
}
<table id="pageMenu">
<tr>
<td style="width: 50%">
<div class="pageMenuArea">
<h2>
Technician Held Devices</h2>
@Html.ActionLinkClass("Report", MVC.Public.UserHeldDevices.Index(), "report")
<div class="pageMenuBlurb">
Display users involved in current jobs where the user's device is held by the technicians.
Also displays users which should report to the technicians to collect their device
which is ready to be returned to them.
</div>
@Html.ActionLinkClass("Noticeboard", MVC.Public.UserHeldDevices.Noticeboard(), "noticeboard")
<div class="pageMenuBlurb">
Display a full-screen active noticeboard screen which lists users involved in current
jobs where the user's device is held by the technicians. Also displays users which
should report to the technicians to collect their device which is ready to be returned
to them.
</div>
</div>
</td>
<td style="width: 50%">
&nbsp;
</td>
</tr>
</table>
@{
ViewBag.Title = Html.ToBreadcrumb("Public Reports", null);
}
<table id="pageMenu">
<tr>
<td style="width: 50%">
<div class="pageMenuArea">
<h2>
Technician Held Devices</h2>
@Html.ActionLinkClass("Report", MVC.Public.UserHeldDevices.Index(), "report")
<div class="pageMenuBlurb">
Display users involved in current jobs where the user's device is held by the technicians.
Also displays users which should report to the technicians to collect their device
which is ready to be returned to them.
</div>
@Html.ActionLinkClass("Noticeboard", MVC.Public.UserHeldDevices.Noticeboard(), "noticeboard")
<div class="pageMenuBlurb">
Display a full-screen active noticeboard screen which lists users involved in current
jobs where the user's device is held by the technicians. Also displays users which
should report to the technicians to collect their device which is ready to be returned
to them.
</div>
</div>
</td>
<td style="width: 50%">
&nbsp;
</td>
</tr>
</table>
@@ -1,115 +1,115 @@
#pragma warning disable 1591
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.17929
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Disco.Web.Areas.Public.Views.Public
{
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.BI.Extensions;
using Disco.Models.Repository;
using Disco.Web;
using Disco.Web.Extensions;
[System.CodeDom.Compiler.GeneratedCodeAttribute("RazorGenerator", "1.5.0.0")]
[System.Web.WebPages.PageVirtualPathAttribute("~/Areas/Public/Views/Public/Index.cshtml")]
public class Index : System.Web.Mvc.WebViewPage<dynamic>
{
public Index()
{
}
public override void Execute()
{
#line 1 "..\..\Areas\Public\Views\Public\Index.cshtml"
ViewBag.Title = Html.ToBreadcrumb("Public Reports", null);
#line default
#line hidden
WriteLiteral("\r\n<table");
WriteLiteral(" id=\"pageMenu\"");
WriteLiteral(">\r\n <tr>\r\n <td");
WriteLiteral(" style=\"width: 50%\"");
WriteLiteral(">\r\n <div");
WriteLiteral(" class=\"pageMenuArea\"");
WriteLiteral(">\r\n <h2>\r\n Technician Held Devices</h2>\r\n");
WriteLiteral(" ");
#line 10 "..\..\Areas\Public\Views\Public\Index.cshtml"
Write(Html.ActionLinkClass("Report", MVC.Public.UserHeldDevices.Index(), "report"));
#line default
#line hidden
WriteLiteral("\r\n <div");
WriteLiteral(" class=\"pageMenuBlurb\"");
WriteLiteral(@">
Display users involved in current jobs where the user's device is held by the technicians.
Also displays users which should report to the technicians to collect their device
which is ready to be returned to them.
</div>
");
WriteLiteral(" ");
#line 16 "..\..\Areas\Public\Views\Public\Index.cshtml"
Write(Html.ActionLinkClass("Noticeboard", MVC.Public.UserHeldDevices.Noticeboard(), "noticeboard"));
#line default
#line hidden
WriteLiteral("\r\n <div");
WriteLiteral(" class=\"pageMenuBlurb\"");
WriteLiteral(@">
Display a full-screen active noticeboard screen which lists users involved in current
jobs where the user's device is held by the technicians. Also displays users which
should report to the technicians to collect their device which is ready to be returned
to them.
</div>
</div>
</td>
<td");
WriteLiteral(" style=\"width: 50%\"");
WriteLiteral(">\r\n &nbsp;\r\n </td>\r\n </tr>\r\n</table>\r\n");
}
}
}
#pragma warning restore 1591
#pragma warning disable 1591
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.17929
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Disco.Web.Areas.Public.Views.Public
{
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.BI.Extensions;
using Disco.Models.Repository;
using Disco.Web;
using Disco.Web.Extensions;
[System.CodeDom.Compiler.GeneratedCodeAttribute("RazorGenerator", "1.5.0.0")]
[System.Web.WebPages.PageVirtualPathAttribute("~/Areas/Public/Views/Public/Index.cshtml")]
public class Index : System.Web.Mvc.WebViewPage<dynamic>
{
public Index()
{
}
public override void Execute()
{
#line 1 "..\..\Areas\Public\Views\Public\Index.cshtml"
ViewBag.Title = Html.ToBreadcrumb("Public Reports", null);
#line default
#line hidden
WriteLiteral("\r\n<table");
WriteLiteral(" id=\"pageMenu\"");
WriteLiteral(">\r\n <tr>\r\n <td");
WriteLiteral(" style=\"width: 50%\"");
WriteLiteral(">\r\n <div");
WriteLiteral(" class=\"pageMenuArea\"");
WriteLiteral(">\r\n <h2>\r\n Technician Held Devices</h2>\r\n");
WriteLiteral(" ");
#line 10 "..\..\Areas\Public\Views\Public\Index.cshtml"
Write(Html.ActionLinkClass("Report", MVC.Public.UserHeldDevices.Index(), "report"));
#line default
#line hidden
WriteLiteral("\r\n <div");
WriteLiteral(" class=\"pageMenuBlurb\"");
WriteLiteral(@">
Display users involved in current jobs where the user's device is held by the technicians.
Also displays users which should report to the technicians to collect their device
which is ready to be returned to them.
</div>
");
WriteLiteral(" ");
#line 16 "..\..\Areas\Public\Views\Public\Index.cshtml"
Write(Html.ActionLinkClass("Noticeboard", MVC.Public.UserHeldDevices.Noticeboard(), "noticeboard"));
#line default
#line hidden
WriteLiteral("\r\n <div");
WriteLiteral(" class=\"pageMenuBlurb\"");
WriteLiteral(@">
Display a full-screen active noticeboard screen which lists users involved in current
jobs where the user's device is held by the technicians. Also displays users which
should report to the technicians to collect their device which is ready to be returned
to them.
</div>
</div>
</td>
<td");
WriteLiteral(" style=\"width: 50%\"");
WriteLiteral(">\r\n &nbsp;\r\n </td>\r\n </tr>\r\n</table>\r\n");
}
}
}
#pragma warning restore 1591
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -1,42 +1,42 @@
@{
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 - @CommonHelpers.BreadcrumbsTitle(ViewBag.Title)</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>
<nav>
<ul id="menu">
<li>@Html.ActionLink("Public Reports", MVC.Public.Public.Index())</li>
<li class="sep"></li>
<li style="margin-left: 10px;">@Html.ActionLink("Disco Administration", MVC.Job.Index(), accesskey: "1")</li>
</ul>
</nav>
</header>
<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())
</footer>
</div>
</body>
</html>
@{
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 - @CommonHelpers.BreadcrumbsTitle(ViewBag.Title)</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>
<nav>
<ul id="menu">
<li>@Html.ActionLink("Public Reports", MVC.Public.Public.Index())</li>
<li class="sep"></li>
<li style="margin-left: 10px;">@Html.ActionLink("Disco Administration", MVC.Job.Index(), accesskey: "1")</li>
</ul>
</nav>
</header>
<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())
</footer>
</div>
</body>
</html>
@@ -1,242 +1,242 @@
#pragma warning disable 1591
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.17929
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Disco.Web.Areas.Public.Views.Shared
{
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.BI.Extensions;
using Disco.Models.Repository;
using Disco.Web;
using Disco.Web.Extensions;
[System.CodeDom.Compiler.GeneratedCodeAttribute("RazorGenerator", "1.5.0.0")]
[System.Web.WebPages.PageVirtualPathAttribute("~/Areas/Public/Views/Shared/_Layout.cshtml")]
public class Layout : System.Web.Mvc.WebViewPage<dynamic>
{
public Layout()
{
}
public override void Execute()
{
#line 1 "..\..\Areas\Public\Views\Shared\_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 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
Write(CommonHelpers.BreadcrumbsTitle(ViewBag.Title));
#line default
#line hidden
WriteLiteral("</title>\r\n");
WriteLiteral(" ");
#line 11 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
Write(Html.BundleRenderDeferred());
#line default
#line hidden
WriteLiteral("\r\n");
WriteLiteral(" ");
#line 12 "..\..\Areas\Public\Views\Shared\_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=\"", 535), Tuple.Create("\"", 580)
#line 19 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
, Tuple.Create(Tuple.Create("", 542), Tuple.Create<System.Object, System.Int32>(Url.Action(MVC.Public.Public.Index())
#line default
#line hidden
, 542), false)
);
WriteLiteral(">\r\n <img");
WriteAttribute("src", Tuple.Create(" src=\"", 612), Tuple.Create("\"", 662)
#line 20 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
, Tuple.Create(Tuple.Create("", 618), Tuple.Create<System.Object, System.Int32>(Links.ClientSource.Style.Images.Heading_png
#line default
#line hidden
, 618), 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 <nav>\r\n " +
" <ul");
WriteLiteral(" id=\"menu\"");
WriteLiteral(">\r\n <li>");
#line 27 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
Write(Html.ActionLink("Public Reports", MVC.Public.Public.Index()));
#line default
#line hidden
WriteLiteral("</li>\r\n <li");
WriteLiteral(" class=\"sep\"");
WriteLiteral("></li>\r\n <li");
WriteLiteral(" style=\"margin-left: 10px;\"");
WriteLiteral(">");
#line 29 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
Write(Html.ActionLink("Disco 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(" id=\"layout_PageHeading\"");
WriteLiteral(">");
#line 33 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
Write(CommonHelpers.Breadcrumbs(ViewBag.Title));
#line default
#line hidden
WriteLiteral("</div>\r\n <section");
WriteLiteral(" id=\"layout_Page\"");
WriteLiteral(">\r\n");
WriteLiteral(" ");
#line 35 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
Write(RenderBody());
#line default
#line hidden
WriteLiteral("\r\n </section>\r\n <footer>\r\n Disco v");
#line 38 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
Write(Disco.Web.DiscoApplication.Version);
#line default
#line hidden
WriteLiteral(" ");
WriteLiteral("@ ");
#line 38 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
Write(Disco.Web.DiscoApplication.OrganisationName);
#line default
#line hidden
WriteLiteral(" | ");
#line 38 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
Write(Html.ActionLink("Credits", MVC.Public.Public.Credits()));
#line default
#line hidden
WriteLiteral(" | ");
#line 38 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
Write(Html.ActionLink("Licence", MVC.Public.Public.Licence()));
#line default
#line hidden
WriteLiteral("\r\n </footer>\r\n </div>\r\n</body>\r\n</html>\r\n");
}
}
}
#pragma warning restore 1591
#pragma warning disable 1591
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.17929
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Disco.Web.Areas.Public.Views.Shared
{
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.BI.Extensions;
using Disco.Models.Repository;
using Disco.Web;
using Disco.Web.Extensions;
[System.CodeDom.Compiler.GeneratedCodeAttribute("RazorGenerator", "1.5.0.0")]
[System.Web.WebPages.PageVirtualPathAttribute("~/Areas/Public/Views/Shared/_Layout.cshtml")]
public class Layout : System.Web.Mvc.WebViewPage<dynamic>
{
public Layout()
{
}
public override void Execute()
{
#line 1 "..\..\Areas\Public\Views\Shared\_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 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
Write(CommonHelpers.BreadcrumbsTitle(ViewBag.Title));
#line default
#line hidden
WriteLiteral("</title>\r\n");
WriteLiteral(" ");
#line 11 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
Write(Html.BundleRenderDeferred());
#line default
#line hidden
WriteLiteral("\r\n");
WriteLiteral(" ");
#line 12 "..\..\Areas\Public\Views\Shared\_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=\"", 535), Tuple.Create("\"", 580)
#line 19 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
, Tuple.Create(Tuple.Create("", 542), Tuple.Create<System.Object, System.Int32>(Url.Action(MVC.Public.Public.Index())
#line default
#line hidden
, 542), false)
);
WriteLiteral(">\r\n <img");
WriteAttribute("src", Tuple.Create(" src=\"", 612), Tuple.Create("\"", 662)
#line 20 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
, Tuple.Create(Tuple.Create("", 618), Tuple.Create<System.Object, System.Int32>(Links.ClientSource.Style.Images.Heading_png
#line default
#line hidden
, 618), 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 <nav>\r\n " +
" <ul");
WriteLiteral(" id=\"menu\"");
WriteLiteral(">\r\n <li>");
#line 27 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
Write(Html.ActionLink("Public Reports", MVC.Public.Public.Index()));
#line default
#line hidden
WriteLiteral("</li>\r\n <li");
WriteLiteral(" class=\"sep\"");
WriteLiteral("></li>\r\n <li");
WriteLiteral(" style=\"margin-left: 10px;\"");
WriteLiteral(">");
#line 29 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
Write(Html.ActionLink("Disco 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(" id=\"layout_PageHeading\"");
WriteLiteral(">");
#line 33 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
Write(CommonHelpers.Breadcrumbs(ViewBag.Title));
#line default
#line hidden
WriteLiteral("</div>\r\n <section");
WriteLiteral(" id=\"layout_Page\"");
WriteLiteral(">\r\n");
WriteLiteral(" ");
#line 35 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
Write(RenderBody());
#line default
#line hidden
WriteLiteral("\r\n </section>\r\n <footer>\r\n Disco v");
#line 38 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
Write(Disco.Web.DiscoApplication.Version);
#line default
#line hidden
WriteLiteral(" ");
WriteLiteral("@ ");
#line 38 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
Write(Disco.Web.DiscoApplication.OrganisationName);
#line default
#line hidden
WriteLiteral(" | ");
#line 38 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
Write(Html.ActionLink("Credits", MVC.Public.Public.Credits()));
#line default
#line hidden
WriteLiteral(" | ");
#line 38 "..\..\Areas\Public\Views\Shared\_Layout.cshtml"
Write(Html.ActionLink("Licence", MVC.Public.Public.Licence()));
#line default
#line hidden
WriteLiteral("\r\n </footer>\r\n </div>\r\n</body>\r\n</html>\r\n");
}
}
}
#pragma warning restore 1591
@@ -1,77 +1,77 @@
@model IEnumerable<Disco.Web.Areas.Public.Models.UserHeldDevices.UserHeldDeviceModel>
@{
ViewBag.Title = Html.ToBreadcrumb("Public Reports", MVC.Public.Public.Index(), "Technician Held Devices", null);
Html.BundleDeferred("~/Style/Public/UserHeldDevices");
}
<div class="clearfix page">
<div class="column1">
@{
var DevicesInProcess = Model.Where(i => !i.ReadyForReturn && !i.WaitingForUserAction).ToArray();
}
<h2>
In Process (@DevicesInProcess.Length)</h2>
<table class="dataTable">
@foreach (var item in DevicesInProcess)
{
<tr>
<td class="userId">
@item.UserId
</td>
<td class="userDisplayName">
@item.UserDisplayName@{
if (!string.IsNullOrEmpty(item.EstimatedReturnTime))
{
<span class="smallMessage">(Expected: @item.EstimatedReturnTime)</span>
}
}
</td>
</tr>
}
</table>
</div>
<div class="column2">
@{
var WaitingForUserActionJobs = Model.Where(i => i.WaitingForUserAction).ToArray();
}
<h2>
Waiting for User Action (@WaitingForUserActionJobs.Length)</h2>
<table class="dataTable">
@foreach (var item in WaitingForUserActionJobs)
{
<tr>
<td class="userId">
@item.UserId
</td>
<td class="userDisplayName">
@item.UserDisplayName
</td>
<td class="timestamp@(item.IsAlert ? " Alert" : string.Empty)">
Since @item.WaitingForUserActionSince
</td>
</tr>
}
</table>
<hr />
@{
var DevicesReadyForReturn = Model.Where(i => i.ReadyForReturn && !i.WaitingForUserAction).ToArray();
}
<h2>
Ready for Return (@DevicesReadyForReturn.Length)</h2>
<table class="dataTable">
@foreach (var item in DevicesReadyForReturn)
{
<tr>
<td class="userId">
@item.UserId
</td>
<td class="userDisplayName">
@item.UserDisplayName
</td>
<td class="timestamp@(item.IsAlert ? " Alert" : string.Empty)">
Ready @item.ReadyForReturnSince
</td>
</tr>
}
</table>
</div>
</div>
@model IEnumerable<Disco.Web.Areas.Public.Models.UserHeldDevices.UserHeldDeviceModel>
@{
ViewBag.Title = Html.ToBreadcrumb("Public Reports", MVC.Public.Public.Index(), "Technician Held Devices", null);
Html.BundleDeferred("~/Style/Public/UserHeldDevices");
}
<div class="clearfix page">
<div class="column1">
@{
var DevicesInProcess = Model.Where(i => !i.ReadyForReturn && !i.WaitingForUserAction).ToArray();
}
<h2>
In Process (@DevicesInProcess.Length)</h2>
<table class="dataTable">
@foreach (var item in DevicesInProcess)
{
<tr>
<td class="userId">
@item.UserId
</td>
<td class="userDisplayName">
@item.UserDisplayName@{
if (!string.IsNullOrEmpty(item.EstimatedReturnTime))
{
<span class="smallMessage">(Expected: @item.EstimatedReturnTime)</span>
}
}
</td>
</tr>
}
</table>
</div>
<div class="column2">
@{
var WaitingForUserActionJobs = Model.Where(i => i.WaitingForUserAction).ToArray();
}
<h2>
Waiting for User Action (@WaitingForUserActionJobs.Length)</h2>
<table class="dataTable">
@foreach (var item in WaitingForUserActionJobs)
{
<tr>
<td class="userId">
@item.UserId
</td>
<td class="userDisplayName">
@item.UserDisplayName
</td>
<td class="timestamp@(item.IsAlert ? " Alert" : string.Empty)">
Since @item.WaitingForUserActionSince
</td>
</tr>
}
</table>
<hr />
@{
var DevicesReadyForReturn = Model.Where(i => i.ReadyForReturn && !i.WaitingForUserAction).ToArray();
}
<h2>
Ready for Return (@DevicesReadyForReturn.Length)</h2>
<table class="dataTable">
@foreach (var item in DevicesReadyForReturn)
{
<tr>
<td class="userId">
@item.UserId
</td>
<td class="userDisplayName">
@item.UserDisplayName
</td>
<td class="timestamp@(item.IsAlert ? " Alert" : string.Empty)">
Ready @item.ReadyForReturnSince
</td>
</tr>
}
</table>
</div>
</div>
@@ -1,396 +1,396 @@
#pragma warning disable 1591
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.17929
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Disco.Web.Areas.Public.Views.UserHeldDevices
{
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.BI.Extensions;
using Disco.Models.Repository;
using Disco.Web;
using Disco.Web.Extensions;
[System.CodeDom.Compiler.GeneratedCodeAttribute("RazorGenerator", "1.5.0.0")]
[System.Web.WebPages.PageVirtualPathAttribute("~/Areas/Public/Views/UserHeldDevices/Index.cshtml")]
public class Index : System.Web.Mvc.WebViewPage<IEnumerable<Disco.Web.Areas.Public.Models.UserHeldDevices.UserHeldDeviceModel>>
{
public Index()
{
}
public override void Execute()
{
#line 2 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
ViewBag.Title = Html.ToBreadcrumb("Public Reports", MVC.Public.Public.Index(), "Technician Held Devices", null);
Html.BundleDeferred("~/Style/Public/UserHeldDevices");
#line default
#line hidden
WriteLiteral("\r\n<div");
WriteLiteral(" class=\"clearfix page\"");
WriteLiteral(">\r\n <div");
WriteLiteral(" class=\"column1\"");
WriteLiteral(">\r\n");
#line 8 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
#line default
#line hidden
#line 8 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
var DevicesInProcess = Model.Where(i => !i.ReadyForReturn && !i.WaitingForUserAction).ToArray();
#line default
#line hidden
WriteLiteral("\r\n <h2>\r\n In Process (");
#line 12 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(DevicesInProcess.Length);
#line default
#line hidden
WriteLiteral(")</h2>\r\n <table");
WriteLiteral(" class=\"dataTable\"");
WriteLiteral(">\r\n");
#line 14 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
#line default
#line hidden
#line 14 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
foreach (var item in DevicesInProcess)
{
#line default
#line hidden
WriteLiteral(" <tr>\r\n <td");
WriteLiteral(" class=\"userId\"");
WriteLiteral(">\r\n");
WriteLiteral(" ");
#line 18 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(item.UserId);
#line default
#line hidden
WriteLiteral("\r\n </td>\r\n <td");
WriteLiteral(" class=\"userDisplayName\"");
WriteLiteral(">\r\n");
WriteLiteral(" ");
#line 21 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(item.UserDisplayName);
#line default
#line hidden
#line 21 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
if (!string.IsNullOrEmpty(item.EstimatedReturnTime))
{
#line default
#line hidden
WriteLiteral(" <span");
WriteLiteral(" class=\"smallMessage\"");
WriteLiteral(">(Expected: ");
#line 24 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(item.EstimatedReturnTime);
#line default
#line hidden
WriteLiteral(")</span>\r\n");
#line 25 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
}
#line default
#line hidden
WriteLiteral("\r\n </td>\r\n </tr>\r\n");
#line 29 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
}
#line default
#line hidden
WriteLiteral(" </table>\r\n </div>\r\n <div");
WriteLiteral(" class=\"column2\"");
WriteLiteral(">\r\n");
#line 33 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
#line default
#line hidden
#line 33 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
var WaitingForUserActionJobs = Model.Where(i => i.WaitingForUserAction).ToArray();
#line default
#line hidden
WriteLiteral("\r\n <h2>\r\n Waiting for User Action (");
#line 37 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(WaitingForUserActionJobs.Length);
#line default
#line hidden
WriteLiteral(")</h2>\r\n <table");
WriteLiteral(" class=\"dataTable\"");
WriteLiteral(">\r\n");
#line 39 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
#line default
#line hidden
#line 39 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
foreach (var item in WaitingForUserActionJobs)
{
#line default
#line hidden
WriteLiteral(" <tr>\r\n <td");
WriteLiteral(" class=\"userId\"");
WriteLiteral(">\r\n");
WriteLiteral(" ");
#line 43 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(item.UserId);
#line default
#line hidden
WriteLiteral("\r\n </td>\r\n <td");
WriteLiteral(" class=\"userDisplayName\"");
WriteLiteral(">\r\n");
WriteLiteral(" ");
#line 46 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(item.UserDisplayName);
#line default
#line hidden
WriteLiteral("\r\n </td>\r\n <td");
WriteAttribute("class", Tuple.Create(" class=\"", 1816), Tuple.Create("\"", 1874)
, Tuple.Create(Tuple.Create("", 1824), Tuple.Create("timestamp", 1824), true)
#line 48 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
, Tuple.Create(Tuple.Create("", 1833), Tuple.Create<System.Object, System.Int32>(item.IsAlert ? " Alert" : string.Empty
#line default
#line hidden
, 1833), false)
);
WriteLiteral(">\r\n Since ");
#line 49 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(item.WaitingForUserActionSince);
#line default
#line hidden
WriteLiteral("\r\n </td>\r\n </tr>\r\n");
#line 52 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
}
#line default
#line hidden
WriteLiteral(" </table>\r\n <hr />\r\n");
#line 55 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
#line default
#line hidden
#line 55 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
var DevicesReadyForReturn = Model.Where(i => i.ReadyForReturn && !i.WaitingForUserAction).ToArray();
#line default
#line hidden
WriteLiteral("\r\n <h2>\r\n Ready for Return (");
#line 59 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(DevicesReadyForReturn.Length);
#line default
#line hidden
WriteLiteral(")</h2>\r\n <table");
WriteLiteral(" class=\"dataTable\"");
WriteLiteral(">\r\n");
#line 61 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
#line default
#line hidden
#line 61 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
foreach (var item in DevicesReadyForReturn)
{
#line default
#line hidden
WriteLiteral(" <tr>\r\n <td");
WriteLiteral(" class=\"userId\"");
WriteLiteral(">\r\n");
WriteLiteral(" ");
#line 65 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(item.UserId);
#line default
#line hidden
WriteLiteral("\r\n </td>\r\n <td");
WriteLiteral(" class=\"userDisplayName\"");
WriteLiteral(">\r\n");
WriteLiteral(" ");
#line 68 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(item.UserDisplayName);
#line default
#line hidden
WriteLiteral("\r\n </td>\r\n <td");
WriteAttribute("class", Tuple.Create(" class=\"", 2641), Tuple.Create("\"", 2699)
, Tuple.Create(Tuple.Create("", 2649), Tuple.Create("timestamp", 2649), true)
#line 70 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
, Tuple.Create(Tuple.Create("", 2658), Tuple.Create<System.Object, System.Int32>(item.IsAlert ? " Alert" : string.Empty
#line default
#line hidden
, 2658), false)
);
WriteLiteral(">\r\n Ready ");
#line 71 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(item.ReadyForReturnSince);
#line default
#line hidden
WriteLiteral("\r\n </td>\r\n </tr>\r\n");
#line 74 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
}
#line default
#line hidden
WriteLiteral(" </table>\r\n </div>\r\n</div>\r\n");
}
}
}
#pragma warning restore 1591
#pragma warning disable 1591
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.17929
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Disco.Web.Areas.Public.Views.UserHeldDevices
{
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.BI.Extensions;
using Disco.Models.Repository;
using Disco.Web;
using Disco.Web.Extensions;
[System.CodeDom.Compiler.GeneratedCodeAttribute("RazorGenerator", "1.5.0.0")]
[System.Web.WebPages.PageVirtualPathAttribute("~/Areas/Public/Views/UserHeldDevices/Index.cshtml")]
public class Index : System.Web.Mvc.WebViewPage<IEnumerable<Disco.Web.Areas.Public.Models.UserHeldDevices.UserHeldDeviceModel>>
{
public Index()
{
}
public override void Execute()
{
#line 2 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
ViewBag.Title = Html.ToBreadcrumb("Public Reports", MVC.Public.Public.Index(), "Technician Held Devices", null);
Html.BundleDeferred("~/Style/Public/UserHeldDevices");
#line default
#line hidden
WriteLiteral("\r\n<div");
WriteLiteral(" class=\"clearfix page\"");
WriteLiteral(">\r\n <div");
WriteLiteral(" class=\"column1\"");
WriteLiteral(">\r\n");
#line 8 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
#line default
#line hidden
#line 8 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
var DevicesInProcess = Model.Where(i => !i.ReadyForReturn && !i.WaitingForUserAction).ToArray();
#line default
#line hidden
WriteLiteral("\r\n <h2>\r\n In Process (");
#line 12 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(DevicesInProcess.Length);
#line default
#line hidden
WriteLiteral(")</h2>\r\n <table");
WriteLiteral(" class=\"dataTable\"");
WriteLiteral(">\r\n");
#line 14 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
#line default
#line hidden
#line 14 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
foreach (var item in DevicesInProcess)
{
#line default
#line hidden
WriteLiteral(" <tr>\r\n <td");
WriteLiteral(" class=\"userId\"");
WriteLiteral(">\r\n");
WriteLiteral(" ");
#line 18 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(item.UserId);
#line default
#line hidden
WriteLiteral("\r\n </td>\r\n <td");
WriteLiteral(" class=\"userDisplayName\"");
WriteLiteral(">\r\n");
WriteLiteral(" ");
#line 21 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(item.UserDisplayName);
#line default
#line hidden
#line 21 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
if (!string.IsNullOrEmpty(item.EstimatedReturnTime))
{
#line default
#line hidden
WriteLiteral(" <span");
WriteLiteral(" class=\"smallMessage\"");
WriteLiteral(">(Expected: ");
#line 24 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(item.EstimatedReturnTime);
#line default
#line hidden
WriteLiteral(")</span>\r\n");
#line 25 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
}
#line default
#line hidden
WriteLiteral("\r\n </td>\r\n </tr>\r\n");
#line 29 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
}
#line default
#line hidden
WriteLiteral(" </table>\r\n </div>\r\n <div");
WriteLiteral(" class=\"column2\"");
WriteLiteral(">\r\n");
#line 33 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
#line default
#line hidden
#line 33 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
var WaitingForUserActionJobs = Model.Where(i => i.WaitingForUserAction).ToArray();
#line default
#line hidden
WriteLiteral("\r\n <h2>\r\n Waiting for User Action (");
#line 37 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(WaitingForUserActionJobs.Length);
#line default
#line hidden
WriteLiteral(")</h2>\r\n <table");
WriteLiteral(" class=\"dataTable\"");
WriteLiteral(">\r\n");
#line 39 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
#line default
#line hidden
#line 39 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
foreach (var item in WaitingForUserActionJobs)
{
#line default
#line hidden
WriteLiteral(" <tr>\r\n <td");
WriteLiteral(" class=\"userId\"");
WriteLiteral(">\r\n");
WriteLiteral(" ");
#line 43 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(item.UserId);
#line default
#line hidden
WriteLiteral("\r\n </td>\r\n <td");
WriteLiteral(" class=\"userDisplayName\"");
WriteLiteral(">\r\n");
WriteLiteral(" ");
#line 46 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(item.UserDisplayName);
#line default
#line hidden
WriteLiteral("\r\n </td>\r\n <td");
WriteAttribute("class", Tuple.Create(" class=\"", 1816), Tuple.Create("\"", 1874)
, Tuple.Create(Tuple.Create("", 1824), Tuple.Create("timestamp", 1824), true)
#line 48 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
, Tuple.Create(Tuple.Create("", 1833), Tuple.Create<System.Object, System.Int32>(item.IsAlert ? " Alert" : string.Empty
#line default
#line hidden
, 1833), false)
);
WriteLiteral(">\r\n Since ");
#line 49 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(item.WaitingForUserActionSince);
#line default
#line hidden
WriteLiteral("\r\n </td>\r\n </tr>\r\n");
#line 52 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
}
#line default
#line hidden
WriteLiteral(" </table>\r\n <hr />\r\n");
#line 55 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
#line default
#line hidden
#line 55 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
var DevicesReadyForReturn = Model.Where(i => i.ReadyForReturn && !i.WaitingForUserAction).ToArray();
#line default
#line hidden
WriteLiteral("\r\n <h2>\r\n Ready for Return (");
#line 59 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(DevicesReadyForReturn.Length);
#line default
#line hidden
WriteLiteral(")</h2>\r\n <table");
WriteLiteral(" class=\"dataTable\"");
WriteLiteral(">\r\n");
#line 61 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
#line default
#line hidden
#line 61 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
foreach (var item in DevicesReadyForReturn)
{
#line default
#line hidden
WriteLiteral(" <tr>\r\n <td");
WriteLiteral(" class=\"userId\"");
WriteLiteral(">\r\n");
WriteLiteral(" ");
#line 65 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(item.UserId);
#line default
#line hidden
WriteLiteral("\r\n </td>\r\n <td");
WriteLiteral(" class=\"userDisplayName\"");
WriteLiteral(">\r\n");
WriteLiteral(" ");
#line 68 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(item.UserDisplayName);
#line default
#line hidden
WriteLiteral("\r\n </td>\r\n <td");
WriteAttribute("class", Tuple.Create(" class=\"", 2641), Tuple.Create("\"", 2699)
, Tuple.Create(Tuple.Create("", 2649), Tuple.Create("timestamp", 2649), true)
#line 70 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
, Tuple.Create(Tuple.Create("", 2658), Tuple.Create<System.Object, System.Int32>(item.IsAlert ? " Alert" : string.Empty
#line default
#line hidden
, 2658), false)
);
WriteLiteral(">\r\n Ready ");
#line 71 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
Write(item.ReadyForReturnSince);
#line default
#line hidden
WriteLiteral("\r\n </td>\r\n </tr>\r\n");
#line 74 "..\..\Areas\Public\Views\UserHeldDevices\Index.cshtml"
}
#line default
#line hidden
WriteLiteral(" </table>\r\n </div>\r\n</div>\r\n");
}
}
}
#pragma warning restore 1591
@@ -1,494 +1,494 @@
@{
Layout = null;
Html.BundleDeferred("~/ClientScripts/Modules/jQuery-SignalR");
Html.BundleDeferred("~/ClientScripts/Core");
Html.BundleDeferred("~/Style/Public/UserHeldDevicesNoticeboard");
}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<title>Disco - Technician Held Devices</title>
@Html.BundleRenderDeferred()
</head>
<body>
<div id="page">
<header id="mainHeader">
Technician Held Devices
</header>
<section id="mainSection">
<div id="inProcess" class="list">
<h3>
In Process <span id="inProcessCount"></span>
</h3>
<div class="content">
<ul>
</ul>
</div>
</div>
<div id="readyForReturn" class="list">
<h3>
Ready for Return <span id="readyForReturnCount"></span>
</h3>
<div class="content">
<ul>
</ul>
</div>
</div>
<div id="waitingForUserAction" class="list">
<h3>
Waiting for User Action <span id="waitingForUserActionCount"></span>
</h3>
<div class="content">
<ul>
</ul>
</div>
</div>
</section>
<footer>
</footer>
</div>
<script type="text/javascript">
// Resizing
$(function () {
var $inProcess = $('#inProcess');
var $inProcessContent = $inProcess.find('.content');
var $inProcessHeader = $inProcess.find('.h3');
var $readyForReturn = $('#readyForReturn');
var $readyForReturnContent = $readyForReturn.find('.content');
var $readyForReturnHeader = $readyForReturn.find('.h3');
var $waitingForUserAction = $('#waitingForUserAction');
var $waitingForUserActionContent = $waitingForUserAction.find('.content');
var $waitingForUserActionHeader = $waitingForUserAction.find('.h3');
var $mainSection = $('#mainSection');
var $mainHeader = $('#mainHeader');
var $mainFooter = $('#mainFooter');
var onResize = function () {
var width = $mainSection.width();
var height = $(window).height() - $mainHeader.outerHeight() - $mainFooter.outerHeight() - 25;
$inProcess.height(height);
$inProcess.width((width * .28) - 11);
$inProcessContent.height(height - $inProcessHeader.outerHeight() - 56);
$readyForReturn.height(height);
$readyForReturn.width((width * .36) - 11);
$readyForReturnContent.height(height - $readyForReturnHeader.outerHeight() - 56);
$waitingForUserAction.height(height);
$waitingForUserAction.width((width * .36) - 11);
$waitingForUserActionContent.height(height - $waitingForUserActionHeader.outerHeight() - 56);
};
$(window).resize(onResize);
onResize();
});
</script>
<script type="text/javascript">
// Hide Mouse Mouse
$(function () {
var mouseVisible = true;
var mouseHideToken;
var documentBody = $('body');
var hideMouse = function () {
if (mouseVisible) {
documentBody.css('cursor', 'none');
mouseVisible = false;
}
};
var showMouse = function () {
if (!mouseVisible) {
documentBody.css('cursor', 'auto');
mouseVisible = true;
}
};
$(document).mousemove(function () {
showMouse();
if (mouseHideToken)
window.clearTimeout(mouseHideToken);
mouseHideToken = window.setTimeout(hideMouse, 2000);
});
});
</script>
<script type="text/javascript">
$(function () {
var models = {};
var modelsInProcessSorted = [];
var modelsInProcessCount = 0;
var modelsReadyForReturnSorted = [];
var modelsReadyForReturnCount = 0;
var modelsWaitingForUserActionSorted = [];
var modelsWaitingForUserActionCount = 0;
var $inProcess = $('#inProcess');
var $inProcessContent = $inProcess.find('.content ul');
var $readyForReturn = $('#readyForReturn');
var $readyForReturnContent = $readyForReturn.find('.content ul');
var $waitingForUserAction = $('#waitingForUserAction');
var $waitingForUserActionContent = $waitingForUserAction.find('.content ul');
var modelsInProcessIndexOffset = 0;
var scrollInProcessToken = null;
var modelsReadyForReturnIndexOffset = 0;
var scrollReadyForReturnToken = null;
var modelsWaitingForUserActionIndexOffset = 0;
var scrollWaitingForUserActionToken = null;
var scrollSpeed = 3000;
var persistantConnection = null;
var filterDeviceAddressInclude;
var filterDeviceAddressExclude;
var filterDeviceProfileInclude;
var filterDeviceProfileExclude;
var getParameterByName = function (name) {
name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
var regexS = "[\\?&]" + name + "=([^&#]*)";
var regex = new RegExp(regexS);
var results = regex.exec(window.location.search);
if (results == null)
return "";
else
return decodeURIComponent(results[1].replace(/\+/g, " "));
}
var buildFilters = function () {
var deviceAddressInclude = getParameterByName('deviceAddressInclude');
if (deviceAddressInclude) {
filterDeviceAddressInclude = {};
var split = deviceAddressInclude.split(",");
for (var i = 0; i < split.length; i++) {
filterDeviceAddressInclude[split[i].toLowerCase()] = true;
}
} else {
var deviceAddressExclude = getParameterByName('deviceAddressExclude');
if (deviceAddressExclude) {
filterDeviceAddressExclude = {};
var split = deviceAddressExclude.split(",");
for (var i = 0; i < split.length; i++) {
filterDeviceAddressExclude[split[i].toLowerCase()] = true;
}
} else {
var deviceProfileInclude = getParameterByName('deviceProfileInclude');
if (deviceProfileInclude) {
filterDeviceProfileInclude = {};
var deviceProfileIncludeSplit = deviceProfileInclude.split(",");
for (var i = 0; i < deviceProfileIncludeSplit.length; i++) {
filterDeviceProfileInclude[parseInt(deviceProfileIncludeSplit[i])] = true;
}
} else {
var deviceProfileExclude = getParameterByName('deviceProfileExclude');
if (deviceProfileExclude) {
filterDeviceProfileExclude = {};
var deviceProfileExcludeSplit = deviceProfileExclude.split(",");
for (var i = 0; i < deviceProfileExcludeSplit.length; i++) {
filterDeviceProfileExclude[parseInt(deviceProfileExcludeSplit[i])] = true;
}
}
}
}
}
}
var calculateFilter = function (model) {
if (model) {
if (filterDeviceAddressInclude) {
return (filterDeviceAddressInclude[model.DeviceAddress.toLowerCase()] == true)
}
if (filterDeviceAddressExclude) {
return (!filterDeviceAddressExclude[model.DeviceAddress.toLowerCase()])
}
if (filterDeviceProfileInclude) {
return (filterDeviceProfileInclude[model.DeviceProfileId] == true)
}
if (filterDeviceProfileExclude) {
return (!filterDeviceProfileExclude[model.DeviceProfileId])
}
return true;
}
return false;
}
var sortModels = function () {
modelsInProcessSorted = [];
modelsReadyForReturnSorted = [];
modelsWaitingForUserActionSorted = [];
var modelSortFunc = function (a, b) {
if (a.UserId.toUpperCase() == b.UserId.toUpperCase()) {
return 0;
} else {
if (a.UserId.toUpperCase() < b.UserId.toUpperCase()) {
return -1
} else {
return 1
}
}
};
for (var key in models) {
var model = models[key];
if (model) {
if (model.WaitingForUserAction) {
modelsWaitingForUserActionSorted.push(model);
} else {
if (model.ReadyForReturn) {
modelsReadyForReturnSorted.push(model);
} else {
modelsInProcessSorted.push(model);
}
}
}
}
modelsReadyForReturnSorted = modelsReadyForReturnSorted.sort(modelSortFunc);
modelsInProcessSorted = modelsInProcessSorted.sort(modelSortFunc);
modelsWaitingForUserActionSorted = modelsWaitingForUserActionSorted.sort(modelSortFunc);
if (modelsInProcessSorted.length != modelsInProcessCount) {
modelsInProcessCount = modelsInProcessSorted.length;
$('#inProcessCount').text('(' + modelsInProcessCount + ')');
}
if (modelsReadyForReturnSorted.length != modelsReadyForReturnCount) {
modelsReadyForReturnCount = modelsReadyForReturnSorted.length;
$('#readyForReturnCount').text('(' + modelsReadyForReturnCount + ')');
}
if (modelsWaitingForUserActionSorted.length != modelsWaitingForUserActionCount) {
modelsWaitingForUserActionCount = modelsWaitingForUserActionSorted.length;
$('#waitingForUserActionCount').text('(' + modelsWaitingForUserActionCount + ')');
}
};
var scrollReadyForReturn = function () {
$readyForReturnContent.find('li').last().detach().prependTo($readyForReturnContent).hide().slideDown('slow');
modelsReadyForReturnIndexOffset++;
if (modelsReadyForReturnIndexOffset >= modelsReadyForReturnSorted.length) {
modelsReadyForReturnIndexOffset = 0;
}
scrollReadyForReturnToken = window.setTimeout(scrollReadyForReturn, scrollSpeed);
};
var updateScrollReadyForReturn = function () {
var containerHeight = $readyForReturn.find('.content').height();
var contentHeight = $readyForReturnContent.height();
if (containerHeight >= contentHeight && scrollReadyForReturnToken) {
window.clearTimeout(scrollReadyForReturnToken);
return;
}
if (containerHeight < contentHeight && scrollReadyForReturnToken == null) {
scrollReadyForReturnToken = window.setTimeout(scrollReadyForReturn, scrollSpeed);
}
};
var scrollInProcess = function () {
$inProcessContent.find('li').last().detach().prependTo($inProcessContent).hide().slideDown('slow');
modelsInProcessIndexOffset++;
if (modelsInProcessIndexOffset >= modelsInProcessSorted.length) {
modelsInProcessIndexOffset = 0;
}
scrollInProcessToken = window.setTimeout(scrollInProcess, scrollSpeed);
};
var updateScrollInProcess = function () {
var containerHeight = $inProcess.find('.content').height();
var contentHeight = $inProcessContent.height();
if (containerHeight >= contentHeight && scrollInProcessToken) {
window.clearTimeout(scrollInProcessToken);
return;
}
if (containerHeight < contentHeight && scrollInProcessToken == null) {
scrollInProcessToken = window.setTimeout(scrollInProcess, scrollSpeed);
}
};
var scrollWaitingForUserAction = function () {
$waitingForUserActionContent.find('li').last().detach().prependTo($waitingForUserActionContent).hide().slideDown('slow');
modelsInProcessIndexOffset++;
if (modelsWaitingForUserActionIndexOffset >= modelsWaitingForUserActionSorted.length) {
modelsWaitingForUserActionIndexOffset = 0;
}
scrollWaitingForUserActionToken = window.setTimeout(scrollWaitingForUserAction, scrollSpeed);
};
var updateScrollWaitingForUserAction = function () {
var containerHeight = $waitingForUserAction.find('.content').height();
var contentHeight = $waitingForUserActionContent.height();
if (containerHeight >= contentHeight && scrollWaitingForUserActionToken) {
window.clearTimeout(scrollWaitingForUserActionToken);
return;
}
if (containerHeight < contentHeight && scrollWaitingForUserActionToken == null) {
scrollWaitingForUserActionToken = window.setTimeout(scrollWaitingForUserAction, scrollSpeed);
}
};
var modelInsertIndex = function (model) {
sortModels();
var findIndex = function (model, array, offset) {
for (var i = 0; i < array.length; i++) {
if (model.UserId == array[i].UserId) {
var index = i + offset;
if (index > (array.length - 1)) {
index = index - (array.length - 1);
}
return index;
}
};
};
if (model.WaitingForUserAction) {
return findIndex(model, modelsWaitingForUserActionSorted, modelsWaitingForUserActionIndexOffset);
} else {
if (model.ReadyForReturn) {
return findIndex(model, modelsReadyForReturnSorted, modelsReadyForReturnIndexOffset);
} else {
return findIndex(model, modelsInProcessSorted, modelsInProcessIndexOffset);
}
}
}
var modelInsert = function (model) {
var index = modelInsertIndex(model);
var insertTo = function (model, host) {
var hostLi = host.children('li');
if (hostLi.length == 0 || hostLi.length < index) {
host.append(model.htmlLi);
} else {
if (index == 0) {
host.prepend(model.htmlLi);
} else {
$(hostLi.get(index - 1)).after(model.htmlLi);
}
}
}
if (model.WaitingForUserAction) {
insertTo(model, $waitingForUserActionContent);
window.setTimeout(updateScrollWaitingForUserAction, 100);
} else {
if (model.ReadyForReturn) {
insertTo(model, $readyForReturnContent);
window.setTimeout(updateScrollReadyForReturn, 100);
} else {
insertTo(model, $inProcessContent);
window.setTimeout(updateScrollInProcess, 100);
}
}
}
var removeModel = function (model) {
if (model) {
if (model.updateAtToken) {
window.clearTimeout(model.updateAtToken);
};
model.htmlLi.slideUp('fast', function () {
model.htmlLi.remove();
});
}
};
var scheduleModelUpdate = function (model) {
if (model.updateAtToken) {
window.clearTimeout(model.updateAtToken);
};
if (model.UpdateAt) {
if (typeof model.UpdateAt == 'string' && model.UpdateAt.indexOf('\/Date(') == 0) {
model.UpdateAt = new Date(parseInt(model.UpdateAt.substr(6)));
}
var nowMilliseconds = new Date().getTime();
var updateAtMilliseconds = (model.UpdateAt - nowMilliseconds);
if (updateAtMilliseconds > 0) {
model.updateAtToken = window.setTimeout(function () { updatedModel(model.UserId); }, updateAtMilliseconds);
} else {
model.UpdateAt = null;
}
}
};
var processModel = function (id, model, init) {
if (!calculateFilter(model)) {
removeModel(models[id]);
delete models[id];
sortModels();
} else {
var existing = models[id];
models[id] = model;
// Add
model.htmlContent = $('<div>').text(model.UserId + ' - ' + model.UserDisplayName);
if (!model.ReadyForReturn && model.EstimatedReturnTime) {
model.htmlContent.append($('<span class="small">').text(' (Expected: ' + model.EstimatedReturnTime + ')'));
}
if (model.WaitingForUserAction) {
model.htmlContent.append($('<span class="small">').text(' (Since ' + model.WaitingForUserActionSince + ')'));
} else {
if (model.ReadyForReturn && model.ReadyForReturnSince) {
model.htmlContent.append($('<span class="small">').text(' (Ready ' + model.ReadyForReturnSince + ')'));
}
}
if (existing) {
if (existing.ReadyForReturn != model.ReadyForReturn || existing.WaitingForUserAction != model.WaitingForUserAction) {
removeModel(existing);
model.htmlLi = $('<li>').html(model.htmlContent).data('ModelId', id).hide();
modelInsert(model);
if (init) {
model.htmlLi.fadeIn();
} else {
model.htmlLi.slideDown();
}
} else {
if (existing.updateAtToken) {
window.clearTimeout(existing.updateAtToken);
};
model.htmlLi = existing.htmlLi;
model.htmlLi.slideUp('fast', function () {
model.htmlLi.html(model.htmlContent).slideDown();
});
}
} else {
model.htmlLi = $('<li>').html(model.htmlContent).data('ModelId', id).hide();
modelInsert(model);
if (init) {
model.htmlLi.fadeIn();
} else {
model.htmlLi.slideDown('slow');
}
}
if (model.htmlLi && model.IsAlert) {
model.htmlLi.addClass('alert');
}
scheduleModelUpdate(model);
}
};
var updatedModel = function (id) {
var UserId = id.toString();
$.getJSON('@(Url.Action(MVC.Public.UserHeldDevices.UserHeldDevice()))', { id: UserId }, function (data) {
processModel(UserId, data, false);
});
};
var connectionError = function () {
if (persistantConnection) {
persistantConnection.stop();
persistantConnection = null;
window.setTimeout(function () {
window.location.href = '@(Url.Action(MVC.Public.UserHeldDevices.Noticeboard()))';
}, 10000);
}
}
var init = function () {
buildFilters();
persistantConnection = $.connection('@(Url.Content("~/Public/UserHeldDevices/Notifications"))');
persistantConnection.received(updatedModel);
persistantConnection.error(connectionError);
persistantConnection.start(function () {
$.getJSON('@(Url.Action(MVC.Public.UserHeldDevices.UserHeldDevices()))', null, function (data) {
for (var i = 0; i < data.length; i++) {
processModel(data[i].UserId, data[i], true);
}
});
});
};
init();
});
</script>
<div id="mainFooter">
<img style="width: 32px; height: 32px; margin-top: -5px; margin-bottom: -15px;" src="@Links.ClientSource.Style.Images.Icon32_png" alt="Disco Logo" />
powered by Disco
</div>
</body>
</html>
@{
Layout = null;
Html.BundleDeferred("~/ClientScripts/Modules/jQuery-SignalR");
Html.BundleDeferred("~/ClientScripts/Core");
Html.BundleDeferred("~/Style/Public/UserHeldDevicesNoticeboard");
}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<title>Disco - Technician Held Devices</title>
@Html.BundleRenderDeferred()
</head>
<body>
<div id="page">
<header id="mainHeader">
Technician Held Devices
</header>
<section id="mainSection">
<div id="inProcess" class="list">
<h3>
In Process <span id="inProcessCount"></span>
</h3>
<div class="content">
<ul>
</ul>
</div>
</div>
<div id="readyForReturn" class="list">
<h3>
Ready for Return <span id="readyForReturnCount"></span>
</h3>
<div class="content">
<ul>
</ul>
</div>
</div>
<div id="waitingForUserAction" class="list">
<h3>
Waiting for User Action <span id="waitingForUserActionCount"></span>
</h3>
<div class="content">
<ul>
</ul>
</div>
</div>
</section>
<footer>
</footer>
</div>
<script type="text/javascript">
// Resizing
$(function () {
var $inProcess = $('#inProcess');
var $inProcessContent = $inProcess.find('.content');
var $inProcessHeader = $inProcess.find('.h3');
var $readyForReturn = $('#readyForReturn');
var $readyForReturnContent = $readyForReturn.find('.content');
var $readyForReturnHeader = $readyForReturn.find('.h3');
var $waitingForUserAction = $('#waitingForUserAction');
var $waitingForUserActionContent = $waitingForUserAction.find('.content');
var $waitingForUserActionHeader = $waitingForUserAction.find('.h3');
var $mainSection = $('#mainSection');
var $mainHeader = $('#mainHeader');
var $mainFooter = $('#mainFooter');
var onResize = function () {
var width = $mainSection.width();
var height = $(window).height() - $mainHeader.outerHeight() - $mainFooter.outerHeight() - 25;
$inProcess.height(height);
$inProcess.width((width * .28) - 11);
$inProcessContent.height(height - $inProcessHeader.outerHeight() - 56);
$readyForReturn.height(height);
$readyForReturn.width((width * .36) - 11);
$readyForReturnContent.height(height - $readyForReturnHeader.outerHeight() - 56);
$waitingForUserAction.height(height);
$waitingForUserAction.width((width * .36) - 11);
$waitingForUserActionContent.height(height - $waitingForUserActionHeader.outerHeight() - 56);
};
$(window).resize(onResize);
onResize();
});
</script>
<script type="text/javascript">
// Hide Mouse Mouse
$(function () {
var mouseVisible = true;
var mouseHideToken;
var documentBody = $('body');
var hideMouse = function () {
if (mouseVisible) {
documentBody.css('cursor', 'none');
mouseVisible = false;
}
};
var showMouse = function () {
if (!mouseVisible) {
documentBody.css('cursor', 'auto');
mouseVisible = true;
}
};
$(document).mousemove(function () {
showMouse();
if (mouseHideToken)
window.clearTimeout(mouseHideToken);
mouseHideToken = window.setTimeout(hideMouse, 2000);
});
});
</script>
<script type="text/javascript">
$(function () {
var models = {};
var modelsInProcessSorted = [];
var modelsInProcessCount = 0;
var modelsReadyForReturnSorted = [];
var modelsReadyForReturnCount = 0;
var modelsWaitingForUserActionSorted = [];
var modelsWaitingForUserActionCount = 0;
var $inProcess = $('#inProcess');
var $inProcessContent = $inProcess.find('.content ul');
var $readyForReturn = $('#readyForReturn');
var $readyForReturnContent = $readyForReturn.find('.content ul');
var $waitingForUserAction = $('#waitingForUserAction');
var $waitingForUserActionContent = $waitingForUserAction.find('.content ul');
var modelsInProcessIndexOffset = 0;
var scrollInProcessToken = null;
var modelsReadyForReturnIndexOffset = 0;
var scrollReadyForReturnToken = null;
var modelsWaitingForUserActionIndexOffset = 0;
var scrollWaitingForUserActionToken = null;
var scrollSpeed = 3000;
var persistantConnection = null;
var filterDeviceAddressInclude;
var filterDeviceAddressExclude;
var filterDeviceProfileInclude;
var filterDeviceProfileExclude;
var getParameterByName = function (name) {
name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
var regexS = "[\\?&]" + name + "=([^&#]*)";
var regex = new RegExp(regexS);
var results = regex.exec(window.location.search);
if (results == null)
return "";
else
return decodeURIComponent(results[1].replace(/\+/g, " "));
}
var buildFilters = function () {
var deviceAddressInclude = getParameterByName('deviceAddressInclude');
if (deviceAddressInclude) {
filterDeviceAddressInclude = {};
var split = deviceAddressInclude.split(",");
for (var i = 0; i < split.length; i++) {
filterDeviceAddressInclude[split[i].toLowerCase()] = true;
}
} else {
var deviceAddressExclude = getParameterByName('deviceAddressExclude');
if (deviceAddressExclude) {
filterDeviceAddressExclude = {};
var split = deviceAddressExclude.split(",");
for (var i = 0; i < split.length; i++) {
filterDeviceAddressExclude[split[i].toLowerCase()] = true;
}
} else {
var deviceProfileInclude = getParameterByName('deviceProfileInclude');
if (deviceProfileInclude) {
filterDeviceProfileInclude = {};
var deviceProfileIncludeSplit = deviceProfileInclude.split(",");
for (var i = 0; i < deviceProfileIncludeSplit.length; i++) {
filterDeviceProfileInclude[parseInt(deviceProfileIncludeSplit[i])] = true;
}
} else {
var deviceProfileExclude = getParameterByName('deviceProfileExclude');
if (deviceProfileExclude) {
filterDeviceProfileExclude = {};
var deviceProfileExcludeSplit = deviceProfileExclude.split(",");
for (var i = 0; i < deviceProfileExcludeSplit.length; i++) {
filterDeviceProfileExclude[parseInt(deviceProfileExcludeSplit[i])] = true;
}
}
}
}
}
}
var calculateFilter = function (model) {
if (model) {
if (filterDeviceAddressInclude) {
return (filterDeviceAddressInclude[model.DeviceAddress.toLowerCase()] == true)
}
if (filterDeviceAddressExclude) {
return (!filterDeviceAddressExclude[model.DeviceAddress.toLowerCase()])
}
if (filterDeviceProfileInclude) {
return (filterDeviceProfileInclude[model.DeviceProfileId] == true)
}
if (filterDeviceProfileExclude) {
return (!filterDeviceProfileExclude[model.DeviceProfileId])
}
return true;
}
return false;
}
var sortModels = function () {
modelsInProcessSorted = [];
modelsReadyForReturnSorted = [];
modelsWaitingForUserActionSorted = [];
var modelSortFunc = function (a, b) {
if (a.UserId.toUpperCase() == b.UserId.toUpperCase()) {
return 0;
} else {
if (a.UserId.toUpperCase() < b.UserId.toUpperCase()) {
return -1
} else {
return 1
}
}
};
for (var key in models) {
var model = models[key];
if (model) {
if (model.WaitingForUserAction) {
modelsWaitingForUserActionSorted.push(model);
} else {
if (model.ReadyForReturn) {
modelsReadyForReturnSorted.push(model);
} else {
modelsInProcessSorted.push(model);
}
}
}
}
modelsReadyForReturnSorted = modelsReadyForReturnSorted.sort(modelSortFunc);
modelsInProcessSorted = modelsInProcessSorted.sort(modelSortFunc);
modelsWaitingForUserActionSorted = modelsWaitingForUserActionSorted.sort(modelSortFunc);
if (modelsInProcessSorted.length != modelsInProcessCount) {
modelsInProcessCount = modelsInProcessSorted.length;
$('#inProcessCount').text('(' + modelsInProcessCount + ')');
}
if (modelsReadyForReturnSorted.length != modelsReadyForReturnCount) {
modelsReadyForReturnCount = modelsReadyForReturnSorted.length;
$('#readyForReturnCount').text('(' + modelsReadyForReturnCount + ')');
}
if (modelsWaitingForUserActionSorted.length != modelsWaitingForUserActionCount) {
modelsWaitingForUserActionCount = modelsWaitingForUserActionSorted.length;
$('#waitingForUserActionCount').text('(' + modelsWaitingForUserActionCount + ')');
}
};
var scrollReadyForReturn = function () {
$readyForReturnContent.find('li').last().detach().prependTo($readyForReturnContent).hide().slideDown('slow');
modelsReadyForReturnIndexOffset++;
if (modelsReadyForReturnIndexOffset >= modelsReadyForReturnSorted.length) {
modelsReadyForReturnIndexOffset = 0;
}
scrollReadyForReturnToken = window.setTimeout(scrollReadyForReturn, scrollSpeed);
};
var updateScrollReadyForReturn = function () {
var containerHeight = $readyForReturn.find('.content').height();
var contentHeight = $readyForReturnContent.height();
if (containerHeight >= contentHeight && scrollReadyForReturnToken) {
window.clearTimeout(scrollReadyForReturnToken);
return;
}
if (containerHeight < contentHeight && scrollReadyForReturnToken == null) {
scrollReadyForReturnToken = window.setTimeout(scrollReadyForReturn, scrollSpeed);
}
};
var scrollInProcess = function () {
$inProcessContent.find('li').last().detach().prependTo($inProcessContent).hide().slideDown('slow');
modelsInProcessIndexOffset++;
if (modelsInProcessIndexOffset >= modelsInProcessSorted.length) {
modelsInProcessIndexOffset = 0;
}
scrollInProcessToken = window.setTimeout(scrollInProcess, scrollSpeed);
};
var updateScrollInProcess = function () {
var containerHeight = $inProcess.find('.content').height();
var contentHeight = $inProcessContent.height();
if (containerHeight >= contentHeight && scrollInProcessToken) {
window.clearTimeout(scrollInProcessToken);
return;
}
if (containerHeight < contentHeight && scrollInProcessToken == null) {
scrollInProcessToken = window.setTimeout(scrollInProcess, scrollSpeed);
}
};
var scrollWaitingForUserAction = function () {
$waitingForUserActionContent.find('li').last().detach().prependTo($waitingForUserActionContent).hide().slideDown('slow');
modelsInProcessIndexOffset++;
if (modelsWaitingForUserActionIndexOffset >= modelsWaitingForUserActionSorted.length) {
modelsWaitingForUserActionIndexOffset = 0;
}
scrollWaitingForUserActionToken = window.setTimeout(scrollWaitingForUserAction, scrollSpeed);
};
var updateScrollWaitingForUserAction = function () {
var containerHeight = $waitingForUserAction.find('.content').height();
var contentHeight = $waitingForUserActionContent.height();
if (containerHeight >= contentHeight && scrollWaitingForUserActionToken) {
window.clearTimeout(scrollWaitingForUserActionToken);
return;
}
if (containerHeight < contentHeight && scrollWaitingForUserActionToken == null) {
scrollWaitingForUserActionToken = window.setTimeout(scrollWaitingForUserAction, scrollSpeed);
}
};
var modelInsertIndex = function (model) {
sortModels();
var findIndex = function (model, array, offset) {
for (var i = 0; i < array.length; i++) {
if (model.UserId == array[i].UserId) {
var index = i + offset;
if (index > (array.length - 1)) {
index = index - (array.length - 1);
}
return index;
}
};
};
if (model.WaitingForUserAction) {
return findIndex(model, modelsWaitingForUserActionSorted, modelsWaitingForUserActionIndexOffset);
} else {
if (model.ReadyForReturn) {
return findIndex(model, modelsReadyForReturnSorted, modelsReadyForReturnIndexOffset);
} else {
return findIndex(model, modelsInProcessSorted, modelsInProcessIndexOffset);
}
}
}
var modelInsert = function (model) {
var index = modelInsertIndex(model);
var insertTo = function (model, host) {
var hostLi = host.children('li');
if (hostLi.length == 0 || hostLi.length < index) {
host.append(model.htmlLi);
} else {
if (index == 0) {
host.prepend(model.htmlLi);
} else {
$(hostLi.get(index - 1)).after(model.htmlLi);
}
}
}
if (model.WaitingForUserAction) {
insertTo(model, $waitingForUserActionContent);
window.setTimeout(updateScrollWaitingForUserAction, 100);
} else {
if (model.ReadyForReturn) {
insertTo(model, $readyForReturnContent);
window.setTimeout(updateScrollReadyForReturn, 100);
} else {
insertTo(model, $inProcessContent);
window.setTimeout(updateScrollInProcess, 100);
}
}
}
var removeModel = function (model) {
if (model) {
if (model.updateAtToken) {
window.clearTimeout(model.updateAtToken);
};
model.htmlLi.slideUp('fast', function () {
model.htmlLi.remove();
});
}
};
var scheduleModelUpdate = function (model) {
if (model.updateAtToken) {
window.clearTimeout(model.updateAtToken);
};
if (model.UpdateAt) {
if (typeof model.UpdateAt == 'string' && model.UpdateAt.indexOf('\/Date(') == 0) {
model.UpdateAt = new Date(parseInt(model.UpdateAt.substr(6)));
}
var nowMilliseconds = new Date().getTime();
var updateAtMilliseconds = (model.UpdateAt - nowMilliseconds);
if (updateAtMilliseconds > 0) {
model.updateAtToken = window.setTimeout(function () { updatedModel(model.UserId); }, updateAtMilliseconds);
} else {
model.UpdateAt = null;
}
}
};
var processModel = function (id, model, init) {
if (!calculateFilter(model)) {
removeModel(models[id]);
delete models[id];
sortModels();
} else {
var existing = models[id];
models[id] = model;
// Add
model.htmlContent = $('<div>').text(model.UserId + ' - ' + model.UserDisplayName);
if (!model.ReadyForReturn && model.EstimatedReturnTime) {
model.htmlContent.append($('<span class="small">').text(' (Expected: ' + model.EstimatedReturnTime + ')'));
}
if (model.WaitingForUserAction) {
model.htmlContent.append($('<span class="small">').text(' (Since ' + model.WaitingForUserActionSince + ')'));
} else {
if (model.ReadyForReturn && model.ReadyForReturnSince) {
model.htmlContent.append($('<span class="small">').text(' (Ready ' + model.ReadyForReturnSince + ')'));
}
}
if (existing) {
if (existing.ReadyForReturn != model.ReadyForReturn || existing.WaitingForUserAction != model.WaitingForUserAction) {
removeModel(existing);
model.htmlLi = $('<li>').html(model.htmlContent).data('ModelId', id).hide();
modelInsert(model);
if (init) {
model.htmlLi.fadeIn();
} else {
model.htmlLi.slideDown();
}
} else {
if (existing.updateAtToken) {
window.clearTimeout(existing.updateAtToken);
};
model.htmlLi = existing.htmlLi;
model.htmlLi.slideUp('fast', function () {
model.htmlLi.html(model.htmlContent).slideDown();
});
}
} else {
model.htmlLi = $('<li>').html(model.htmlContent).data('ModelId', id).hide();
modelInsert(model);
if (init) {
model.htmlLi.fadeIn();
} else {
model.htmlLi.slideDown('slow');
}
}
if (model.htmlLi && model.IsAlert) {
model.htmlLi.addClass('alert');
}
scheduleModelUpdate(model);
}
};
var updatedModel = function (id) {
var UserId = id.toString();
$.getJSON('@(Url.Action(MVC.Public.UserHeldDevices.UserHeldDevice()))', { id: UserId }, function (data) {
processModel(UserId, data, false);
});
};
var connectionError = function () {
if (persistantConnection) {
persistantConnection.stop();
persistantConnection = null;
window.setTimeout(function () {
window.location.href = '@(Url.Action(MVC.Public.UserHeldDevices.Noticeboard()))';
}, 10000);
}
}
var init = function () {
buildFilters();
persistantConnection = $.connection('@(Url.Content("~/Public/UserHeldDevices/Notifications"))');
persistantConnection.received(updatedModel);
persistantConnection.error(connectionError);
persistantConnection.start(function () {
$.getJSON('@(Url.Action(MVC.Public.UserHeldDevices.UserHeldDevices()))', null, function (data) {
for (var i = 0; i < data.length; i++) {
processModel(data[i].UserId, data[i], true);
}
});
});
};
init();
});
</script>
<div id="mainFooter">
<img style="width: 32px; height: 32px; margin-top: -5px; margin-bottom: -15px;" src="@Links.ClientSource.Style.Images.Icon32_png" alt="Disco Logo" />
powered by Disco
</div>
</body>
</html>
File diff suppressed because it is too large Load Diff
+62 -62
View File
@@ -1,62 +1,62 @@
<?xml version="1.0"?>
<configuration>
<configSections>
<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
<section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
</sectionGroup>
</configSections>
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<add namespace="Disco.Models.Repository" />
<add namespace="Disco.BI.Extensions" />
<add namespace="Disco.Web" />
<add namespace="Disco.Web.Extensions" />
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
</namespaces>
</pages>
</system.web.webPages.razor>
<appSettings>
<add key="webpages:Enabled" value="false" />
</appSettings>
<system.web>
<httpHandlers>
<add path="*" verb="*" type="System.Web.HttpNotFoundHandler"/>
</httpHandlers>
<!--
Enabling request validation in view pages would cause validation to occur
after the input has already been processed by the controller. By default
MVC performs request validation before a controller processes the input.
To change this behavior apply the ValidateInputAttribute to a
controller or action.
-->
<pages
validateRequest="false"
pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<controls>
<add assembly="System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" namespace="System.Web.Mvc" tagPrefix="mvc" />
</controls>
</pages>
</system.web>
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<handlers>
<remove name="BlockViewHandler"/>
<add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />
</handlers>
</system.webServer>
</configuration>
<?xml version="1.0"?>
<configuration>
<configSections>
<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
<section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
</sectionGroup>
</configSections>
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<add namespace="Disco.Models.Repository" />
<add namespace="Disco.BI.Extensions" />
<add namespace="Disco.Web" />
<add namespace="Disco.Web.Extensions" />
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
</namespaces>
</pages>
</system.web.webPages.razor>
<appSettings>
<add key="webpages:Enabled" value="false" />
</appSettings>
<system.web>
<httpHandlers>
<add path="*" verb="*" type="System.Web.HttpNotFoundHandler"/>
</httpHandlers>
<!--
Enabling request validation in view pages would cause validation to occur
after the input has already been processed by the controller. By default
MVC performs request validation before a controller processes the input.
To change this behavior apply the ValidateInputAttribute to a
controller or action.
-->
<pages
validateRequest="false"
pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<controls>
<add assembly="System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" namespace="System.Web.Mvc" tagPrefix="mvc" />
</controls>
</pages>
</system.web>
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<handlers>
<remove name="BlockViewHandler"/>
<add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />
</handlers>
</system.webServer>
</configuration>
@@ -1,3 +1,3 @@
@{
Layout = "~/Areas/Public/Views/Shared/_Layout.cshtml";
@{
Layout = "~/Areas/Public/Views/Shared/_Layout.cshtml";
}
@@ -1,54 +1,54 @@
#pragma warning disable 1591
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.17929
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Disco.Web.Areas.Public.Views
{
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.BI.Extensions;
using Disco.Models.Repository;
using Disco.Web;
using Disco.Web.Extensions;
[System.CodeDom.Compiler.GeneratedCodeAttribute("RazorGenerator", "1.5.0.0")]
[System.Web.WebPages.PageVirtualPathAttribute("~/Areas/Public/Views/_ViewStart.cshtml")]
public class ViewStart : System.Web.Mvc.ViewStartPage
{
public ViewStart()
{
}
public override void Execute()
{
#line 1 "..\..\Areas\Public\Views\_ViewStart.cshtml"
Layout = "~/Areas/Public/Views/Shared/_Layout.cshtml";
#line default
#line hidden
}
}
}
#pragma warning restore 1591
#pragma warning disable 1591
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.17929
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Disco.Web.Areas.Public.Views
{
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.BI.Extensions;
using Disco.Models.Repository;
using Disco.Web;
using Disco.Web.Extensions;
[System.CodeDom.Compiler.GeneratedCodeAttribute("RazorGenerator", "1.5.0.0")]
[System.Web.WebPages.PageVirtualPathAttribute("~/Areas/Public/Views/_ViewStart.cshtml")]
public class ViewStart : System.Web.Mvc.ViewStartPage
{
public ViewStart()
{
}
public override void Execute()
{
#line 1 "..\..\Areas\Public\Views\_ViewStart.cshtml"
Layout = "~/Areas/Public/Views/Shared/_Layout.cshtml";
#line default
#line hidden
}
}
}
#pragma warning restore 1591