Compare commits

..

23 Commits

Author SHA1 Message Date
Sipke Schoorstra
b8acabd3e0 Wrapped owin middleware config
This wraps owin middle ware configuration within a work context scope.

Fixes #6991
2016-09-28 16:15:51 +02:00
Sipke Schoorstra
8218535d27 Added CodeRush for Roslyn settings folder to .gitignore. 2016-09-28 16:10:46 +02:00
Matthew Harris
a7c4dfbf7c [Fixes #7153] Typo .buton:active in several css files (#7154)
* [Fixes #7153] Typo .buton:active in several css files

[Fixes #7153] Typo .buton:active in several css files

* [Fixes #7153] Typo .buton:active in several css files

[Fixes #7153] Typo .buton:active in several css files

* [Fixes #7153] Typo .buton:active in several css files

[Fixes #7153] Typo .buton:active in several css files

* [Fixes #7153] Typo .buton:active in several css files

[Fixes #7153] Typo .buton:active in several css files
2016-09-24 22:30:55 +02:00
Sipke Schoorstra
bc74aec232 Fixed ContentFieldHarvester when NULL Content
The content field harvester throws an error when the LayoutEditor is rendered without having a content item as the context (BluePrints, for example). The previous code would fall back to simply enumerating all fields of all parts to make available all content fields as elements. However, the content field elements can't render these fields without having a proper content item as context, so it would fail with an exception.

There are scenarios where one might still want to be able to add content field elements on the canvas even when there is no current content item (to create template layouts for example). But to support this, we need to figure out what we want to render if we can;t actually render the content field at design time. Perhaps a simplified representation would suffice in this scenario. To be discussed. Removing the broken feature for now.
2016-09-24 11:45:19 +02:00
Matthew Harris
84a95e3cb9 [Fixes #7125] tokenized css class left behind (#7127) 2016-09-22 13:03:46 -07:00
Matthew Harris
50224d5ebe [Fixes #7129] Boolean.cshtml doesn't have * required support in view (#7133) 2016-09-22 12:48:21 -07:00
Matthew Harris
357f1aa166 Fix incorrect title on edit page
Fixes #7142
2016-09-22 12:18:21 -07:00
Matthew Harris
27d5c6658a Labels hidden when datetime field added (#7146)
Fixes #7144
2016-09-22 12:13:26 -07:00
Daniel Stenson
8ec6e8a724 Preserve returnUrl value in Content-User.Edit.cshtml
Fixes #7141 #3447
2016-09-22 12:07:23 -07:00
Matthew Harris
e3c0c97b66 [Fixes #7121] Fix incorrect documentation url 2016-09-15 12:07:53 -07:00
Matthew Harris
be31746c4e [Fixes #7119] Path Comparison Case Sensitivity 2016-09-15 12:07:09 -07:00
Matthew Harris
0cac0ac601 [Fixes #7104] - Widget Element Title Encoding Fix 2016-09-02 09:21:21 -07:00
Mohammad Dameer
01fa02bd90 [Fixes #6812] Add shape attributes to "CreateElementTagBuilder" 2016-08-25 12:49:13 -07:00
jtkech
94ddb257e1 Pass the right display type to the widget element. (#7074) 2016-08-25 12:47:21 -07:00
judgestone
1c1e9e4c97 Allowing adding classes through ShapeTableBuilder.Describe
Small change to Content.Summary.cshtml to allow module developers to add classes to Content.Summary.cshtml via ShapeTableBuilder.Describe.

Fixes #7089
2016-08-19 09:39:00 -07:00
adrian booth
84288aeff6 fix typo of occured for logging messages and notification (#7083) 2016-08-15 14:25:41 +02:00
Pablo Sanchez
0deab6bd0d Sanitize username in activity 2016-08-04 12:58:41 -07:00
Lombiq
4c1254e128 Fixing that the debug log was created even in Release mode 2016-08-01 00:30:40 +02:00
Pablo Sanchez
dcc63228e5 [Fixes #7003] Fixing NRE 2016-07-21 12:31:40 -07:00
Carl Woodhouse
35c379191e [Fixes #7034] Don't cache pages when status code is changed in the view
* Fixed the output caching of non 200 responses when errors are thrown in views

* Added debug message to output cache when the response isn't cached due to a non 200 status code.
2016-07-21 12:17:33 -07:00
Lombiq
dbbeb175a6 Readme: Simplifying the "Project Status" section 2016-07-12 21:42:17 +02:00
Lombiq
a5b1aa5d2a Fixing that with multiple TinyMCE editors on a page multiple toolbars also appeared, see #7022 2016-07-12 18:08:02 +02:00
Daniel Stolt
e04b12d177 Removed incorrect comments in Gulpfile.js. 2016-07-03 12:52:48 +02:00
852 changed files with 38280 additions and 3889 deletions

3
.gitignore vendored
View File

@@ -68,6 +68,9 @@ ipch/
_ReSharper*/
*.[Rr]e[Ss]harper
# CodeRush is a .NET coding add-in
.cr*/
# TeamCity is a build add-in
_TeamCity*

View File

@@ -11,8 +11,9 @@
# Deleting bin and obj folders.
$currentPath = (Get-Item -Path ".\").FullName
# Add relative file paths here what you want to keep.
$whiteList = @()
$whiteListFolders = @()
$whiteList = @("\src\Orchard.Azure\Orchard.Azure.CloudService\Orchard.Azure.WebContent\Bin\Startup\SetIdleTimeout.cmd")
# Also add the bin/obj folder's path of the paths in the whiteList here. This is needed for performance reasons, the script will run faster this way.
$whiteListFolders = @("\src\Orchard.Azure\Orchard.Azure.CloudService\Orchard.Azure.WebContent\Bin")
Get-ChildItem -Path ($currentPath + "\src\") -Recurse |
Where-Object { $PSItem.PSIsContainer -and ( $PSItem.Name -eq "bin" -or $PSItem.Name -eq "obj") } |

View File

@@ -0,0 +1,5 @@
SET target=%1
IF "%target%"=="" SET target=Build
ClickToBuild %target% Orchard.proj src\Orchard.Azure\Orchard.Azure.sln

View File

@@ -6,6 +6,7 @@
<PropertyGroup>
<LibFolder>$(MSBuildProjectDirectory)\lib</LibFolder>
<SrcFolder>$(MSBuildProjectDirectory)\src</SrcFolder>
<AzureSrcFolder>$(SrcFolder)\Orchard.Azure</AzureSrcFolder>
<BuildFolder>$(MSBuildProjectDirectory)\build</BuildFolder>
<MsBuildTasksFolder>$(MSBuildProjectDirectory)\buildtasks</MsBuildTasksFolder>
<ArtifactsFolder>$(MSBuildProjectDirectory)\artifacts</ArtifactsFolder>
@@ -30,6 +31,7 @@
<Configuration Condition="$(Configuration) == ''">Release</Configuration>
<OrchardSolution>$(SrcFolder)\Orchard.sln</OrchardSolution>
<OrchardAzureSolution>$(AzureSrcFolder)\Orchard.Azure.sln</OrchardAzureSolution>
<Solution Condition="$(Solution) == ''">$(OrchardSolution)</Solution>
<!-- TeamCity build number -->
@@ -63,6 +65,7 @@
<Target Name="FullBuild">
<CallTarget Targets="Clean"/>
<CallTarget Targets="TypeScript"/>
<CallTarget Targets="Compile"/>
<CallTarget Targets="Test"/>
<CallTarget Targets="Package"/>
@@ -103,6 +106,16 @@
<CallTarget Targets="Gallery-Setup"/>
</Target>
<Target Name="AzureBuild">
<MSBuild Projects="$(OrchardAzureSolution)" Targets="Build">
</MSBuild>
</Target>
<Target Name="AzureCIBuild">
<MSBuild Projects="$(OrchardAzureSolution)" Targets="CIBuild">
</MSBuild>
</Target>
<!-- Building -->
<Target Name="Clean">
@@ -130,20 +143,23 @@
Properties="Configuration=$(Configuration);OutputPath=$(MsBuildTasksFolder)" />
</Target>
<Target Name="TypeScript" DependsOnTargets="CompileMsBuildTasks">
<ItemGroup>
<TypeScriptSources Include="$(SrcFolder)\**\Scripts\**\*.ts"/>
</ItemGroup>
<CompileTypeScriptFiles
InputFiles="@(TypeScriptSources)"
CompilerPath="$(LibFolder)\typescript\tsc.exe"
CompilerOptions="--target ES5">
<Output TaskParameter="OutputFiles" ItemName="Content" />
</CompileTypeScriptFiles>
</Target>
<!-- Testing -->
<Target Name="Test">
<!-- Run unit test assemblies -->
<CreateItem Include="$(CompileFolder)\*.Tests.*dll" Exclude="$(CompileFolder)\Orchard.Azure.Tests.dll">
<Output TaskParameter="Include" ItemName="TestAssemblies" />
</CreateItem>
<NUnit Assemblies="@(TestAssemblies)" ToolPath="@(NUnitPackageToolsFolder)" WorkingDirectory="$(CompileFolder)" OutputXmlFile="$(BuildFolder)\Orchard.Tests.xml" ExcludeCategory="longrunning" />
</Target>
<Target Name="TestAzure">
<!-- Run unit test assemblies -->
<CreateItem Include="$(CompileFolder)\Orchard.Azure.Tests.dll">
<CreateItem Include="$(CompileFolder)\*.Tests.*dll">
<Output TaskParameter="Include" ItemName="TestAssemblies" />
</CreateItem>
@@ -164,6 +180,7 @@
<UsingTask AssemblyFile="$(MsBuildTasksFolder)\MSBuild.Orchard.Tasks.dll" TaskName="MSBuild.Orchard.Tasks.FileUpdateLines" />
<UsingTask AssemblyFile="$(MsBuildTasksFolder)\MSBuild.Orchard.Tasks.dll" TaskName="MSBuild.Orchard.Tasks.ValidateExtensionProjectFiles" />
<UsingTask AssemblyFile="$(MsBuildTasksFolder)\MSBuild.Orchard.Tasks.dll" TaskName="MSBuild.Orchard.Tasks.XmlDelete" />
<UsingTask AssemblyFile="$(MsBuildTasksFolder)\MSBuild.Orchard.Tasks.dll" TaskName="MSBuild.Orchard.Tasks.CompileTypeScriptFiles" />
<Target Name="Package-Stage" DependsOnTargets="Compile">
<CallTarget Targets="CompileMsBuildTasks"/>
@@ -332,7 +349,8 @@
$(MSBuildProjectDirectory)\**\*.patch;
$(MSBuildProjectDirectory)\**\*.hgignore;
$(MSBuildProjectDirectory)\**\*.hg*\**\*;
$(LibFolder)\nunit\addins\**\*;" />
$(LibFolder)\nunit\addins\**\*;
" Exclude="$(AzureSrcFolder)\Orchard.Azure.CloudService\*Content\**\*" />
<Zip-Stage Include="$(StageFolder)\**\*" />
@@ -348,7 +366,7 @@
</ItemGroup>
<MakeDir Directories="$(MsDeployArtifactFolder);$(SourceArtifactFolder)" />
<MakeDir Directories="$(MsDeployArtifactFolder);$(SourceArtifactFolder)"/>
<PropertyGroup>
<ZipVersionFileSuffix Condition="$(Version) != ''">.$(Version)</ZipVersionFileSuffix>

View File

@@ -22,16 +22,13 @@ Our mission is to empower our users and foster a dedicated and diverse community
## Project Status
Orchard is currently in version **[1.10.1](https://github.com/OrchardCMS/Orchard/releases/tag/1.10.1)** and **[1.9.3](https://github.com/OrchardCMS/Orchard/releases/tag/1.9.3)**:
- *1.10.1* is the latest minor version that contains bugfixes and the more impactful changes and new features added in the latest major version (*1.10*). **If you're new to Orchard, you should use this version.**
- *1.9.3* contains further bugfixes in addition to *1.9.2* and these versions are based on the feature set of Orchard *1.9*.
Orchard is currently in version **[1.10.1](https://github.com/OrchardCMS/Orchard/releases/tag/1.10.1)**: It contains bugfixes and the more impactful changes and new features added in the latest major version (*1.10*).
We invite participation by the developer community in shaping the projects direction, so that we can publicly validate our designs and development approach.
All our releases are available on our [Releases](https://github.com/OrchardCMS/Orchard/releases) page, and it's easy to [Install Orchard using the Web Platform Installer](http://docs.orchardproject.net/Documentation/Installing-Orchard) as well. We encourage interested developers to check out the source code on the Orchard GitHub site and get involved with the project.
* [Download the latest release](https://github.com/OrchardCMS/Orchard/releases)
* [Feature roadmap](http://docs.orchardproject.net/Documentation/Feature-roadmap)
* [Feature roadmap](http://docs.orchardproject.net/Documentation/feature-roadmap)
* [Docs and designs/specs](http://www.orchardproject.net/docs)
* [About us](http://www.orchardproject.net/about)
* [Contact us](mailto:ofeedbk@microsoft.com)

451
lib/typescript/License.htm Normal file
View File

@@ -0,0 +1,451 @@
<html>
<head>
<meta http-equiv=Content-Type content="text/html; charset=utf-8">
<title>TypeScript for Microsoft Visual Studio</title>
<style>
<!--
/* Font Definitions */
@font-face
{font-family:"Segoe UI";
panose-1:2 11 5 2 4 2 4 2 2 3;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin-top:6.0pt;
margin-right:0in;
margin-bottom:6.0pt;
margin-left:0in;
font-size:9.5pt;
font-family:"Tahoma","sans-serif";}
h1
{mso-style-link:"Heading 1 Char";
margin-top:6.0pt;
margin-right:0in;
margin-bottom:6.0pt;
margin-left:17.85pt;
text-indent:-17.85pt;
font-size:9.5pt;
font-family:"Tahoma","sans-serif";}
h2
{mso-style-link:"Heading 2 Char";
margin-top:6.0pt;
margin-right:0in;
margin-bottom:6.0pt;
margin-left:.5in;
text-indent:-18.15pt;
font-size:9.5pt;
font-family:"Tahoma","sans-serif";}
a:link
{color:blue;
text-decoration:underline;}
a:visited
{color:purple;
text-decoration:underline;}
p.Body1, li.Body1, div.Body1
{mso-style-name:"Body 1";
margin-top:6.0pt;
margin-right:0in;
margin-bottom:6.0pt;
margin-left:17.85pt;
font-size:9.5pt;
font-family:"Tahoma","sans-serif";}
p.Bullet2, li.Bullet2, div.Bullet2
{mso-style-name:"Bullet 2";
margin-top:6.0pt;
margin-right:0in;
margin-bottom:6.0pt;
margin-left:.5in;
text-indent:-18.15pt;
font-size:9.5pt;
font-family:"Tahoma","sans-serif";}
p.Bullet3, li.Bullet3, div.Bullet3
{mso-style-name:"Bullet 3";
mso-style-link:"Bullet 3 Char1";
margin-top:6.0pt;
margin-right:0in;
margin-bottom:6.0pt;
margin-left:53.85pt;
text-indent:-17.85pt;
font-size:9.5pt;
font-family:"Tahoma","sans-serif";}
p.HeadingEULA, li.HeadingEULA, div.HeadingEULA
{mso-style-name:"Heading EULA";
margin-top:6.0pt;
margin-right:0in;
margin-bottom:6.0pt;
margin-left:0in;
font-size:14.0pt;
font-family:"Tahoma","sans-serif";
font-weight:bold;}
p.HeadingSoftwareTitle, li.HeadingSoftwareTitle, div.HeadingSoftwareTitle
{mso-style-name:"Heading Software Title";
margin-top:6.0pt;
margin-right:0in;
margin-bottom:6.0pt;
margin-left:0in;
border:none;
padding:0in;
font-size:14.0pt;
font-family:"Tahoma","sans-serif";
font-weight:bold;}
p.Preamble, li.Preamble, div.Preamble
{mso-style-name:Preamble;
margin-top:6.0pt;
margin-right:0in;
margin-bottom:6.0pt;
margin-left:0in;
font-size:9.5pt;
font-family:"Tahoma","sans-serif";
font-weight:bold;}
span.Body2Char
{mso-style-name:"Body 2 Char";
font-family:"Tahoma","sans-serif";}
p.PreambleBorderAbove, li.PreambleBorderAbove, div.PreambleBorderAbove
{mso-style-name:"Preamble Border Above";
margin-top:6.0pt;
margin-right:0in;
margin-bottom:6.0pt;
margin-left:0in;
border:none;
padding:0in;
font-size:9.5pt;
font-family:"Tahoma","sans-serif";
font-weight:bold;}
p.Body0Bold, li.Body0Bold, div.Body0Bold
{mso-style-name:"Body 0 Bold";
mso-style-link:"Body 0 Bold Char";
margin:0in;
margin-bottom:.0001pt;
font-size:9.5pt;
font-family:"Tahoma","sans-serif";
font-weight:bold;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
/* List Definitions */
ol
{margin-bottom:0in;}
ul
{margin-bottom:0in;}
-->
</style>
</head>
<body lang=EN-US link=blue vlink=purple>
<div class=WordSection1>
<p class=HeadingEULA><span style='font-family:"Segoe UI","sans-serif"'>MICROSOFT
PRE-RELEASE SOFTWARE LICENSE TERMS</span></p>
<div style='border:none;border-bottom:solid windowtext 1.0pt;padding:0in 0in 1.0pt 0in'>
<p class=HeadingSoftwareTitle><span style='font-family:"Segoe UI","sans-serif"'>TYPESCRIPT
FOR MICROSOFT VISUAL STUDIO</span></p>
</div>
<p class=Preamble><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif";
font-weight:normal'>These license terms are an agreement between Microsoft
Corporation (or based on where you live, one of its affiliates) and you. Please
read them. They apply to the pre-release software named above, which includes
the media on which you received it, if any. The terms also apply to any
Microsoft</span></p>
<p class=Bullet2 style='margin-left:.25in;text-indent:-.25in'><span
style='font-size:11.0pt;font-family:Symbol'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>updates,</span></p>
<p class=Bullet2 style='margin-left:.25in;text-indent:-.25in'><span
style='font-size:11.0pt;font-family:Symbol'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>supplements,</span></p>
<p class=Bullet2 style='margin-left:.25in;text-indent:-.25in'><span
style='font-size:11.0pt;font-family:Symbol'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>Internet-based
services, and</span></p>
<p class=Bullet2 style='margin-left:.25in;text-indent:-.25in'><span
style='font-size:11.0pt;font-family:Symbol'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>support
services</span></p>
<p class=Preamble><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif";
font-weight:normal'>for this software, unless other terms accompany those items.
If so, those terms apply.</span></p>
<p class=Preamble><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>BY
USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT
USE THE SOFTWARE.</span></p>
<div style='border:none;border-top:solid windowtext 1.0pt;padding:1.0pt 0in 0in 0in'>
<p class=PreambleBorderAbove><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>IF
YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE RIGHTS BELOW.</span></p>
</div>
<h1><span style='font-size:10.0pt'>1.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>INSTALLATION
AND USE RIGHTS. </span></h1>
<h2><span style='font-size:10.0pt'>a.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>Installation
and Use.</span></h2>
<p class=Bullet3><span style='font-size:11.0pt;font-family:Symbol'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>You
may install and use any number of copies of the software on your devices solely
for evaluation purposes to design, develop and test your programs. </span></p>
<p class=Bullet3><span style='font-size:11.0pt;font-family:Symbol'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>You
may not test the software in a live operating environment unless Microsoft
permits you to do so under another agreement.</span></p>
<h2><span style='font-size:10.0pt'>b.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>Third
Party Programs.</span><span class=Body2Char><span style='font-size:11.0pt;
font-family:"Segoe UI","sans-serif";font-weight:normal'> The software may
include third party programs that Microsoft, not the third party, licenses to
you under this agreement. Notices, if any, for the third party program are
included for your information only.</span></span></h2>
<h1><span style='font-size:10.0pt'>2.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>TERM.</span><span
style='font-size:11.0pt;font-family:"Segoe UI","sans-serif";font-weight:normal'>
The term of this agreement is until 31 December 2015.</span></h1>
<h1><span style='font-size:10.0pt'>3.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>PRE-RELEASE
SOFTWARE. </span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif";
font-weight:normal'>This software is a pre-release version. It may not work the
way a final version of the software will. We may change it for the final,
commercial version. We also may not release a commercial version.</span></h1>
<h1><span style='font-size:10.0pt'>4.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>FEEDBACK.
</span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif";
font-weight:normal'>If you give feedback about the software to Microsoft, you
give to Microsoft, without charge, the right to use, share and commercialize
your feedback in any way and for any purpose. You also give to third parties,
without charge, any patent rights needed for their products, technologies and
services to use or interface with any specific parts of a Microsoft software or
service that includes the feedback. You will not give feedback that is subject
to a license that requires Microsoft to license its software or documentation
to third parties because we include your feedback in them. These rights survive
this agreement.</span></h1>
<h1><span style='font-size:10.0pt'>5.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>SCOPE
OF LICENSE.</span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif";
font-weight:normal'> The software is licensed, not sold. This agreement only
gives you some rights to use the software. Microsoft reserves all other rights.
Unless applicable law gives you more rights despite this limitation, you may
use the software only as expressly permitted in this agreement. In doing so,
you must comply with any technical limitations in the software that only allow
you to use it in certain ways. You may not</span></h1>
<p class=Bullet2><span style='font-size:11.0pt;font-family:Symbol'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>disclose
the results of any benchmark tests of the software to any third party without
Microsofts prior written approval;</span></p>
<p class=Bullet2><span style='font-size:11.0pt;font-family:Symbol'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>work
around any technical limitations in the software;</span></p>
<p class=Bullet2><span style='font-size:11.0pt;font-family:Symbol'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>reverse
engineer, decompile or disassemble the software, except and only to the extent
that applicable law expressly permits, despite this limitation;</span></p>
<p class=Bullet2><span style='font-size:11.0pt;font-family:Symbol'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>make
more copies of the software than specified in this agreement or allowed by
applicable law, despite this limitation;</span></p>
<p class=Bullet2><span style='font-size:11.0pt;font-family:Symbol'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>publish
the software for others to copy;</span></p>
<p class=Bullet2><span style='font-size:11.0pt;font-family:Symbol'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>rent,
lease or lend the software;</span></p>
<p class=Bullet2><span style='font-size:11.0pt;font-family:Symbol'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>transfer
the software or this agreement to any third party; or</span></p>
<p class=Bullet2><span style='font-size:11.0pt;font-family:Symbol'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>use
the software for commercial software hosting services.</span></p>
<h1><span class=MsoHyperlink><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";
color:windowtext;text-decoration:none'>6.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;
</span></span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>EXPORT
RESTRICTIONS.</span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif";
font-weight:normal'> The software is subject to United States export laws and
regulations. You must comply with all domestic and international export laws
and regulations that apply to the software. These laws include restrictions on
destinations, end users and end use. For additional information, see <a href="http://www.microsoft.com/exporting">http://www.microsoft.com/exporting</a></span>.</span></h1>
<h1><span style='font-size:10.0pt'>7.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>SUPPORT
SERVICES. </span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif";
font-weight:normal'>Because this software is “as is,” we may not provide
support services for it.</span></h1>
<h1><span style='font-size:10.0pt'>8.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>ENTIRE
AGREEMENT.</span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif";
font-weight:normal'> This agreement, and the terms for supplements, updates,
Internet-based services and support services that you use, are the entire
agreement for the software and support services.</span></h1>
<h1 style='margin-left:.25in;text-indent:-.25in'><span style='font-size:10.0pt'>9.<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp; </span></span><span
style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>APPLICABLE LAW.</span></h1>
<h2><span style='font-size:10.0pt'>a.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>United
States.</span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif";
font-weight:normal'> If you acquired the software in the United States,
Washington state law governs the interpretation of this agreement and applies
to claims for breach of it, regardless of conflict of laws principles. The laws
of the state where you live govern all other claims, including claims under
state consumer protection laws, unfair competition laws, and in tort.</span></h2>
<h2><span style='font-size:10.0pt'>b.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>Outside
the United States.</span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif";
font-weight:normal'> If you acquired the software in any other country, the
laws of that country apply.</span></h2>
<h1><span style='font-size:10.0pt'>10.<span style='font:7.0pt "Times New Roman"'>&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>LEGAL
EFFECT.</span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif";
font-weight:normal'> This agreement describes certain legal rights. You may
have other rights under the laws of your country. You may also have rights with
respect to the party from whom you acquired the software. This agreement does
not change your rights under the laws of your country if the laws of your
country do not permit it to do so.</span></h1>
<h1><span style='font-size:10.0pt'>11.<span style='font:7.0pt "Times New Roman"'>&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>DISCLAIMER
OF WARRANTY. THE SOFTWARE IS LICENSED “AS-IS.” YOU BEAR THE RISK OF USING IT.
MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE
ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH
THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS,
MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
PARTICULAR PURPOSE AND NON-INFRINGEMENT.</span></h1>
<p class=Body1><b><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>FOR
AUSTRALIA YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND
NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.</span></b></p>
<h1><span style='font-size:10.0pt'>12.<span style='font:7.0pt "Times New Roman"'>&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>LIMITATION
ON AND EXCLUSION OF REMEDIES AND DAMAGES</span><span style='font-size:11.0pt;
font-family:"Segoe UI","sans-serif"'>. YOU CAN RECOVER FROM MICROSOFT AND ITS
SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER
DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL
DAMAGES.</span></h1>
<p class=Body1><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>This
limitation applies to</span></p>
<p class=Bullet2><span style='font-size:11.0pt;font-family:Symbol'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>anything
related to the software, services, content (including code) on third party
Internet sites, or third party programs; and</span></p>
<p class=Bullet2><span style='font-size:11.0pt;font-family:Symbol'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>claims
for breach of contract, breach of warranty, guarantee or condition, strict
liability, negligence, or other tort to the extent permitted by applicable law.</span></p>
<p class=MsoNormal style='margin-left:.25in'><span style='font-size:11.0pt;
font-family:"Segoe UI","sans-serif"'>It also applies even if Microsoft knew or
should have known about the possibility of the damages. The above limitation or
exclusion may not apply to you because your country may not allow the exclusion
or limitation of incidental, consequential or other damages.</span></p>
<p class=MsoNormal style='margin-left:.25in'><span style='font-size:11.0pt;
font-family:"Segoe UI","sans-serif"'>&nbsp;</span></p>
<p class=MsoNormal><b><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>Please
note: As this software is distributed in Quebec, Canada, some of the clauses in
this agreement are provided below in French.</span></b></p>
<p class=MsoNormal><b><span lang=FR style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>Remarque
: Ce logiciel étant distribué au Québec, Canada, certaines des clauses dans ce
contrat sont fournies ci-dessous en français.</span></b></p>
<p class=MsoNormal><b><span lang=FR style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>EXONÉRATION
DE GARANTIE.</span></b><span lang=FR style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>
Le logiciel visé par une licence est offert « tel quel ». Toute utilisation de
ce logiciel est à votre seule risque et péril. Microsoft naccorde aucune autre
garantie expresse. Vous pouvez bénéficier de droits additionnels en vertu du
droit local sur la protection des consommateurs, que ce contrat ne peut
modifier. La ou elles sont permises par le droit locale, les garanties
implicites de qualité marchande, dadéquation à un usage particulier et
dabsence de contrefaçon sont exclues.</span></p>
<p class=MsoNormal><b><span lang=FR style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>LIMITATION
DES DOMMAGES-INTÉRÊTS ET EXCLUSION DE RESPONSABILITÉ POUR LES DOMMAGES.</span></b><span
lang=FR style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'> Vous
pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de
dommages directs uniquement à hauteur de 5,00 $ US. Vous ne pouvez prétendre à
aucune indemnisation pour les autres dommages, y compris les dommages spéciaux,
indirects ou accessoires et pertes de bénéfices.</span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>Cette
limitation concerne :</span></p>
<p class=MsoNormal style='margin-left:.25in;text-indent:-.25in'><span lang=FR
style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>tout ce qui est
relié au logiciel, aux services ou au contenu (y compris le code) figurant sur
des sites Internet tiers ou dans des programmes tiers ; et</span></p>
<p class=MsoNormal style='margin-left:.25in;text-indent:-.25in'><span lang=FR
style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>les réclamations
au titre de violation de contrat ou de garantie, ou au titre de responsabilité
stricte, de négligence ou dune autre faute dans la limite autorisée par la loi
en vigueur.</span></p>
<p class=MsoNormal><span lang=FR style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>Elle
sapplique également, même si Microsoft connaissait ou devrait connaître
léventualité dun tel dommage. Si votre pays nautorise pas lexclusion ou la
limitation de responsabilité pour les dommages indirects, accessoires ou de
quelque nature que ce soit, il se peut que la limitation ou lexclusion
ci-dessus ne sappliquera pas à votre égard.</span></p>
<p class=Body0Bold style='margin-top:6.0pt;margin-right:0in;margin-bottom:6.0pt;
margin-left:0in'><span lang=FR style='font-size:11.0pt;font-family:"Segoe UI","sans-serif"'>EFFET
JURIDIQUE.</span><span lang=FR style='font-size:11.0pt;font-family:"Segoe UI","sans-serif";
font-weight:normal'> Le présent contrat décrit certains droits juridiques. Vous
pourriez avoir dautres droits prévus par les lois de votre pays. Le présent
contrat ne modifie pas les droits que vous confèrent les lois de votre pays si
celles-ci ne le permettent pas.</span></p>
</div>
</body>
</html>

14219
lib/typescript/lib.d.ts vendored Normal file

File diff suppressed because it is too large Load Diff

BIN
lib/typescript/tsc.exe Normal file

Binary file not shown.

18496
lib/typescript/tsc.js Normal file

File diff suppressed because one or more lines are too long

BIN
lib/typescript/tschost.dll Normal file

Binary file not shown.

View File

@@ -2,28 +2,20 @@ var fs = require("fs"),
glob = require("glob"),
path = require("path-posix"),
merge = require("merge-stream"),
gulp = require("gulp"),
gulpif = require("gulp-if"),
print = require("gulp-print"),
debug = require("gulp-debug"),
gulp = require("gulp"),
newer = require("gulp-newer"),
plumber = require("gulp-plumber"),
sourcemaps = require("gulp-sourcemaps"),
less = require("gulp-less"),
sass = require("gulp-sass"),
cssnano = require("gulp-cssnano"),
autoprefixer = require("gulp-autoprefixer"),
minify = require("gulp-minify-css"),
typescript = require("gulp-typescript"),
uglify = require("gulp-uglify"),
rename = require("gulp-rename"),
concat = require("gulp-concat"),
header = require("gulp-header"),
eol = require("gulp-eol");
// For compat with older versions of Node.js.
require("es6-promise").polyfill();
// To suppress memory leak warning from gulp.watch().
require("events").EventEmitter.prototype._maxListeners = 100;
header = require("gulp-header");
/*
** GULP TASKS
@@ -136,41 +128,7 @@ function buildCssPipeline(assetGroup, doConcat, doRebuild) {
throw "Input file '" + inputPath + "' is not of a valid type for output file '" + assetGroup.outputPath + "'.";
});
var generateSourceMaps = assetGroup.hasOwnProperty("generateSourceMaps") ? assetGroup.generateSourceMaps : true;
var containsLessOrScss = assetGroup.inputPaths.some(function (inputPath) {
var ext = path.extname(inputPath).toLowerCase();
return ext === ".less" || ext === ".scss";
});
// Source maps are useless if neither concatenating nor transforming.
if ((!doConcat || assetGroup.inputPaths.length < 2) && !containsLessOrScss)
generateSourceMaps = false;
var minifiedStream = gulp.src(assetGroup.inputPaths) // Minified output, source mapping completely disabled.
.pipe(gulpif(!doRebuild,
gulpif(doConcat,
newer(assetGroup.outputPath),
newer({
dest: assetGroup.outputDir,
ext: ".css"
}))))
.pipe(plumber())
.pipe(gulpif("*.less", less()))
.pipe(gulpif("*.scss", sass({
precision: 10
})))
.pipe(gulpif(doConcat, concat(assetGroup.outputFileName)))
.pipe(cssnano({
autoprefixer: { browsers: ["last 2 versions"] },
discardComments: { removeAll: true },
discardUnused: false,
mergeIdents: false,
reduceIdents: false,
zindex: false
}))
.pipe(rename({
suffix: ".min"
}))
.pipe(eol())
.pipe(gulp.dest(assetGroup.outputDir));
var devStream = gulp.src(assetGroup.inputPaths) // Non-minified output, with source mapping
return gulp.src(assetGroup.inputPaths)
.pipe(gulpif(!doRebuild,
gulpif(doConcat,
newer(assetGroup.outputPath),
@@ -185,15 +143,20 @@ function buildCssPipeline(assetGroup, doConcat, doRebuild) {
precision: 10
})))
.pipe(gulpif(doConcat, concat(assetGroup.outputFileName)))
.pipe(autoprefixer({ browsers: ["last 2 versions"] }))
.pipe(header(
"/*\n" +
"** NOTE: This file is generated by Gulp and should not be edited directly!\n" +
"** Any changes made directly to this file will be overwritten next time its asset group is processed by Gulp.\n" +
//"** For more information, see the Readme.txt file in the Gulp solution folder.\n" +
"*/\n\n"))
.pipe(gulpif(generateSourceMaps, sourcemaps.write()))
.pipe(eol())
.pipe(gulp.dest(assetGroup.outputDir))
.pipe(minify())
.pipe(rename({
suffix: ".min"
}))
.pipe(gulp.dest(assetGroup.outputDir));
return merge([minifiedStream, devStream]);
}
function buildJsPipeline(assetGroup, doConcat, doRebuild) {
@@ -203,9 +166,6 @@ function buildJsPipeline(assetGroup, doConcat, doRebuild) {
throw "Input file '" + inputPath + "' is not of a valid type for output file '" + assetGroup.outputPath + "'.";
});
var generateSourceMaps = assetGroup.hasOwnProperty("generateSourceMaps") ? assetGroup.generateSourceMaps : true;
// Source maps are useless if neither concatenating nor transforming.
if ((!doConcat || assetGroup.inputPaths.length < 2) && !assetGroup.inputPaths.some(function (inputPath) { return path.extname(inputPath).toLowerCase() === ".ts"; }))
generateSourceMaps = false;
return gulp.src(assetGroup.inputPaths)
.pipe(gulpif(!doRebuild,
gulpif(doConcat,
@@ -227,6 +187,7 @@ function buildJsPipeline(assetGroup, doConcat, doRebuild) {
"/*\n" +
"** NOTE: This file is generated by Gulp and should not be edited directly!\n" +
"** Any changes made directly to this file will be overwritten next time its asset group is processed by Gulp.\n" +
//"** For more information, see the Readme.txt file in the Gulp solution folder.\n" +
"*/\n\n"))
.pipe(gulpif(generateSourceMaps, sourcemaps.write()))
.pipe(gulp.dest(assetGroup.outputDir))
@@ -234,6 +195,5 @@ function buildJsPipeline(assetGroup, doConcat, doRebuild) {
.pipe(rename({
suffix: ".min"
}))
.pipe(eol())
.pipe(gulp.dest(assetGroup.outputDir));
}

View File

@@ -1,36 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="AzureSDK" value="C:\Program Files (x86)\Microsoft SDKs\Azure\" />
<add key="AzureSDK" value="C:\Program Files\Microsoft SDKs\Windows Azure\"/>
<add key="Orchard.Azure.Settings.StorageConnectionString" value="UseDevelopmentStorage=true" />
<add key="Orchard.Azure.Media.StorageConnectionString" value="UseDevelopmentStorage=true" />
<add key="Orchard.Azure.Settings.StorageConnectionString" value="UseDevelopmentStorage=true"/>
<add key="Orchard.Azure.Media.StorageConnectionString" value="UseDevelopmentStorage=true"/>
</appSettings>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Microsoft.WindowsAzure.ServiceRuntime" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.7.0.0" newVersion="2.7.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Autofac" publicKeyToken="17863af14b0044da" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.5.0.0" newVersion="3.5.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="NHibernate" publicKeyToken="aa95f207798dfdb4" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.0.4000" newVersion="4.0.0.4000" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Iesi.Collections" publicKeyToken="aa95f207798dfdb4" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

View File

@@ -1,43 +1,28 @@
using System;
using System.Configuration;
using System.Configuration;
using System.Diagnostics;
using System.IO;
using System.Linq;
using Microsoft.WindowsAzure.Storage;
using Microsoft.WindowsAzure.Storage.Blob;
using Microsoft.WindowsAzure;
using Microsoft.WindowsAzure.StorageClient;
using NUnit.Framework;
namespace Orchard.Azure.Tests {
public abstract class AzureVirtualEnvironmentTest {
private Process _storageEmulator;
private Process _dsService;
protected abstract void OnInit();
[TestFixtureSetUp]
public void FixtureSetup() {
if (!Process.GetProcessesByName("AzureStorageEmulator").Any()) {
var azureSDKPath = ConfigurationManager.AppSettings["AzureSDK"];
var storageEmulatorRelativePath = "Storage Emulator\\AzureStorageEmulator.exe";
if (String.IsNullOrEmpty(azureSDKPath)) {
throw new ConfigurationErrorsException("Could not find the AppSetting \"AzureSDK\" that indicates the path to the Azure SDK on the local file system.");
}
var storageEmulatorAbsolutePath = Path.Combine(azureSDKPath, storageEmulatorRelativePath);
if (!File.Exists(storageEmulatorAbsolutePath)) {
throw new ConfigurationErrorsException("Could not find the executable to start the Azure Storage Emulator.");
}
var storageEmulatorStartInfo = new ProcessStartInfo {
Arguments = "start",
FileName = storageEmulatorAbsolutePath
var count = Process.GetProcessesByName("DSService").Length;
if ( count == 0 ) {
var start = new ProcessStartInfo {
Arguments = "/devstore:start",
FileName = Path.Combine(ConfigurationManager.AppSettings["AzureSDK"], @"emulator\csrun.exe")
};
_storageEmulator = new Process { StartInfo = storageEmulatorStartInfo };
_storageEmulator.Start();
_storageEmulator.WaitForExit();
_dsService = new Process { StartInfo = start };
_dsService.Start();
_dsService.WaitForExit();
}
OnInit();
@@ -45,32 +30,34 @@ namespace Orchard.Azure.Tests {
[TestFixtureTearDown]
public void FixtureTearDown() {
if (_storageEmulator != null)
_storageEmulator.Close();
if ( _dsService != null )
_dsService.Close();
}
protected void DeleteAllBlobs(string containerName, CloudStorageAccount account) {
protected void DeleteAllBlobs(string containerName, CloudStorageAccount account)
{
var blobClient = account.CreateCloudBlobClient();
var container = blobClient.GetContainerReference(containerName);
foreach (var blob in container.ListBlobs()) {
if (blob is CloudBlob) {
((CloudBlob)blob).DeleteIfExists();
foreach ( var blob in container.ListBlobs() ) {
if ( blob is CloudBlob ) {
( (CloudBlob)blob ).DeleteIfExists();
}
if (blob is CloudBlobDirectory) {
if ( blob is CloudBlobDirectory ) {
DeleteAllBlobs((CloudBlobDirectory)blob);
}
}
}
private static void DeleteAllBlobs(CloudBlobDirectory cloudBlobDirectory) {
foreach (var blob in cloudBlobDirectory.ListBlobs()) {
if (blob is CloudBlob) {
((CloudBlob)blob).DeleteIfExists();
foreach ( var blob in cloudBlobDirectory.ListBlobs() ) {
if ( blob is CloudBlob ) {
( (CloudBlob)blob ).DeleteIfExists();
}
if (blob is CloudBlobDirectory) {
if ( blob is CloudBlobDirectory ) {
DeleteAllBlobs((CloudBlobDirectory)blob);
}
}

View File

@@ -1,5 +1,5 @@
using System.Linq;
using Microsoft.WindowsAzure.Storage;
using Microsoft.WindowsAzure;
using NUnit.Framework;
using Orchard.Azure.Services.Environment.Configuration;
using Orchard.Environment.Configuration;
@@ -21,13 +21,13 @@ namespace Orchard.Azure.Tests.Environment.Configuration {
[SetUp]
public void Setup() {
// ensure default container is empty before running any test
DeleteAllBlobs(Constants.ShellSettingsDefaultContainerName, DevAccount);
DeleteAllBlobs(Constants.ShellSettingsContainerName, DevAccount);
}
[TearDown]
public void TearDown() {
// ensure default container is empty after running tests
DeleteAllBlobs(Constants.ShellSettingsDefaultContainerName, DevAccount);
DeleteAllBlobs(Constants.ShellSettingsContainerName, DevAccount);
}
[Test]

View File

@@ -2,26 +2,24 @@
using System.IO;
using System.Web;
using NUnit.Framework;
using Microsoft.WindowsAzure;
using System.Linq;
using Orchard.Caching;
using Orchard.Environment.Configuration;
using Orchard.Azure.Services.FileSystems.Media;
using Orchard.FileSystems.Media;
using Microsoft.WindowsAzure.Storage;
using Orchard.Azure.Services.Environment.Configuration;
namespace Orchard.Azure.Tests.FileSystems.Media {
[TestFixture]
public class AzureBlobStorageProviderTests : AzureVirtualEnvironmentTest {
private CloudStorageAccount _devAccount;
private IPlatformConfigurationAccessor _platformConfigurationAccessor;
CloudStorageAccount _devAccount;
private AzureBlobStorageProvider _azureBlobStorageProvider;
protected override void OnInit() {
CloudStorageAccount.TryParse("UseDevelopmentStorage=true", out _devAccount);
_platformConfigurationAccessor = new DefaultPlatformConfigurationAccessor();
_azureBlobStorageProvider = new AzureBlobStorageProvider(new ShellSettings { Name = "default" }, new ConfigurationMimeTypeProvider(), _platformConfigurationAccessor);
_azureBlobStorageProvider = new AzureBlobStorageProvider(new ShellSettings { Name = "default" }, new ConfigurationMimeTypeProvider(new DefaultCacheManager(typeof(ConfigurationMimeTypeProvider), new DefaultCacheHolder(new DefaultCacheContextAccessor()))));
}
[SetUp]
@@ -34,7 +32,7 @@ namespace Orchard.Azure.Tests.FileSystems.Media {
[ExpectedException(typeof(ArgumentException))]
public void GetFileShouldOnlyAcceptRelativePath() {
_azureBlobStorageProvider.CreateFile("foo.txt");
_azureBlobStorageProvider.GetFile("/foo.txt");
_azureBlobStorageProvider.GetFile("/foot.txt");
}
[Test]
@@ -269,11 +267,11 @@ namespace Orchard.Azure.Tests.FileSystems.Media {
}
[Test]
public void DefaultMimeTypeShouldBeAssigned() {
public void UnknownMimeTypeShouldBeAssigned() {
_azureBlobStorageProvider.CreateFile("foo1.xyz");
var file = _azureBlobStorageProvider.Container.GetBlockBlobReference("default/foo1.xyz");
file.FetchAttributes();
Assert.That(file.Properties.ContentType, Is.EqualTo("application/octet-stream"));
Assert.That(file.Properties.ContentType, Is.EqualTo("application/unknown"));
}
@@ -291,7 +289,7 @@ namespace Orchard.Azure.Tests.FileSystems.Media {
[Test]
public void GetStoragePathShouldReturnNullIfPathIsNotLocal()
{
var storagePath = _azureBlobStorageProvider.GetStoragePath("http://orchardproject.net/foo");
var storagePath = _azureBlobStorageProvider.GetStoragePath("foo");
Assert.IsNull(storagePath);
}

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
@@ -10,7 +10,7 @@
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Orchard.Azure.Tests</RootNamespace>
<AssemblyName>Orchard.Azure.Tests</AssemblyName>
<TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<FileUpgradeFlags>
</FileUpgradeFlags>
@@ -42,7 +42,6 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -52,62 +51,32 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<ItemGroup>
<Reference Include="Microsoft.Azure.KeyVault.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Azure.KeyVault.Core.1.0.0\lib\net40\Microsoft.Azure.KeyVault.Core.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.Data.Edm, Version=5.6.4.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Data.Edm.5.6.4\lib\net40\Microsoft.Data.Edm.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.Data.OData, Version=5.6.4.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Data.OData.5.6.4\lib\net40\Microsoft.Data.OData.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.Data.Services.Client, Version=5.6.4.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Data.Services.Client.5.6.4\lib\net40\Microsoft.Data.Services.Client.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.WindowsAzure.ServiceRuntime, Version=1.8.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.WindowsAzure.Storage, Version=5.0.2.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\WindowsAzure.Storage.5.0.2\lib\net40\Microsoft.WindowsAzure.Storage.dll</HintPath>
<Private>True</Private>
<Reference Include="Microsoft.WindowsAzure.Storage, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\lib\windowsazure\Microsoft.WindowsAzure.Storage.dll</HintPath>
</Reference>
<Reference Include="Moq, Version=4.2.1510.2205, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
<HintPath>..\packages\Moq.4.2.1510.2205\lib\NET40\Moq.dll</HintPath>
<Private>True</Private>
<Reference Include="Microsoft.WindowsAzure.StorageClient, Version=1.7.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
</Reference>
<Reference Include="Newtonsoft.Json, Version=7.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\packages\Newtonsoft.Json.7.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
<Private>True</Private>
<Reference Include="Moq, Version=4.0.812.4, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\lib\moq\Moq.dll</HintPath>
</Reference>
<Reference Include="nunit.framework, Version=2.5.10.11092, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL">
<HintPath>..\packages\NUnit.2.5.10.11092\lib\nunit.framework.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="nunit.mocks, Version=2.5.10.11092, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL">
<HintPath>..\packages\NUnit.2.5.10.11092\lib\nunit.mocks.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="pnunit.framework, Version=1.0.4109.34242, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\NUnit.2.5.10.11092\lib\pnunit.framework.dll</HintPath>
<Private>True</Private>
<Reference Include="nunit.framework, Version=2.5.2.9222, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\lib\nunit\nunit.framework.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Configuration" />
<Reference Include="System.Core">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
<Reference Include="System.Spatial, Version=5.6.4.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\System.Spatial.5.6.4\lib\net40\System.Spatial.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Web" />
<Reference Include="System.Xml.Linq">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
@@ -124,11 +93,21 @@
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="FileSystems\Media\AzureBlobStorageProviderTests.cs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Orchard.Web\Modules\Orchard.Azure\Orchard.Azure.csproj">
<Project>{cbc7993c-57d8-4a6c-992c-19e849dfe71d}</Project>
<Name>Orchard.Azure</Name>
</ProjectReference>
<ProjectReference Include="..\Orchard\Orchard.Framework.csproj">
<Project>{2D1D92BB-4555-4CBE-8D0E-63563D6CE4C6}</Project>
<Name>Orchard.Framework</Name>
<Private>false</Private>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<None Include="App.config">
<SubType>Designer</SubType>
</None>
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<BootstrapperPackage Include="Microsoft.Net.Client.3.5">
@@ -147,19 +126,6 @@
<Install>true</Install>
</BootstrapperPackage>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Orchard.Web\Modules\Orchard.Azure\Orchard.Azure.csproj">
<Project>{cbc7993c-57d8-4a6c-992c-19e849dfe71d}</Project>
<Name>Orchard.Azure</Name>
</ProjectReference>
<ProjectReference Include="..\Orchard\Orchard.Framework.csproj">
<Project>{2d1d92bb-4555-4cbe-8d0e-63563d6ce4c6}</Project>
<Name>Orchard.Framework</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.

View File

@@ -0,0 +1,32 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Azure.Tests", "Orchard.Azure.Tests.csproj", "{1CC62F45-E6FF-43D5-84BF-509A1085D994}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Framework", "..\Orchard\Orchard.Framework.csproj", "{2D1D92BB-4555-4CBE-8D0E-63563D6CE4C6}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Azure", "..\Orchard.Web\Modules\Orchard.Azure\Orchard.Azure.csproj", "{CBC7993C-57D8-4A6C-992C-19E849DFE71D}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{1CC62F45-E6FF-43D5-84BF-509A1085D994}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1CC62F45-E6FF-43D5-84BF-509A1085D994}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1CC62F45-E6FF-43D5-84BF-509A1085D994}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1CC62F45-E6FF-43D5-84BF-509A1085D994}.Release|Any CPU.Build.0 = Release|Any CPU
{2D1D92BB-4555-4CBE-8D0E-63563D6CE4C6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2D1D92BB-4555-4CBE-8D0E-63563D6CE4C6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2D1D92BB-4555-4CBE-8D0E-63563D6CE4C6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2D1D92BB-4555-4CBE-8D0E-63563D6CE4C6}.Release|Any CPU.Build.0 = Release|Any CPU
{CBC7993C-57D8-4A6C-992C-19E849DFE71D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{CBC7993C-57D8-4A6C-992C-19E849DFE71D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CBC7993C-57D8-4A6C-992C-19E849DFE71D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{CBC7993C-57D8-4A6C-992C-19E849DFE71D}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@@ -1,12 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Microsoft.Azure.KeyVault.Core" version="1.0.0" targetFramework="net452" />
<package id="Microsoft.Data.Edm" version="5.6.4" targetFramework="net452" />
<package id="Microsoft.Data.OData" version="5.6.4" targetFramework="net452" />
<package id="Microsoft.Data.Services.Client" version="5.6.4" targetFramework="net452" />
<package id="Moq" version="4.2.1510.2205" targetFramework="net452" />
<package id="Newtonsoft.Json" version="7.0.1" targetFramework="net452" />
<package id="NUnit" version="2.5.10.11092" targetFramework="net452" />
<package id="System.Spatial" version="5.6.4" targetFramework="net452" />
<package id="WindowsAzure.Storage" version="5.0.2" targetFramework="net452" />
</packages>

View File

@@ -0,0 +1,108 @@
<Configuration>
<CodeStyleSettings>
<ExternalPath IsNull="False">
</ExternalPath>
<Sharing>SOLUTION</Sharing>
<CSharp>
<FormatSettings>
<ALIGN_MULTILINE_ARRAY_AND_OBJECT_INITIALIZER>False</ALIGN_MULTILINE_ARRAY_AND_OBJECT_INITIALIZER>
<ALIGN_MULTILINE_FOR_STMT>False</ALIGN_MULTILINE_FOR_STMT>
<ALIGN_MULTIPLE_DECLARATION>False</ALIGN_MULTIPLE_DECLARATION>
<ANONYMOUS_METHOD_DECLARATION_BRACES>END_OF_LINE</ANONYMOUS_METHOD_DECLARATION_BRACES>
<CASE_BLOCK_BRACES>END_OF_LINE</CASE_BLOCK_BRACES>
<EMPTY_BLOCK_STYLE>TOGETHER</EMPTY_BLOCK_STYLE>
<FORCE_FIXED_BRACES_STYLE>ALWAYS_ADD</FORCE_FIXED_BRACES_STYLE>
<FORCE_FOR_BRACES_STYLE>ALWAYS_ADD</FORCE_FOR_BRACES_STYLE>
<FORCE_FOREACH_BRACES_STYLE>ALWAYS_ADD</FORCE_FOREACH_BRACES_STYLE>
<FORCE_IFELSE_BRACES_STYLE>ALWAYS_ADD</FORCE_IFELSE_BRACES_STYLE>
<FORCE_USING_BRACES_STYLE>ALWAYS_ADD</FORCE_USING_BRACES_STYLE>
<FORCE_WHILE_BRACES_STYLE>ALWAYS_ADD</FORCE_WHILE_BRACES_STYLE>
<INITIALIZER_BRACES>END_OF_LINE</INITIALIZER_BRACES>
<INVOCABLE_DECLARATION_BRACES>END_OF_LINE</INVOCABLE_DECLARATION_BRACES>
<MODIFIERS_ORDER IsNull="False">
<Item>public</Item>
<Item>protected</Item>
<Item>internal</Item>
<Item>private</Item>
<Item>new</Item>
<Item>abstract</Item>
<Item>virtual</Item>
<Item>override</Item>
<Item>sealed</Item>
<Item>static</Item>
<Item>readonly</Item>
<Item>extern</Item>
<Item>unsafe</Item>
<Item>volatile</Item>
</MODIFIERS_ORDER>
<OTHER_BRACES>END_OF_LINE</OTHER_BRACES>
<TYPE_DECLARATION_BRACES>END_OF_LINE</TYPE_DECLARATION_BRACES>
<WRAP_LINES>False</WRAP_LINES>
</FormatSettings>
<UsingsSettings />
<Naming2>
<EventHandlerPatternLong>$object$_On$event$</EventHandlerPatternLong>
<EventHandlerPatternShort>$event$Handler</EventHandlerPatternShort>
<ExceptionName IsNull="False">
</ExceptionName>
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="TypesAndNamespaces" />
<PredefinedRule Inspect="True" Prefix="I" Suffix="" Style="AaBb" ElementKind="Interfaces" />
<PredefinedRule Inspect="True" Prefix="T" Suffix="" Style="AaBb" ElementKind="TypeParameters" />
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="MethodPropertyEvent" />
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="aaBb" ElementKind="Locals" />
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="aaBb" ElementKind="LocalConstants" />
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="aaBb" ElementKind="Parameters" />
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="PublicFields" />
<PredefinedRule Inspect="True" Prefix="_" Suffix="" Style="aaBb" ElementKind="PrivateInstanceFields" />
<PredefinedRule Inspect="True" Prefix="_" Suffix="" Style="aaBb" ElementKind="PrivateStaticFields" />
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="Constants" />
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="PrivateConstants" />
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="StaticReadonly" />
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="PrivateStaticReadonly" />
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="EnumMember" />
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="Other" />
</Naming2>
</CSharp>
<VB>
<FormatSettings />
<ImportsSettings />
<Naming2>
<EventHandlerPatternLong>$object$_On$event$</EventHandlerPatternLong>
<EventHandlerPatternShort>$event$Handler</EventHandlerPatternShort>
</Naming2>
</VB>
<Web>
<Naming2 />
</Web>
<Xaml>
<Naming2 />
</Xaml>
<XML>
<FormatSettings />
</XML>
<GenerateMemberBody />
<Naming2>
<EventHandlerPatternLong>$object$_On$event$</EventHandlerPatternLong>
<EventHandlerPatternShort>$event$Handler</EventHandlerPatternShort>
<ExceptionName IsNull="False">
</ExceptionName>
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="TypesAndNamespaces" />
<PredefinedRule Inspect="True" Prefix="I" Suffix="" Style="AaBb" ElementKind="Interfaces" />
<PredefinedRule Inspect="True" Prefix="T" Suffix="" Style="AaBb" ElementKind="TypeParameters" />
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="MethodPropertyEvent" />
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="aaBb" ElementKind="Locals" />
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="aaBb" ElementKind="LocalConstants" />
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="aaBb" ElementKind="Parameters" />
<PredefinedRule Inspect="True" Prefix="_" Suffix="" Style="aaBb" ElementKind="PublicFields" />
<PredefinedRule Inspect="True" Prefix="_" Suffix="" Style="aaBb" ElementKind="PrivateInstanceFields" />
<PredefinedRule Inspect="True" Prefix="_" Suffix="" Style="aaBb" ElementKind="PrivateStaticFields" />
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="Constants" />
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="PrivateConstants" />
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="StaticReadonly" />
<PredefinedRule Inspect="False" Prefix="" Suffix="" Style="AaBb" ElementKind="PrivateStaticReadonly" />
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="EnumMember" />
<PredefinedRule Inspect="True" Prefix="" Suffix="" Style="AaBb" ElementKind="Other" />
<Abbreviation Text="SQ" />
</Naming2>
</CodeStyleSettings>
</Configuration>

View File

@@ -0,0 +1,129 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>2.7</ProductVersion>
<ProjectGuid>{03c5327d-4e8e-45a7-acd1-e18e7caa3c4a}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Orchard.Azure.CloudService</RootNamespace>
<AssemblyName>Orchard.Azure.CloudService</AssemblyName>
<StartDevelopmentStorage>True</StartDevelopmentStorage>
<Name>OrchardCloudService</Name>
<UseIISExpressByDefault>False</UseIISExpressByDefault>
<UseEmulatorExpressByDefault>False</UseEmulatorExpressByDefault>
<PackageEnableRemoteDebugger>False</PackageEnableRemoteDebugger>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<!-- Items for the project -->
<ItemGroup>
<ServiceConfiguration Include="ServiceConfiguration.Local.cscfg" />
<ServiceDefinition Include="ServiceDefinition.csdef" />
<ServiceConfiguration Include="ServiceConfiguration.Cloud.cscfg" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Orchard.Azure.Web\Orchard.Azure.Web.csproj">
<Name>Orchard.Azure.Web</Name>
<Project>{0df8f426-9f30-4918-8f64-a5b40ba12d10}</Project>
<Private>True</Private>
<RoleType>Web</RoleType>
<RoleName>Orchard.Azure.Web</RoleName>
<UpdateDiagnosticsConnectionStringOnPublish>True</UpdateDiagnosticsConnectionStringOnPublish>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<Folder Include="Orchard.Azure.WebContent\" />
<Folder Include="Orchard.Azure.WebContent\Bin" />
<Folder Include="Orchard.Azure.WebContent\Bin\Startup\" />
<Folder Include="Profiles" />
</ItemGroup>
<ItemGroup>
<Content Include="Orchard.Azure.WebContent\Bin\Startup\SetIdleTimeout.cmd">
<SubType>Content</SubType>
</Content>
</ItemGroup>
<ItemGroup>
<DiagnosticsConfiguration Include="Orchard.Azure.WebContent\diagnostics.wadcfgx" />
</ItemGroup>
<!-- Import the target files for this project template -->
<PropertyGroup>
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
<CloudExtensionsDir Condition=" '$(CloudExtensionsDir)' == '' ">$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v$(VisualStudioVersion)\Windows Azure Tools\2.7\</CloudExtensionsDir>
</PropertyGroup>
<Import Project="$(CloudExtensionsDir)Microsoft.WindowsAzure.targets" />
<!-- The BeforeAddRoleContent override ensures that content in themes and modules get added
to the Azure package. The web role project Orchard.Azure.Web contains assembly references
to all themes and modules, but won't contain their content unless those are somehow
included in the output. This target override includes all the appropriate content files
from underneath the regular Orchard.Web project folder. -->
<PropertyGroup>
<LibFolder>$(MSBuildProjectDirectory)\..\..\..\lib</LibFolder>
<SrcFolder>$(MSBuildProjectDirectory)\..\..</SrcFolder>
<StagingFolder>$(MSBuildProjectDirectory)\Staging</StagingFolder>
</PropertyGroup>
<Target Name="BeforeAddRoleContent">
<!-- Clean the staging area.-->
<RemoveDir Directories="$(StagingFolder)" ContinueOnError="true" />
<!-- Copy all additional content to the staging area. -->
<ItemGroup>
<!-- Exclude project/compilation artifacts. -->
<Excluded Include="$(SrcFolder)\**\bin\**\*;$(SrcFolder)\**\obj\**\*;$(SrcFolder)\**\*.user;$(SrcFolder)\**\*.cs;$(SrcFolder)\**\*.csproj;$(SrcFolder)\**\.hg\**\*" />
<Stage-Themes Include="$(SrcFolder)\Orchard.Web\Themes\**\*" Exclude="@(Excluded)" />
<Stage-Core Include="$(SrcFolder)\Orchard.Web\Core\**\*" Exclude="@(Excluded)" />
<Stage-Modules Include="$(SrcFolder)\Orchard.Web\Modules\**\*" Exclude="@(Excluded)" />
<SqlCeBinariesx86 Include="$(LibFolder)\sqlce\x86\**\*" />
<SqlCeBinariesx64 Include="$(LibFolder)\sqlce\amd64\**\*" />
</ItemGroup>
<Copy SourceFiles="@(Stage-Themes)" DestinationFolder="$(StagingFolder)\Themes\%(RecursiveDir)" />
<Copy SourceFiles="@(Stage-Core)" DestinationFolder="$(StagingFolder)\Core\%(RecursiveDir)" />
<Copy SourceFiles="@(Stage-Modules)" DestinationFolder="$(StagingFolder)\Modules\%(RecursiveDir)" />
<Copy SourceFiles="@(SqlCeBinariesx86)" DestinationFolder="$(StagingFolder)\SqlCe-x86\%(RecursiveDir)" SkipUnchangedFiles="true" />
<Copy SourceFiles="@(SqlCeBinariesx64)" DestinationFolder="$(StagingFolder)\SqlCe-x64\%(RecursiveDir)" SkipUnchangedFiles="true" />
<!-- Delete superfluous web.config files. -->
<ItemGroup>
<WebConfigFiles Include="$(StagingFolder)\Modules\*\web.config;$(StagingFolder)\Core\web.config" />
</ItemGroup>
<Delete Files="@(WebConfigFiles)" />
<!-- Include the folders in the packaged site content. -->
<ItemGroup>
<AzureRoleContent Include="$(StagingFolder)\Themes">
<RoleName>Orchard.Azure.Web</RoleName>
<Destination>..\sitesroot\0\Themes</Destination>
</AzureRoleContent>
<AzureRoleContent Include="$(StagingFolder)\Core">
<RoleName>Orchard.Azure.Web</RoleName>
<Destination>..\sitesroot\0\Core</Destination>
</AzureRoleContent>
<AzureRoleContent Include="$(StagingFolder)\Modules">
<RoleName>Orchard.Azure.Web</RoleName>
<Destination>..\sitesroot\0\Modules</Destination>
</AzureRoleContent>
<AzureRoleContent Include="$(StagingFolder)\SqlCe-x86">
<RoleName>Orchard.Azure.Web</RoleName>
<Destination>..\sitesroot\0\bin\x86</Destination>
</AzureRoleContent>
<AzureRoleContent Include="$(StagingFolder)\SqlCe-x64">
<RoleName>Orchard.Azure.Web</RoleName>
<Destination>..\sitesroot\0\bin\amd64</Destination>
</AzureRoleContent>
</ItemGroup>
</Target>
</Project>

View File

@@ -0,0 +1,4 @@
REM Unless running in the compute emulator, set the default idle timeout of IIS application pools to zero (no automatic recycling).
IF "%ComputeEmulatorRunning%" == "false" (
%windir%\system32\inetsrv\appcmd set config -section:applicationPools -applicationPoolDefaults.processModel.idleTimeout:00:00:00
)

View File

@@ -0,0 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
<DiagnosticsConfiguration xmlns="http://schemas.microsoft.com/ServiceHosting/2010/10/DiagnosticsConfiguration">
<PublicConfig xmlns="http://schemas.microsoft.com/ServiceHosting/2010/10/DiagnosticsConfiguration">
<WadCfg>
<DiagnosticMonitorConfiguration overallQuotaInMB="4096">
<DiagnosticInfrastructureLogs scheduledTransferPeriod="PT1M" scheduledTransferLogLevelFilter="Warning" />
<Directories scheduledTransferPeriod="PT1M">
<IISLogs containerName="wad-iis-logfiles" />
</Directories>
<PerformanceCounters>
<PerformanceCounterConfiguration counterSpecifier="\Memory\Available MBytes" sampleRate="PT3M" />
<PerformanceCounterConfiguration counterSpecifier="\Web Service(_Total)\ISAPI Extension Requests/sec" sampleRate="PT3M" />
<PerformanceCounterConfiguration counterSpecifier="\Web Service(_Total)\Bytes Total/Sec" sampleRate="PT3M" />
<PerformanceCounterConfiguration counterSpecifier="\ASP.NET Applications(__Total__)\Requests/Sec" sampleRate="PT3M" />
<PerformanceCounterConfiguration counterSpecifier="\ASP.NET Applications(__Total__)\Errors Total/Sec" sampleRate="PT3M" />
<PerformanceCounterConfiguration counterSpecifier="\ASP.NET\Requests Queued" sampleRate="PT3M" />
<PerformanceCounterConfiguration counterSpecifier="\ASP.NET\Requests Rejected" sampleRate="PT3M" />
</PerformanceCounters>
<WindowsEventLog scheduledTransferPeriod="PT1M">
<DataSource name="Application!*" />
</WindowsEventLog>
<Logs scheduledTransferPeriod="PT1M" scheduledTransferLogLevelFilter="Warning" />
</DiagnosticMonitorConfiguration>
</WadCfg>
</PublicConfig>
<PrivateConfig>
<StorageAccount name="" key="" endpoint="" />
</PrivateConfig>
<IsEnabled>true</IsEnabled>
</DiagnosticsConfiguration>

View File

@@ -0,0 +1 @@
TargetFrameWorkVersion=v4.0

View File

@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<ServiceConfiguration serviceName="OrchardCloudService" osFamily="4" osVersion="*" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration" schemaVersion="2015-04.2.6">
<Role name="Orchard.Azure.Web">
<Instances count="1" />
<ConfigurationSettings>
<Setting name="Orchard.Azure.Media.StorageConnectionString" value="UseDevelopmentStorage=true" />
<Setting name="Orchard.Azure.Settings.StorageConnectionString" value="UseDevelopmentStorage=true" />
<Setting name="Orchard.Azure.OutputCache.HostIdentifier" value="Orchard.Azure.Web" />
<Setting name="Orchard.Azure.OutputCache.CacheName" value="OutputCache" />
<Setting name="Orchard.Azure.OutputCache.AuthorizationToken" value="" />
<Setting name="Orchard.Azure.DatabaseCache.HostIdentifier" value="Orchard.Azure.Web" />
<Setting name="Orchard.Azure.DatabaseCache.CacheName" value="DatabaseCache" />
<Setting name="Orchard.Azure.DatabaseCache.AuthorizationToken" value="" />
<Setting name="Microsoft.WindowsAzure.Plugins.Caching.NamedCaches" value="{&quot;caches&quot;:[{&quot;name&quot;:&quot;default&quot;,&quot;policy&quot;:{&quot;eviction&quot;:{&quot;type&quot;:0},&quot;expiration&quot;:{&quot;defaultTTL&quot;:10,&quot;isExpirable&quot;:true,&quot;type&quot;:1},&quot;serverNotification&quot;:{&quot;isEnabled&quot;:false}},&quot;secondaries&quot;:0},{&quot;name&quot;:&quot;SessionStateCache&quot;,&quot;policy&quot;:{&quot;eviction&quot;:{&quot;type&quot;:0},&quot;expiration&quot;:{&quot;defaultTTL&quot;:60,&quot;isExpirable&quot;:true,&quot;type&quot;:2},&quot;serverNotification&quot;:{&quot;isEnabled&quot;:false}},&quot;secondaries&quot;:0},{&quot;name&quot;:&quot;OutputCache&quot;,&quot;policy&quot;:{&quot;eviction&quot;:{&quot;type&quot;:0},&quot;expiration&quot;:{&quot;defaultTTL&quot;:5,&quot;isExpirable&quot;:true,&quot;type&quot;:1},&quot;serverNotification&quot;:{&quot;isEnabled&quot;:false}},&quot;secondaries&quot;:0},{&quot;name&quot;:&quot;DatabaseCache&quot;,&quot;policy&quot;:{&quot;eviction&quot;:{&quot;type&quot;:0},&quot;expiration&quot;:{&quot;defaultTTL&quot;:5,&quot;isExpirable&quot;:true,&quot;type&quot;:1},&quot;serverNotification&quot;:{&quot;isEnabled&quot;:false}},&quot;secondaries&quot;:0}]}" />
<Setting name="Microsoft.WindowsAzure.Plugins.Caching.DiagnosticLevel" value="1" />
<Setting name="Microsoft.WindowsAzure.Plugins.Caching.CacheSizePercentage" value="30" />
<Setting name="Microsoft.WindowsAzure.Plugins.Caching.ConfigStoreConnectionString" value="UseDevelopmentStorage=true" />
<Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="UseDevelopmentStorage=true" />
</ConfigurationSettings>
</Role>
</ServiceConfiguration>

View File

@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<ServiceConfiguration serviceName="OrchardCloudService" osFamily="4" osVersion="*" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration" schemaVersion="2015-04.2.6">
<Role name="Orchard.Azure.Web">
<Instances count="1" />
<ConfigurationSettings>
<Setting name="Orchard.Azure.Media.StorageConnectionString" value="UseDevelopmentStorage=true" />
<Setting name="Orchard.Azure.Settings.StorageConnectionString" value="UseDevelopmentStorage=true" />
<Setting name="Orchard.Azure.OutputCache.HostIdentifier" value="Orchard.Azure.Web" />
<Setting name="Orchard.Azure.OutputCache.CacheName" value="OutputCache" />
<Setting name="Orchard.Azure.OutputCache.AuthorizationToken" value="" />
<Setting name="Orchard.Azure.DatabaseCache.HostIdentifier" value="Orchard.Azure.Web" />
<Setting name="Orchard.Azure.DatabaseCache.CacheName" value="DatabaseCache" />
<Setting name="Orchard.Azure.DatabaseCache.AuthorizationToken" value="" />
<Setting name="Microsoft.WindowsAzure.Plugins.Caching.NamedCaches" value="{&quot;caches&quot;:[{&quot;name&quot;:&quot;default&quot;,&quot;policy&quot;:{&quot;eviction&quot;:{&quot;type&quot;:0},&quot;expiration&quot;:{&quot;defaultTTL&quot;:10,&quot;isExpirable&quot;:true,&quot;type&quot;:1},&quot;serverNotification&quot;:{&quot;isEnabled&quot;:false}},&quot;secondaries&quot;:0},{&quot;name&quot;:&quot;SessionStateCache&quot;,&quot;policy&quot;:{&quot;eviction&quot;:{&quot;type&quot;:0},&quot;expiration&quot;:{&quot;defaultTTL&quot;:60,&quot;isExpirable&quot;:true,&quot;type&quot;:2},&quot;serverNotification&quot;:{&quot;isEnabled&quot;:false}},&quot;secondaries&quot;:0},{&quot;name&quot;:&quot;OutputCache&quot;,&quot;policy&quot;:{&quot;eviction&quot;:{&quot;type&quot;:0},&quot;expiration&quot;:{&quot;defaultTTL&quot;:5,&quot;isExpirable&quot;:true,&quot;type&quot;:1},&quot;serverNotification&quot;:{&quot;isEnabled&quot;:false}},&quot;secondaries&quot;:0},{&quot;name&quot;:&quot;DatabaseCache&quot;,&quot;policy&quot;:{&quot;eviction&quot;:{&quot;type&quot;:0},&quot;expiration&quot;:{&quot;defaultTTL&quot;:5,&quot;isExpirable&quot;:true,&quot;type&quot;:1},&quot;serverNotification&quot;:{&quot;isEnabled&quot;:false}},&quot;secondaries&quot;:0}]}" />
<Setting name="Microsoft.WindowsAzure.Plugins.Caching.DiagnosticLevel" value="1" />
<Setting name="Microsoft.WindowsAzure.Plugins.Caching.CacheSizePercentage" value="30" />
<Setting name="Microsoft.WindowsAzure.Plugins.Caching.ConfigStoreConnectionString" value="UseDevelopmentStorage=true" />
<Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="UseDevelopmentStorage=true" />
</ConfigurationSettings>
</Role>
</ServiceConfiguration>

View File

@@ -0,0 +1,43 @@
<?xml version="1.0" encoding="utf-8"?>
<ServiceDefinition name="OrchardCloudService" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2015-04.2.6">
<WebRole name="Orchard.Azure.Web">
<Sites>
<Site name="Web">
<Bindings>
<Binding name="HttpIn" endpointName="HttpIn" />
</Bindings>
</Site>
</Sites>
<Imports>
<Import moduleName="Caching" />
</Imports>
<ConfigurationSettings>
<Setting name="Orchard.Azure.Settings.StorageConnectionString" />
<Setting name="Orchard.Azure.Media.StorageConnectionString" />
<Setting name="Orchard.Azure.OutputCache.HostIdentifier" />
<Setting name="Orchard.Azure.OutputCache.CacheName" />
<Setting name="Orchard.Azure.OutputCache.AuthorizationToken" />
<Setting name="Orchard.Azure.DatabaseCache.HostIdentifier" />
<Setting name="Orchard.Azure.DatabaseCache.CacheName" />
<Setting name="Orchard.Azure.DatabaseCache.AuthorizationToken" />
<Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" />
</ConfigurationSettings>
<Endpoints>
<InputEndpoint name="HttpIn" protocol="http" port="80" />
</Endpoints>
<Startup>
<Task commandLine="Startup\SetIdleTimeout.cmd" executionContext="elevated" taskType="simple">
<Environment>
<!-- Create the environment variable that informs the startup task whether it is running
in the compute emulator or in the cloud. -->
<Variable name="ComputeEmulatorRunning">
<RoleInstanceValue xpath="/RoleEnvironment/Deployment/@emulated" />
</Variable>
</Environment>
</Task>
</Startup>
<LocalResources>
<LocalStorage name="DiagnosticStore" sizeInMB="20000" cleanOnRoleRecycle="false" />
</LocalResources>
</WebRole>
</ServiceDefinition>

View File

@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="autofac" type="Autofac.Configuration.SectionHandler, Autofac.Configuration"/>
</configSections>
<autofac defaultAssembly="Orchard.Framework">
<components>
<component instance-scope="single-instance" type="Orchard.Localization.Services.CultureDateTimeFormatProvider, Orchard.Framework" service="Orchard.Localization.Services.IDateTimeFormatProvider"></component>
<!-- Configure Orchard to store shell settings in Windows Azure Blob Storage. -->
<component instance-scope="single-instance" type="Orchard.FileSystems.Media.ConfigurationMimeTypeProvider, Orchard.Framework" service="Orchard.FileSystems.Media.IMimeTypeProvider"></component>
<component instance-scope="single-instance" type="Orchard.Azure.Services.Environment.Configuration.AzureBlobShellSettingsManager, Orchard.Azure" service="Orchard.Environment.Configuration.IShellSettingsManager"></component>
<!-- Configure Orchard to use role instance ID instead of Windows machine name for task lease records. -->
<component instance-scope="single-instance" type="Orchard.Azure.Services.Environment.AzureApplicationEnvironment, Orchard.Azure" service="Orchard.Environment.IApplicationEnvironment, Orchard.Framework"></component>
</components>
</autofac>
</configuration>

View File

@@ -0,0 +1,108 @@
<?xml version="1.0" encoding="utf-8" ?>
<HostComponents>
<Components>
<Component Type="Orchard.Environment.Extensions.ExtensionMonitoringCoordinator">
<Properties>
<!-- Set Value="true" to disable new extensions monitoring -->
<Property Name="Disabled" Value="true"/>
</Properties>
</Component>
<Component Type="Orchard.DisplayManagement.Descriptors.ShapePlacementStrategy.PlacementFileParser">
<Properties>
<!-- Set Value="true" to disable Placement files monitoring (Placement.info) -->
<Property Name="DisableMonitoring" Value="true"/>
</Properties>
</Component>
<Component Type="Orchard.DisplayManagement.Descriptors.ShapeTemplateStrategy.ShapeTemplateBindingStrategy">
<Properties>
<!-- Set Value="true" to disable template views monitoring (Views\*.cshtml) -->
<Property Name="DisableMonitoring" Value="true"/>
</Properties>
</Component>
<Component Type="Orchard.Environment.Extensions.Folders.ExtensionHarvester">
<Properties>
<!-- Set Value="true" to disable extension folders monitoring (new files in modules and themes) -->
<Property Name="DisableMonitoring" Value="true"/>
</Properties>
</Component>
<Component Type="Orchard.Environment.Extensions.Compilers.DefaultProjectFileParser">
<Properties>
<!-- Set Value="true" to disable project files monitoring (/Modules/**/*.csproj) -->
<Property Name="DisableMonitoring" Value="true"/>
</Properties>
</Component>
<Component Type="Orchard.Environment.Extensions.Loaders.DynamicExtensionLoader">
<Properties>
<!-- Set Value="true" to disable source files monitoring -->
<Property Name="DisableMonitoring" Value="true"/>
<!-- Set Value="true" to completely disable the Dynamic Extension Loader -->
<Property Name="Disabled" Value="true"/>
</Properties>
</Component>
<Component Type="Orchard.Environment.Extensions.Loaders.PrecompiledExtensionLoader">
<Properties>
<!-- Set Value="true" to disable pre-compiled files monitoring (~/Modules/**/bin/*.dll) -->
<Property Name="DisableMonitoring" Value="false"/>
</Properties>
</Component>
<Component Type="Orchard.FileSystems.Dependencies.DefaultDependenciesFolder">
<Properties>
<!-- Set Value="true" to disable the dependencies folder monitoring -->
<Property Name="DisableMonitoring" Value="true"/>
</Properties>
</Component>
<Component Type="Orchard.FileSystems.Dependencies.DefaultExtensionDependenciesManager">
<Properties>
<!-- Set Value="true" to disable compiled dependencides files monitoring -->
<Property Name="DisableMonitoring" Value="true"/>
</Properties>
</Component>
<Component Type="Orchard.Localization.Services.DefaultLocalizedStringManager">
<Properties>
<!-- Set Value="true" to disable localization files monitoring (*.po) -->
<Property Name="DisableMonitoring" Value="true"/>
</Properties>
</Component>
<Component Type="Orchard.Caching.DefaultParallelCacheContext">
<Properties>
<!-- Set Value="true" to disable parallel cache resolution -->
<Property Name="Disabled" Value="false"/>
</Properties>
</Component>
<Component Type="Orchard.Data.SessionConfigurationCache">
<Properties>
<!-- Set Value="true" to disable session configuration cache (mappings.bin). Recommended when using multiple instances. -->
<Property Name="Disabled" Value="false"/>
</Properties>
</Component>
<Component Type="Orchard.Environment.Descriptor.ShellDescriptorCache">
<Properties>
<!-- Set Value="true" to disable shell descriptors cache (cache.dat). Recommended when using multiple instances. -->
<Property Name="Disabled" Value="true"/>
</Properties>
</Component>
<Component Type="Orchard.Services.ClientAddressAccessor">
<Properties>
<!-- Set Value="true" to read the client host address from the specified HTTP header. -->
<Property Name="EnableClientHostAddressHeader" Value="false"/>
<!-- Set Value to the HTTP header name from which to read the client host address. Only used when EnableClientHostAddressHeader="true". If the specified header was not found, the system will fall back to the client host address as provided by the Request object.-->
<Property Name="ClientHostAddressHeaderName" Value="X-Forwarded-For"/>
</Properties>
</Component>
</Components>
</HostComponents>

View File

@@ -0,0 +1,37 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="autofac" type="Autofac.Configuration.SectionHandler, Autofac.Configuration"/>
</configSections>
<autofac defaultAssembly="Orchard.Framework">
<!--
To create tenant specific configurations, copy this file to ~/Config/Sites.{tenant}.config
where {tenant} is the technical name of the targetted tenant.
Allowed scopes: per-dependency, single-instance or per-lifetime-scope
-->
<components>
<!--
Uncomment to use ReadUncommitted as the default isolation level. Please not that
Sql Server Ce doesn't support ReadUncommitted. Isolation level for all database transaction.
See http://msdn.microsoft.com/en-us/library/system.transactions.isolationlevel.aspx
-->
<!--<component instance-scope="per-lifetime-scope" type="Orchard.Data.SessionLocator, Orchard.Framework" service="Orchard.Data.ISessionLocator">
<properties>
<property name="IsolationLevel" value="ReadUncommitted" />
</properties>
</component>-->
<!-- Delay between background services executions. -->
<!--<component instance-scope="single-instance" type="Orchard.Tasks.SweepGenerator" service="Orchard.Tasks.ISweepGenerator">
<properties>
<property name="Interval" value="00:01:00" />
</properties>
</component>-->
</components>
</autofac>
</configuration>

View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
<log4net xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
</log4net>

View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
<log4net xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
</log4net>

View File

@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8" ?>
<log4net>
<root>
<!-- Value of priority may be ALL, DEBUG, INFO, WARN, ERROR, FATAL, OFF. -->
<priority value="WARN" />
<appender-ref ref="AzureAppender" />
</root>
<appender name="AzureAppender" type="Orchard.Azure.Services.Logging.AzureDiagnosticsAppender, Orchard.Azure">
<filter type="log4net.Filter.LevelRangeFilter">
<!-- Only warning, error and fatal messages end up in this target, even if child loggers accept lower priority. -->
<levelMin value="WARN" />
</filter>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %logger - %P{Tenant} - %message%newline %P{Url}%newline" />
</layout>
</appender>
</log4net>

View File

@@ -0,0 +1 @@
<%@ Application Codebehind="Global.asax.cs" Inherits="Orchard.Azure.Web.MvcApplication" Language="C#" %>

View File

@@ -0,0 +1,56 @@
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Routing;
using Autofac;
using Microsoft.WindowsAzure.ServiceRuntime;
using Microsoft.WindowsAzure.Storage;
using Orchard.Environment;
namespace Orchard.Azure.Web {
// Note: For instructions on enabling IIS6 or IIS7 classic mode,
// visit http://go.microsoft.com/?LinkId=9394801
public class MvcApplication : HttpApplication {
private static IOrchardHost _host;
public static void RegisterRoutes(RouteCollection routes) {
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
}
protected void Application_Start() {
// For information on handling configuration changes
// see the MSDN topic at http://go.microsoft.com/fwlink/?LinkId=166357.
RoleEnvironment.Changing += (sender, e) => {
// If a configuration setting is changing
if (e.Changes.Any(change => change is RoleEnvironmentConfigurationSettingChange)) {
// Set e.Cancel to true to restart this role instance
e.Cancel = true;
}
};
RegisterRoutes(RouteTable.Routes);
_host = OrchardStarter.CreateHost(MvcSingletons);
_host.Initialize();
}
protected void Application_BeginRequest() {
Context.Items["originalHttpContext"] = Context;
_host.BeginRequest();
}
protected void Application_EndRequest() {
_host.EndRequest();
}
static void MvcSingletons(ContainerBuilder builder) {
builder.Register(ctx => RouteTable.Routes).SingleInstance();
builder.Register(ctx => ModelBinders.Binders).SingleInstance();
builder.Register(ctx => ViewEngines.Engines).SingleInstance();
}
}
}

View File

@@ -0,0 +1,672 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.1\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props" Condition="Exists('..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.1\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props')" />
<Import Project="..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props" Condition="Exists('..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props')" />
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>9.0.30729</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{0DF8F426-9F30-4918-8F64-A5B40BA12D10}</ProjectGuid>
<ProjectTypeGuids>{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Orchard.Azure.Web</RootNamespace>
<AssemblyName>Orchard.Azure.Web</AssemblyName>
<TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>
<MvcBuildViews>false</MvcBuildViews>
<UseIISExpress>false</UseIISExpress>
<IISExpressSSLPort />
<IISExpressAnonymousAuthentication />
<IISExpressWindowsAuthentication />
<IISExpressUseClassicPipelineMode />
<TargetFrameworkProfile />
<UseGlobalApplicationHostFile>true</UseGlobalApplicationHostFile>
<NuGetPackageImportStamp>
</NuGetPackageImportStamp>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
<PlatformTarget>AnyCPU</PlatformTarget>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<ItemGroup>
<Reference Include="Autofac, Version=3.5.0.0, Culture=neutral, PublicKeyToken=17863af14b0044da, processorArchitecture=MSIL">
<HintPath>..\packages\Autofac.3.5.2\lib\net40\Autofac.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Autofac.Integration.Web">
<HintPath>..\..\..\lib\autofac\Autofac.Integration.Web.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="log4net, Version=1.2.13.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
<HintPath>..\packages\log4net.2.0.3\lib\net40-full\log4net.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.ApplicationServer.Caching.AzureClientHelper">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\lib\windowsazure\Microsoft.ApplicationServer.Caching.AzureClientHelper.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.ApplicationServer.Caching.AzureCommon">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\lib\windowsazure\Microsoft.ApplicationServer.Caching.AzureCommon.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.ApplicationServer.Caching.Client">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\lib\windowsazure\Microsoft.ApplicationServer.Caching.Client.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.ApplicationServer.Caching.Core">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\lib\windowsazure\Microsoft.ApplicationServer.Caching.Core.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.1\lib\net45\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.Data.Edm">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\lib\windowsazure\Microsoft.Data.Edm.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.Data.OData">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\lib\windowsazure\Microsoft.Data.OData.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.Owin, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Owin.3.0.0\lib\net45\Microsoft.Owin.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.Owin.Host.SystemWeb, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Owin.Host.SystemWeb.3.0.0\lib\net45\Microsoft.Owin.Host.SystemWeb.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.Web.DistributedCache">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\lib\windowsazure\Microsoft.Web.DistributedCache.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.Web.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Web.Infrastructure.1.0.0.0\lib\net40\Microsoft.Web.Infrastructure.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.WindowsAzure.Configuration">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\lib\windowsazure\Microsoft.WindowsAzure.Configuration.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.WindowsAzure.Diagnostics">
<HintPath>..\..\..\lib\windowsazure\Microsoft.WindowsAzure.Diagnostics.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.WindowsAzure.ServiceRuntime">
<HintPath>..\..\..\lib\windowsazure\Microsoft.WindowsAzure.ServiceRuntime.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="Microsoft.WindowsAzure.Storage">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\lib\windowsazure\Microsoft.WindowsAzure.Storage.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Mono.Security, Version=4.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756, processorArchitecture=MSIL">
<HintPath>..\packages\Npgsql.2.2.3\lib\net45\Mono.Security.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="MySql.Data, Version=6.7.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d, processorArchitecture=MSIL">
<HintPath>..\packages\MySql.Data.6.7.9\lib\net45\MySql.Data.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Newtonsoft.Json, Version=7.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\packages\Newtonsoft.Json.7.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Npgsql, Version=2.2.3.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7, processorArchitecture=MSIL">
<HintPath>..\packages\Npgsql.2.2.3\lib\net45\Npgsql.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="NuGet.Core, Version=1.1.0.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\Orchard.NuGet.Core.1.1.0.0\lib\NuGet.Core.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Owin, Version=1.0.0.0, Culture=neutral, PublicKeyToken=f0ebd12fd5e55cc5, processorArchitecture=MSIL">
<HintPath>..\packages\Owin.1.0\lib\net40\Owin.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System">
<Private>False</Private>
</Reference>
<Reference Include="System.Data">
<Private>False</Private>
</Reference>
<Reference Include="System.ComponentModel.DataAnnotations">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
<Private>False</Private>
</Reference>
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Data.Services.Client" />
<Reference Include="System.Data.SqlServerCe">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\lib\sqlce\System.Data.SqlServerCe.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Web.ApplicationServices">
<Private>False</Private>
</Reference>
<Reference Include="System.Web.DynamicData">
<Private>False</Private>
</Reference>
<Reference Include="System.Web.Entity">
<Private>False</Private>
</Reference>
<Reference Include="System.Web.Extensions" />
<Reference Include="System.Web.Helpers, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.Helpers.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Web">
<Private>False</Private>
</Reference>
<Reference Include="System.Web.Abstractions">
<Private>False</Private>
</Reference>
<Reference Include="System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.Mvc.5.2.3\lib\net45\System.Web.Mvc.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Web.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.Razor.3.2.3\lib\net45\System.Web.Razor.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Web.Routing">
<Private>False</Private>
</Reference>
<Reference Include="System.Web.WebPages, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.WebPages.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Web.WebPages.Deployment, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.WebPages.Deployment.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.WebPages.Razor.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Xml">
<Private>False</Private>
</Reference>
<Reference Include="System.Configuration">
<Private>False</Private>
</Reference>
<Reference Include="System.Web.Services">
<Private>False</Private>
</Reference>
<Reference Include="System.Web.Mobile">
<Private>False</Private>
</Reference>
<Reference Include="System.Xml.Linq" />
</ItemGroup>
<ItemGroup>
<Compile Include="Global.asax.cs">
<DependentUpon>Global.asax</DependentUpon>
</Compile>
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<Content Include="Global.asax" />
</ItemGroup>
<ItemGroup>
<Content Include="Config\Host.config">
<SubType>Designer</SubType>
</Content>
</ItemGroup>
<ItemGroup>
<Content Include="Config\Sites.config" />
<Content Include="packages.config" />
<None Include="Web.Debug.config">
<DependentUpon>Web.config</DependentUpon>
</None>
<None Include="Web.Release.config">
<DependentUpon>Web.config</DependentUpon>
</None>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\Orchard.Web\Core\Orchard.Core.csproj">
<Project>{9916839C-39FC-4CEB-A5AF-89CA7E87119F}</Project>
<Name>Orchard.Core</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Lucene\Lucene.csproj">
<Project>{D5D447D7-EF8E-43A6-B9A4-3B025DD9F45D}</Project>
<Name>Lucene</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Markdown\Markdown.csproj">
<Project>{3158C928-888C-4A84-8BC1-4A8257489538}</Project>
<Name>Markdown</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Alias\Orchard.Alias.csproj">
<Project>{475B6C45-B27C-438B-8966-908B9D6D1077}</Project>
<Name>Orchard.Alias</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.AntiSpam\Orchard.AntiSpam.csproj">
<Project>{91bc2e7f-da04-421c-98ef-76d37cec130c}</Project>
<Name>Orchard.AntiSpam</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.ArchiveLater\Orchard.ArchiveLater.csproj">
<Project>{1C981BB3-26F7-494C-9005-CC27A5144233}</Project>
<Name>Orchard.ArchiveLater</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.AuditTrail\Orchard.AuditTrail.csproj">
<Project>{3dd574cd-9c5d-4a45-85e1-ebba64c22b5f}</Project>
<Name>Orchard.AuditTrail</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Autoroute\Orchard.Autoroute.csproj">
<Project>{66FCCD76-2761-47E3-8D11-B45D0001DDAA}</Project>
<Name>Orchard.Autoroute</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Azure.MediaServices\Orchard.Azure.MediaServices.csproj">
<Project>{14a96b1a-9dc9-44c8-a675-206329e15263}</Project>
<Name>Orchard.Azure.MediaServices</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Azure\Orchard.Azure.csproj">
<Project>{cbc7993c-57d8-4a6c-992c-19e849dfe71d}</Project>
<Name>Orchard.Azure</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Blogs\Orchard.Blogs.csproj">
<Project>{63FBD4D9-E1DA-4A7B-AA6A-D6074FE50867}</Project>
<Name>Orchard.Blogs</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Caching\Orchard.Caching.csproj">
<Project>{7528bf74-25c7-4abe-883a-443b4eec4776}</Project>
<Name>Orchard.Caching</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.CodeGeneration\Orchard.CodeGeneration.csproj">
<Project>{C0C45321-B51D-4D8D-9B7B-AA4C2E0B2962}</Project>
<Name>Orchard.CodeGeneration</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Comments\Orchard.Comments.csproj">
<Project>{14C049FD-B35B-415A-A824-87F26B26E7FD}</Project>
<Name>Orchard.Comments</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Conditions\Orchard.Conditions.csproj">
<Project>{98251eae-a41b-47b2-aa91-e28b8482da70}</Project>
<Name>Orchard.Conditions</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.ContentPermissions\Orchard.ContentPermissions.csproj">
<Project>{e826f796-8ce3-4b5b-8423-5aa5f81d2fc3}</Project>
<Name>Orchard.ContentPermissions</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.ContentPicker\Orchard.ContentPicker.csproj">
<Project>{f301ef7d-f19c-4d83-aa94-cb64f29c037d}</Project>
<Name>Orchard.ContentPicker</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.ContentTypes\Orchard.ContentTypes.csproj">
<Project>{0E7646E8-FE8F-43C1-8799-D97860925EC4}</Project>
<Name>Orchard.ContentTypes</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.CustomForms\Orchard.CustomForms.csproj">
<Project>{2cf067ca-064b-43c6-8b88-5e3b99a65f1d}</Project>
<Name>Orchard.CustomForms</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.DesignerTools\Orchard.DesignerTools.csproj">
<Project>{4A4595EF-6C37-4F99-96ED-4AE0B9E438D3}</Project>
<Name>Orchard.DesignerTools</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.DynamicForms\Orchard.DynamicForms.csproj">
<Project>{82190f52-2901-46d6-8a4c-34649959483f}</Project>
<Name>Orchard.DynamicForms</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Email\Orchard.Email.csproj">
<Project>{05660F47-D649-48BD-9DED-DF4E01E7CFF9}</Project>
<Name>Orchard.Email</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Fields\Orchard.Fields.csproj">
<Project>{3787DDE5-E5C8-4841-BDA7-DCB325388064}</Project>
<Name>Orchard.Fields</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Forms\Orchard.Forms.csproj">
<Project>{642A49D7-8752-4177-80D6-BFBBCFAD3DE0}</Project>
<Name>Orchard.Forms</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.ImageEditor\Orchard.ImageEditor.csproj">
<Project>{1f0b6b85-8b0b-47ca-899d-f25b4f1b52c3}</Project>
<Name>Orchard.ImageEditor</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.ImportExport\Orchard.ImportExport.csproj">
<Project>{fe5c5947-d2d5-42c5-992a-13d672946135}</Project>
<Name>Orchard.ImportExport</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Indexing\Orchard.Indexing.csproj">
<Project>{EA2B9121-EF54-40A6-A53E-6593C86EE696}</Project>
<Name>Orchard.Indexing</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.JobsQueue\Orchard.JobsQueue.csproj">
<Project>{085948ff-0e9b-4a9a-b564-f8b8b4bdddbc}</Project>
<Name>Orchard.JobsQueue</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.jQuery\Orchard.jQuery.csproj">
<Project>{8F116B06-1C0E-4E4C-9A0A-D2FAB851E768}</Project>
<Name>Orchard.jQuery</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Layouts\Orchard.Layouts.csproj">
<Project>{6bd8b2fa-f2e3-4ac8-a4c3-2925a653889a}</Project>
<Name>Orchard.Layouts</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Lists\Orchard.Lists.csproj">
<Project>{137906EA-15FE-4AD8-A6A0-27528F0477D6}</Project>
<Name>Orchard.Lists</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Localization\Orchard.Localization.csproj">
<Project>{FBC8B571-ED50-49D8-8D9D-64AB7454A0D6}</Project>
<Name>Orchard.Localization</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.MediaLibrary\Orchard.MediaLibrary.csproj">
<Project>{73a7688a-5bd3-4f7e-adfa-ce36c5a10e3b}</Project>
<Name>Orchard.MediaLibrary</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.MediaPicker\Orchard.MediaPicker.csproj">
<Project>{43D0EC0B-1955-4566-8D31-7B9102DA1703}</Project>
<Name>Orchard.MediaPicker</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.MediaProcessing\Orchard.MediaProcessing.csproj">
<Project>{08191fcd-7258-4f19-95fb-aec3de77b2eb}</Project>
<Name>Orchard.MediaProcessing</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Media\Orchard.Media.csproj">
<Project>{D9A7B330-CD22-4DA1-A95A-8DE1982AD8EB}</Project>
<Name>Orchard.Media</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.MessageBus\Orchard.MessageBus.csproj">
<Project>{ed715544-e649-4f48-b8ee-9368c41c3ac0}</Project>
<Name>Orchard.MessageBus</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Migrations\Orchard.Migrations.csproj">
<Project>{EA4F1DA7-F2AB-4384-9AA4-9B756E2026B1}</Project>
<Name>Orchard.Migrations</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Modules\Orchard.Modules.csproj">
<Project>{17F86780-9A1F-4AA1-86F1-875EEC2730C7}</Project>
<Name>Orchard.Modules</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.MultiTenancy\Orchard.MultiTenancy.csproj">
<Project>{72457126-E118-4171-A08F-9A709EE4B7FC}</Project>
<Name>Orchard.MultiTenancy</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.OutputCache\Orchard.OutputCache.csproj">
<Project>{6e444ff1-a47c-4cf6-bb3f-507c8ebd776d}</Project>
<Name>Orchard.OutputCache</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Packaging\Orchard.Packaging.csproj">
<Project>{DFD137A2-DDB5-4D22-BE0D-FA9AD4C8B059}</Project>
<Name>Orchard.Packaging</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Pages\Orchard.Pages.csproj">
<Project>{3420C92A-747F-4990-BA08-F2C9531E44AD}</Project>
<Name>Orchard.Pages</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Projections\Orchard.Projections.csproj">
<Project>{5531E894-D259-45A3-AA61-26DBE720C1CE}</Project>
<Name>Orchard.Projections</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.PublishLater\Orchard.PublishLater.csproj">
<Project>{C889167C-E52C-4A65-A419-224B3D1B957D}</Project>
<Name>Orchard.PublishLater</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Recipes\Orchard.Recipes.csproj">
<Project>{FC1D74E8-7A4D-48F4-83DE-95C6173780C4}</Project>
<Name>Orchard.Recipes</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Redis\Orchard.Redis.csproj">
<Project>{2c5eb8b3-a313-413d-baa0-5c21d2a6ec6e}</Project>
<Name>Orchard.Redis</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Resources\Orchard.Resources.csproj">
<Project>{d4e8f7c8-2db2-4c50-a422-da1df1e3cc73}</Project>
<Name>Orchard.Resources</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Roles\Orchard.Roles.csproj">
<Project>{D10AD48F-407D-4DB5-A328-173EC7CB010F}</Project>
<Name>Orchard.Roles</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Rules\Orchard.Rules.csproj">
<Project>{966EC390-3C7F-4D98-92A6-F0F30D02E9B1}</Project>
<Name>Orchard.Rules</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Scripting.CSharp\Orchard.Scripting.CSharp.csproj">
<Project>{5d13ef34-8b39-4ec5-847f-e12892acf841}</Project>
<Name>Orchard.Scripting.CSharp</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Scripting.Dlr\Orchard.Scripting.Dlr.csproj">
<Project>{2AD6973D-C7BB-416E-89FE-EEE34664E05F}</Project>
<Name>Orchard.Scripting.Dlr</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Scripting.Dlr\Orchard.Scripting.Dlr.csproj">
<Project>{2AD6973D-C7BB-416E-89FE-EEE34664E05F}</Project>
<Name>Orchard.Scripting.Dlr</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Scripting\Orchard.Scripting.csproj">
<Project>{99002b65-86f7-415e-bf4a-381aa8ab9ccc}</Project>
<Name>Orchard.Scripting</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Search\Orchard.Search.csproj">
<Project>{4BE4EB01-AC56-4048-924E-2CA77F509ABA}</Project>
<Name>Orchard.Search</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.SecureSocketsLayer\Orchard.SecureSocketsLayer.csproj">
<Project>{36b82383-d69e-4897-a24a-648babdf80ec}</Project>
<Name>Orchard.SecureSocketsLayer</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Setup\Orchard.Setup.csproj">
<Project>{8C7FCBC2-E6E1-405E-BFB5-D8D9E67A09C4}</Project>
<Name>Orchard.Setup</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Tags\Orchard.Tags.csproj">
<Project>{5D0F00F0-26C9-4785-AD61-B85710C60EB0}</Project>
<Name>Orchard.Tags</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.TaskLease\Orchard.TaskLease.csproj">
<Project>{3F72A4E9-7B72-4260-B010-C16EC54F9BAF}</Project>
<Name>Orchard.TaskLease</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Taxonomies\Orchard.Taxonomies.csproj">
<Project>{e649ea64-d213-461b-87f7-d67035801443}</Project>
<Name>Orchard.Taxonomies</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Templates\Orchard.Templates.csproj">
<Project>{10ab3ce2-a720-467f-9ec8-ebb4bac9a1c9}</Project>
<Name>Orchard.Templates</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Themes\Orchard.Themes.csproj">
<Project>{CDE24A24-01D3-403C-84B9-37722E18DFB7}</Project>
<Name>Orchard.Themes</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Tokens\Orchard.Tokens.csproj">
<Project>{6F759635-13D7-4E94-BCC9-80445D63F117}</Project>
<Name>Orchard.Tokens</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Users\Orchard.Users.csproj">
<Project>{79AED36E-ABD0-4747-93D3-8722B042454B}</Project>
<Name>Orchard.Users</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Warmup\Orchard.Warmup.csproj">
<Project>{9cd5c81f-5828-4384-8474-2e2be71d5edd}</Project>
<Name>Orchard.Warmup</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Widgets\Orchard.Widgets.csproj">
<Project>{194D3CCC-1153-474D-8176-FDE8D7D0D0BD}</Project>
<Name>Orchard.Widgets</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Orchard.Workflows\Orchard.Workflows.csproj">
<Project>{7059493c-8251-4764-9c1e-2368b8b485bc}</Project>
<Name>Orchard.Workflows</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\SysCache\SysCache.csproj">
<Project>{3bd22132-d538-48c6-8854-f71333c798eb}</Project>
<Name>SysCache</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\TinyMce\TinyMce.csproj">
<Project>{954CA994-D204-468B-9D69-51F6AD3E1C29}</Project>
<Name>TinyMce</Name>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Orchard.Web\Modules\Upgrade\Upgrade.csproj">
<Project>{8a9fdb57-342d-49c2-bafc-d885aae5cc7c}</Project>
<Name>Upgrade</Name>
</ProjectReference>
<ProjectReference Include="..\..\Orchard\Orchard.Framework.csproj">
<Project>{2D1D92BB-4555-4CBE-8D0E-63563D6CE4C6}</Project>
<Name>Orchard.Framework</Name>
<EmbedInteropTypes>False</EmbedInteropTypes>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\Tools\Orchard\Orchard.csproj">
<Project>{33B1BC8D-E292-4972-A363-22056B207156}</Project>
<Name>Orchard %28Tools\Orchard%29</Name>
<Private>True</Private>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<Content Include="Refresh.html" />
<Content Include="Web.config">
<SubType>Designer</SubType>
</Content>
</ItemGroup>
<ItemGroup>
<Content Include="Config\HostComponents.config" />
</ItemGroup>
<PropertyGroup>
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
</PropertyGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" />
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" />
<ItemGroup>
<WebConfigsToTransform Include="Config\log4net.config">
<DestinationRelativePath>Config\log4net.config</DestinationRelativePath>
<Exclude>False</Exclude>
<TransformFileFolder>$(TransformWebConfigIntermediateLocation)\original</TransformFileFolder>
<TransformFile>Config\log4net.$(Configuration).config</TransformFile>
<TransformOriginalFolder>$(TransformWebConfigIntermediateLocation)\original</TransformOriginalFolder>
<TransformOriginalFile>$(TransformWebConfigIntermediateLocation)\original\%(DestinationRelativePath)</TransformOriginalFile>
<TransformOutputFile>$(TransformWebConfigIntermediateLocation)\transformed\%(DestinationRelativePath)</TransformOutputFile>
<TransformScope>$(_PackageTempDir)\%(DestinationRelativePath)</TransformScope>
<SubType>Designer</SubType>
</WebConfigsToTransform>
<None Include="Config\log4net.Debug.config">
<DependentUpon>log4net.config</DependentUpon>
</None>
<None Include="Config\log4net.Release.config">
<DependentUpon>log4net.config</DependentUpon>
</None>
</ItemGroup>
<Target Name="MvcBuildViews" AfterTargets="AfterBuild" Condition="'$(MvcBuildViews)'=='true'">
<AspNetCompiler VirtualPath="temp" PhysicalPath="$(WebProjectOutputDir)" />
</Target>
<Target Name="DeleteDebugFiles" AfterTargets="AfterBuild">
<RemoveDir Directories="Themes;Core;Modules" />
</Target>
<Target Name="CopyDebugFiles" AfterTargets="DeleteDebugFiles" Condition="'$(Configuration)' == 'Debug'">
<PropertyGroup>
<SrcFolder>..\..</SrcFolder>
</PropertyGroup>
<ItemGroup>
<Excluded Include="$(SrcFolder)\**\bin\**\*;$(SrcFolder)\**\obj\**\*;$(SrcFolder)\**\*.user;$(SrcFolder)\**\*.cs;$(SrcFolder)\**\*.csproj;$(SrcFolder)\**\.hg\**\*" />
<Src-Themes Include="$(SrcFolder)\Orchard.Web\Themes\**\*" Exclude="@(Excluded)" />
<Src-Core Include="$(SrcFolder)\Orchard.Web\Core\**\*" Exclude="@(Excluded)" />
<Src-Modules Include="$(SrcFolder)\Orchard.Web\Modules\**\*" Exclude="@(Excluded)" />
</ItemGroup>
<Copy SourceFiles="@(Src-Themes)" DestinationFolder="Themes\%(RecursiveDir)" />
<Copy SourceFiles="@(Src-Core)" DestinationFolder="Core\%(RecursiveDir)" />
<Copy SourceFiles="@(Src-Modules)" DestinationFolder="Modules\%(RecursiveDir)" />
</Target>
<ProjectExtensions>
<VisualStudio>
<FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
<WebProjectProperties>
<UseIIS>False</UseIIS>
<AutoAssignPort>True</AutoAssignPort>
<DevelopmentServerPort>60453</DevelopmentServerPort>
<DevelopmentServerVPath>/</DevelopmentServerVPath>
<IISUrl>
</IISUrl>
<NTLMAuthentication>False</NTLMAuthentication>
<UseCustomServer>False</UseCustomServer>
<CustomServerUrl>
</CustomServerUrl>
<SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
</WebProjectProperties>
</FlavorProperties>
</VisualStudio>
</ProjectExtensions>
<PropertyGroup>
<PreBuildEvent>del "$(TargetDir)\Modules"
del "$(TargetDir)\Themes"
del "$(TargetDir)\Media"</PreBuildEvent>
</PropertyGroup>
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props'))" />
<Error Condition="!Exists('..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.1\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.1\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props'))" />
</Target>
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild" DependsOnTargets="AfterBuildCompiler">
</Target-->
</Project>

View File

@@ -5,12 +5,12 @@ using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("Orchard.Azure.Authentication")]
[assembly: AssemblyDescription("Orchard module that enables authentication with Windows Azure Active Directory")]
[assembly: AssemblyTitle("Orchard.Azure.Web")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("Orchard.Azure.Authentication")]
[assembly: AssemblyCopyright("Copyright © 2015")]
[assembly: AssemblyCompany("Microsoft")]
[assembly: AssemblyProduct("Orchard.Azure.Web")]
[assembly: AssemblyCopyright("Copyright © Microsoft 2010")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
@@ -20,7 +20,7 @@ using System.Runtime.InteropServices;
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("ff308bcd-8cf0-4103-b8aa-f7444985ca56")]
[assembly: Guid("76077e05-d95f-49c7-b11a-2b0fc9176e7c")]
// Version information for an assembly consists of the following four values:
//
@@ -29,5 +29,7 @@ using System.Runtime.InteropServices;
// Build Number
// Revision
//
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
[assembly: AssemblyVersion("1.2.41")]
[assembly: AssemblyFileVersion("1.2.41")]

View File

@@ -0,0 +1,15 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Configuration Changing...</title>
</head>
<body>
<p>
Orchard is temporarily unavailable as a change in configuration requires a restart.
A simple page refresh usually solves this issue.</p>
<script type="text/javascript">
window.location.reload();
</script>
</body>
</html>

View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
</configuration>

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<system.transactions>
<defaultSettings xdt:Transform="RemoveAttributes(timeout)" />
</system.transactions>
<system.web>
<compilation xdt:Transform="RemoveAttributes(debug)" />
<customErrors mode="RemoteOnly" xdt:Transform="SetAttributes(mode)" />
</system.web>
</configuration>

View File

@@ -0,0 +1,224 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
<section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
</sectionGroup>
<section name="dataCacheClients" type="Microsoft.ApplicationServer.Caching.DataCacheClientsSection, Microsoft.ApplicationServer.Caching.Core" allowLocation="true" allowDefinition="Everywhere" />
</configSections>
<appSettings>
<add key="webpages:Enabled" value="false" />
<add key="webpages:Version" value="3.0.0.0" />
<add key="log4net.Config" value="Config\log4net.config" />
</appSettings>
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<pages pageBaseType="Orchard.Mvc.ViewEngines.Razor.WebViewPage">
<namespaces>
<add namespace="System.Collections.Generic" />
<add namespace="System.Linq" />
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
<add namespace="System.Web.WebPages" />
<add namespace="Orchard.Mvc.Html" />
</namespaces>
</pages>
</system.web.webPages.razor>
<dataCacheClients>
<dataCacheClient name="DefaultCacheClient" useLegacyProtocol="false" connectionPool="true" maxConnectionsToServer="20">
<autoDiscover isEnabled="true" identifier="Orchard.Azure.Web" />
</dataCacheClient>
</dataCacheClients>
<system.diagnostics>
<trace>
<listeners>
<add type="Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorTraceListener, Microsoft.WindowsAzure.Diagnostics, Version=2.7.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" name="AzureDiagnostics">
<filter type="" />
</add>
</listeners>
</trace>
</system.diagnostics>
<system.transactions>
<defaultSettings timeout="00:30:00" />
</system.transactions>
<system.web>
<httpRuntime targetFramework="4.5.2" requestValidationMode="2.0" maxRequestLength="65536" />
<compilation debug="true" targetFramework="4.5.2" batch="true" numRecompilesBeforeAppRestart="250" optimizeCompilations="true">
<buildProviders>
<add extension=".csproj" type="Orchard.Environment.Extensions.Compilers.CSharpExtensionBuildProviderShim" />
</buildProviders>
<assemblies>
<add assembly="System.Web.Mvc, Version=5.2.3, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" />
<add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" />
<add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" />
<add assembly="System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
<remove assembly="mscorlib" />
<remove assembly="System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<remove assembly="System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<remove assembly="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<remove assembly="System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<remove assembly="System.Web.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<remove assembly="System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<remove assembly="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<remove assembly="System.EnterpriseServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<remove assembly="System.IdentityModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<remove assembly="System.Runtime.Serialization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<remove assembly="System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<remove assembly="System.ServiceModel.Activation, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<remove assembly="System.ServiceModel.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<remove assembly="System.Activities, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<remove assembly="System.ServiceModel.Activities, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<remove assembly="System.WorkflowServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<remove assembly="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<remove assembly="System.Data.DataSetExtensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<remove assembly="System.Web.ApplicationServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</assemblies>
</compilation>
<authentication mode="Forms">
<forms loginUrl="~/Users/Account/AccessDenied" timeout="2880" />
</authentication>
<sessionState mode="Custom" timeout="60" customProvider="CacheSessionStateProvider">
<providers>
<!-- Set the cacheName attribute to be the name of the configured logical cache to use for session state storage. -->
<add name="CacheSessionStateProvider" type="Microsoft.Web.DistributedCache.DistributedCacheSessionStateStoreProvider, Microsoft.Web.DistributedCache" cacheName="SessionStateCache" dataCacheClientName="DefaultCacheClient" applicationName="Orchard" />
</providers>
</sessionState>
<customErrors mode="Off" />
<pages>
<namespaces>
<add namespace="System.Collections.Generic" />
<add namespace="System.Linq" />
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
<add namespace="System.Web.WebPages" />
<add namespace="Orchard.Mvc.Html" />
</namespaces>
</pages>
</system.web>
<system.webServer>
<modules runAllManagedModulesForAllRequests="false">
<remove name="OutputCache" />
</modules>
<handlers accessPolicy="Script">
<!-- Clear all handlers, prevents executing code file extensions or returning any file contents. -->
<clear />
<!-- Return 404 for all requests via a managed handler. The URL routing handler will substitute the MVC request handler when routes match. -->
<add name="NotFound" path="*" verb="*" type="System.Web.HttpNotFoundHandler" preCondition="integratedMode" requireAccess="Script" />
<!-- WebApi -->
<remove name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" />
<remove name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" />
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<add name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
<add name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>
<!-- Prevent IIS 7.0 from returning a custom 404/500 error page of its own. -->
<httpErrors existingResponse="PassThrough" />
<security>
<requestFiltering>
<!-- Accept file uploads up to 64 MB. -->
<requestLimits maxAllowedContentLength="67108864" />
</requestFiltering>
</security>
</system.webServer>
<runtime>
<gcServer enabled="true" />
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="App_Data/Dependencies" />
<dependentAssembly>
<assemblyIdentity name="Iesi.Collections" publicKeyToken="AA95F207798DFDB4" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Razor" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.WebPages.Deployment" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.WebPages.Razor" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="NHibernate" publicKeyToken="aa95f207798dfdb4" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.0.4000" newVersion="4.0.0.4000" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Autofac" publicKeyToken="17863af14b0044da" />
<bindingRedirect oldVersion="0.0.0.0-3.5.0.0" newVersion="3.5.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30AD4FE6B2A6AEED" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.WindowsAzure.Storage" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.0.2.0" newVersion="5.0.2.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Data.Edm" publicKeyToken="31BF3856AD364E35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.6.4.0" newVersion="5.6.4.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Data.OData" publicKeyToken="31BF3856AD364E35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.6.4.0" newVersion="5.6.4.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Data.Services.Client" publicKeyToken="31BF3856AD364E35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.6.4.0" newVersion="5.6.4.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Iesi.Collections" publicKeyToken="aa95f207798dfdb4" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<system.codedom>
<compilers>
<compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:6 /nowarn:1659;1699;1701" />
<compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:14 /nowarn:41008 /define:_MYTYPE=\&quot;Web\&quot; /optionInfer+" />
</compilers>
</system.codedom>
</configuration>

View File

@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Autofac" version="3.5.2" targetFramework="net451" />
<package id="log4net" version="2.0.3" targetFramework="net451" />
<package id="Microsoft.AspNet.Mvc" version="5.2.3" targetFramework="net451" />
<package id="Microsoft.AspNet.Razor" version="3.2.3" targetFramework="net451" />
<package id="Microsoft.AspNet.WebPages" version="3.2.3" targetFramework="net451" />
<package id="Microsoft.CodeDom.Providers.DotNetCompilerPlatform" version="1.0.1" targetFramework="net451" />
<package id="Microsoft.Net.Compilers" version="1.0.0" targetFramework="net451" developmentDependency="true" />
<package id="Microsoft.Owin" version="3.0.0" targetFramework="net451" />
<package id="Microsoft.Owin.Host.SystemWeb" version="3.0.0" targetFramework="net451" />
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net451" />
<package id="MySql.Data" version="6.7.9" targetFramework="net451" />
<package id="Newtonsoft.Json" version="7.0.1" targetFramework="net451" />
<package id="Npgsql" version="2.2.3" targetFramework="net451" />
<package id="Orchard.NuGet.Core" version="1.1.0.0" targetFramework="net451" />
<package id="Owin" version="1.0" targetFramework="net451" />
</packages>

View File

@@ -0,0 +1,543 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 14
VisualStudioVersion = 14.0.23107.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Modules", "Modules", "{8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tools", "Tools", "{75E7476C-C05B-4C41-8E38-081D3EB55659}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Themes", "Themes", "{84650275-884D-4CBB-9CC0-67553996E211}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Modules.Deprecated", "Modules.Deprecated", "{B6092A92-1071-4C30-AD55-8E8D46BC2F14}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Orchard", "Orchard", "{F2AB7512-139A-420F-AE3A-9ED22CA52CE1}"
EndProject
Project("{CC5FD16D-436D-48AD-A40C-5A424C6E3E79}") = "Orchard.Azure.CloudService", "Orchard.Azure.CloudService\Orchard.Azure.CloudService.ccproj", "{03C5327D-4E8E-45A7-ACD1-E18E7CAA3C4A}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Azure.Web", "Orchard.Azure.Web\Orchard.Azure.Web.csproj", "{0DF8F426-9F30-4918-8F64-A5B40BA12D10}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Framework", "..\Orchard\Orchard.Framework.csproj", "{2D1D92BB-4555-4CBE-8D0E-63563D6CE4C6}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Core", "..\Orchard.Web\Core\Orchard.Core.csproj", "{9916839C-39FC-4CEB-A5AF-89CA7E87119F}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Blogs", "..\Orchard.Web\Modules\Orchard.Blogs\Orchard.Blogs.csproj", "{63FBD4D9-E1DA-4A7B-AA6A-D6074FE50867}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Comments", "..\Orchard.Web\Modules\Orchard.Comments\Orchard.Comments.csproj", "{14C049FD-B35B-415A-A824-87F26B26E7FD}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.ContentTypes", "..\Orchard.Web\Modules\Orchard.ContentTypes\Orchard.ContentTypes.csproj", "{0E7646E8-FE8F-43C1-8799-D97860925EC4}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Indexing", "..\Orchard.Web\Modules\Orchard.Indexing\Orchard.Indexing.csproj", "{EA2B9121-EF54-40A6-A53E-6593C86EE696}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Media", "..\Orchard.Web\Modules\Orchard.Media\Orchard.Media.csproj", "{D9A7B330-CD22-4DA1-A95A-8DE1982AD8EB}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Modules", "..\Orchard.Web\Modules\Orchard.Modules\Orchard.Modules.csproj", "{17F86780-9A1F-4AA1-86F1-875EEC2730C7}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.MultiTenancy", "..\Orchard.Web\Modules\Orchard.MultiTenancy\Orchard.MultiTenancy.csproj", "{72457126-E118-4171-A08F-9A709EE4B7FC}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Roles", "..\Orchard.Web\Modules\Orchard.Roles\Orchard.Roles.csproj", "{D10AD48F-407D-4DB5-A328-173EC7CB010F}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Search", "..\Orchard.Web\Modules\Orchard.Search\Orchard.Search.csproj", "{4BE4EB01-AC56-4048-924E-2CA77F509ABA}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Setup", "..\Orchard.Web\Modules\Orchard.Setup\Orchard.Setup.csproj", "{8C7FCBC2-E6E1-405E-BFB5-D8D9E67A09C4}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Tags", "..\Orchard.Web\Modules\Orchard.Tags\Orchard.Tags.csproj", "{5D0F00F0-26C9-4785-AD61-B85710C60EB0}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Themes", "..\Orchard.Web\Modules\Orchard.Themes\Orchard.Themes.csproj", "{CDE24A24-01D3-403C-84B9-37722E18DFB7}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Users", "..\Orchard.Web\Modules\Orchard.Users\Orchard.Users.csproj", "{79AED36E-ABD0-4747-93D3-8722B042454B}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TinyMce", "..\Orchard.Web\Modules\TinyMce\TinyMce.csproj", "{954CA994-D204-468B-9D69-51F6AD3E1C29}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard", "..\Tools\Orchard\Orchard.csproj", "{33B1BC8D-E292-4972-A363-22056B207156}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lucene", "..\Orchard.Web\Modules\Lucene\Lucene.csproj", "{D5D447D7-EF8E-43A6-B9A4-3B025DD9F45D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Packaging", "..\Orchard.Web\Modules\Orchard.Packaging\Orchard.Packaging.csproj", "{DFD137A2-DDB5-4D22-BE0D-FA9AD4C8B059}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.CodeGeneration", "..\Orchard.Web\Modules\Orchard.CodeGeneration\Orchard.CodeGeneration.csproj", "{C0C45321-B51D-4D8D-9B7B-AA4C2E0B2962}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.ArchiveLater", "..\Orchard.Web\Modules\Orchard.ArchiveLater\Orchard.ArchiveLater.csproj", "{1C981BB3-26F7-494C-9005-CC27A5144233}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Email", "..\Orchard.Web\Modules\Orchard.Email\Orchard.Email.csproj", "{05660F47-D649-48BD-9DED-DF4E01E7CFF9}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.jQuery", "..\Orchard.Web\Modules\Orchard.jQuery\Orchard.jQuery.csproj", "{8F116B06-1C0E-4E4C-9A0A-D2FAB851E768}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Migrations", "..\Orchard.Web\Modules\Orchard.Migrations\Orchard.Migrations.csproj", "{EA4F1DA7-F2AB-4384-9AA4-9B756E2026B1}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Widgets", "..\Orchard.Web\Modules\Orchard.Widgets\Orchard.Widgets.csproj", "{194D3CCC-1153-474D-8176-FDE8D7D0D0BD}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Themes", "..\Orchard.Web\Themes\Themes.csproj", "{CB70A642-8CEC-4DDE-8C9F-AD08900EC98D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Localization", "..\Orchard.Web\Modules\Orchard.Localization\Orchard.Localization.csproj", "{FBC8B571-ED50-49D8-8D9D-64AB7454A0D6}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Lists", "..\Orchard.Web\Modules\Orchard.Lists\Orchard.Lists.csproj", "{137906EA-15FE-4AD8-A6A0-27528F0477D6}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Pages", "..\Orchard.Web\Modules\Orchard.Pages\Orchard.Pages.csproj", "{3420C92A-747F-4990-BA08-F2C9531E44AD}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.PublishLater", "..\Orchard.Web\Modules\Orchard.PublishLater\Orchard.PublishLater.csproj", "{C889167C-E52C-4A65-A419-224B3D1B957D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Scripting", "..\Orchard.Web\Modules\Orchard.Scripting\Orchard.Scripting.csproj", "{99002B65-86F7-415E-BF4A-381AA8AB9CCC}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Scripting.Dlr", "..\Orchard.Web\Modules\Orchard.Scripting.Dlr\Orchard.Scripting.Dlr.csproj", "{2AD6973D-C7BB-416E-89FE-EEE34664E05F}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.DesignerTools", "..\Orchard.Web\Modules\Orchard.DesignerTools\Orchard.DesignerTools.csproj", "{4A4595EF-6C37-4F99-96ED-4AE0B9E438D3}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.MediaPicker", "..\Orchard.Web\Modules\Orchard.MediaPicker\Orchard.MediaPicker.csproj", "{43D0EC0B-1955-4566-8D31-7B9102DA1703}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Recipes", "..\Orchard.Web\Modules\Orchard.Recipes\Orchard.Recipes.csproj", "{FC1D74E8-7A4D-48F4-83DE-95C6173780C4}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Markdown", "..\Orchard.Web\Modules\Markdown\Markdown.csproj", "{3158C928-888C-4A84-8BC1-4A8257489538}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Forms", "..\Orchard.Web\Modules\Orchard.Forms\Orchard.Forms.csproj", "{642A49D7-8752-4177-80D6-BFBBCFAD3DE0}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Tokens", "..\Orchard.Web\Modules\Orchard.Tokens\Orchard.Tokens.csproj", "{6F759635-13D7-4E94-BCC9-80445D63F117}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Rules", "..\Orchard.Web\Modules\Orchard.Rules\Orchard.Rules.csproj", "{966EC390-3C7F-4D98-92A6-F0F30D02E9B1}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.TaskLease", "..\Orchard.Web\Modules\Orchard.TaskLease\Orchard.TaskLease.csproj", "{3F72A4E9-7B72-4260-B010-C16EC54F9BAF}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Alias", "..\Orchard.Web\Modules\Orchard.Alias\Orchard.Alias.csproj", "{475B6C45-B27C-438B-8966-908B9D6D1077}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Autoroute", "..\Orchard.Web\Modules\Orchard.Autoroute\Orchard.Autoroute.csproj", "{66FCCD76-2761-47E3-8D11-B45D0001DDAA}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Fields", "..\Orchard.Web\Modules\Orchard.Fields\Orchard.Fields.csproj", "{3787DDE5-E5C8-4841-BDA7-DCB325388064}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Projections", "..\Orchard.Web\Modules\Orchard.Projections\Orchard.Projections.csproj", "{5531E894-D259-45A3-AA61-26DBE720C1CE}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.AntiSpam", "..\Orchard.Web\Modules\Orchard.AntiSpam\Orchard.AntiSpam.csproj", "{91BC2E7F-DA04-421C-98EF-76D37CEC130C}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.ContentPermissions", "..\Orchard.Web\Modules\Orchard.ContentPermissions\Orchard.ContentPermissions.csproj", "{E826F796-8CE3-4B5B-8423-5AA5F81D2FC3}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.CustomForms", "..\Orchard.Web\Modules\Orchard.CustomForms\Orchard.CustomForms.csproj", "{2CF067CA-064B-43C6-8B88-5E3B99A65F1D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.ContentPicker", "..\Orchard.Web\Modules\Orchard.ContentPicker\Orchard.ContentPicker.csproj", "{F301EF7D-F19C-4D83-AA94-CB64F29C037D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.ImportExport", "..\Orchard.Web\Modules\Orchard.ImportExport\Orchard.ImportExport.csproj", "{FE5C5947-D2D5-42C5-992A-13D672946135}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Warmup", "..\Orchard.Web\Modules\Orchard.Warmup\Orchard.Warmup.csproj", "{9CD5C81F-5828-4384-8474-2E2BE71D5EDD}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SysCache", "..\Orchard.Web\Modules\SysCache\SysCache.csproj", "{3BD22132-D538-48C6-8854-F71333C798EB}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.ImageEditor", "..\Orchard.Web\Modules\Orchard.ImageEditor\Orchard.ImageEditor.csproj", "{1F0B6B85-8B0B-47CA-899D-F25B4F1B52C3}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.MediaProcessing", "..\Orchard.Web\Modules\Orchard.MediaProcessing\Orchard.MediaProcessing.csproj", "{08191FCD-7258-4F19-95FB-AEC3DE77B2EB}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.MediaLibrary", "..\Orchard.Web\Modules\Orchard.MediaLibrary\Orchard.MediaLibrary.csproj", "{73A7688A-5BD3-4F7E-ADFA-CE36C5A10E3B}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.OutputCache", "..\Orchard.Web\Modules\Orchard.OutputCache\Orchard.OutputCache.csproj", "{6E444FF1-A47C-4CF6-BB3F-507C8EBD776D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Workflows", "..\Orchard.Web\Modules\Orchard.Workflows\Orchard.Workflows.csproj", "{7059493C-8251-4764-9C1E-2368B8B485BC}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Upgrade", "..\Orchard.Web\Modules\Upgrade\Upgrade.csproj", "{8A9FDB57-342D-49C2-BAFC-D885AAE5CC7C}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Scripting.CSharp", "..\Orchard.Web\Modules\Orchard.Scripting.CSharp\Orchard.Scripting.CSharp.csproj", "{5D13EF34-8B39-4EC5-847F-E12892ACF841}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Taxonomies", "..\Orchard.Web\Modules\Orchard.Taxonomies\Orchard.Taxonomies.csproj", "{E649EA64-D213-461B-87F7-D67035801443}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Azure", "..\Orchard.Web\Modules\Orchard.Azure\Orchard.Azure.csproj", "{CBC7993C-57D8-4A6C-992C-19E849DFE71D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Caching", "..\Orchard.Web\Modules\Orchard.Caching\Orchard.Caching.csproj", "{7528BF74-25C7-4ABE-883A-443B4EEC4776}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.SecureSocketsLayer", "..\Orchard.Web\Modules\Orchard.SecureSocketsLayer\Orchard.SecureSocketsLayer.csproj", "{36B82383-D69E-4897-A24A-648BABDF80EC}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Templates", "..\Orchard.Web\Modules\Orchard.Templates\Orchard.Templates.csproj", "{10AB3CE2-A720-467F-9EC8-EBB4BAC9A1C9}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Azure.MediaServices", "..\Orchard.Web\Modules\Orchard.Azure.MediaServices\Orchard.Azure.MediaServices.csproj", "{14A96B1A-9DC9-44C8-A675-206329E15263}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.AuditTrail", "..\Orchard.Web\Modules\Orchard.AuditTrail\Orchard.AuditTrail.csproj", "{3DD574CD-9C5D-4A45-85E1-EBBA64C22B5F}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.DynamicForms", "..\Orchard.Web\Modules\Orchard.DynamicForms\Orchard.DynamicForms.csproj", "{82190F52-2901-46D6-8A4C-34649959483F}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.JobsQueue", "..\Orchard.Web\Modules\Orchard.JobsQueue\Orchard.JobsQueue.csproj", "{085948FF-0E9B-4A9A-B564-F8B8B4BDDDBC}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Layouts", "..\Orchard.Web\Modules\Orchard.Layouts\Orchard.Layouts.csproj", "{6BD8B2FA-F2E3-4AC8-A4C3-2925A653889A}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.MessageBus", "..\Orchard.Web\Modules\Orchard.MessageBus\Orchard.MessageBus.csproj", "{ED715544-E649-4F48-B8EE-9368C41C3AC0}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Redis", "..\Orchard.Web\Modules\Orchard.Redis\Orchard.Redis.csproj", "{2C5EB8B3-A313-413D-BAA0-5C21D2A6EC6E}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Conditions", "..\Orchard.Web\Modules\Orchard.Conditions\Orchard.Conditions.csproj", "{98251EAE-A41B-47B2-AA91-E28B8482DA70}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Orchard.Resources", "..\Orchard.Web\Modules\Orchard.Resources\Orchard.Resources.csproj", "{D4E8F7C8-2DB2-4C50-A422-DA1DF1E3CC73}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{03C5327D-4E8E-45A7-ACD1-E18E7CAA3C4A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{03C5327D-4E8E-45A7-ACD1-E18E7CAA3C4A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{03C5327D-4E8E-45A7-ACD1-E18E7CAA3C4A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{03C5327D-4E8E-45A7-ACD1-E18E7CAA3C4A}.Release|Any CPU.Build.0 = Release|Any CPU
{0DF8F426-9F30-4918-8F64-A5B40BA12D10}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0DF8F426-9F30-4918-8F64-A5B40BA12D10}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0DF8F426-9F30-4918-8F64-A5B40BA12D10}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0DF8F426-9F30-4918-8F64-A5B40BA12D10}.Release|Any CPU.Build.0 = Release|Any CPU
{2D1D92BB-4555-4CBE-8D0E-63563D6CE4C6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2D1D92BB-4555-4CBE-8D0E-63563D6CE4C6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2D1D92BB-4555-4CBE-8D0E-63563D6CE4C6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2D1D92BB-4555-4CBE-8D0E-63563D6CE4C6}.Release|Any CPU.Build.0 = Release|Any CPU
{9916839C-39FC-4CEB-A5AF-89CA7E87119F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{9916839C-39FC-4CEB-A5AF-89CA7E87119F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{9916839C-39FC-4CEB-A5AF-89CA7E87119F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{9916839C-39FC-4CEB-A5AF-89CA7E87119F}.Release|Any CPU.Build.0 = Release|Any CPU
{63FBD4D9-E1DA-4A7B-AA6A-D6074FE50867}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{63FBD4D9-E1DA-4A7B-AA6A-D6074FE50867}.Debug|Any CPU.Build.0 = Debug|Any CPU
{63FBD4D9-E1DA-4A7B-AA6A-D6074FE50867}.Release|Any CPU.ActiveCfg = Release|Any CPU
{63FBD4D9-E1DA-4A7B-AA6A-D6074FE50867}.Release|Any CPU.Build.0 = Release|Any CPU
{14C049FD-B35B-415A-A824-87F26B26E7FD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{14C049FD-B35B-415A-A824-87F26B26E7FD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{14C049FD-B35B-415A-A824-87F26B26E7FD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{14C049FD-B35B-415A-A824-87F26B26E7FD}.Release|Any CPU.Build.0 = Release|Any CPU
{0E7646E8-FE8F-43C1-8799-D97860925EC4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0E7646E8-FE8F-43C1-8799-D97860925EC4}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0E7646E8-FE8F-43C1-8799-D97860925EC4}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0E7646E8-FE8F-43C1-8799-D97860925EC4}.Release|Any CPU.Build.0 = Release|Any CPU
{EA2B9121-EF54-40A6-A53E-6593C86EE696}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{EA2B9121-EF54-40A6-A53E-6593C86EE696}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EA2B9121-EF54-40A6-A53E-6593C86EE696}.Release|Any CPU.ActiveCfg = Release|Any CPU
{EA2B9121-EF54-40A6-A53E-6593C86EE696}.Release|Any CPU.Build.0 = Release|Any CPU
{D9A7B330-CD22-4DA1-A95A-8DE1982AD8EB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D9A7B330-CD22-4DA1-A95A-8DE1982AD8EB}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D9A7B330-CD22-4DA1-A95A-8DE1982AD8EB}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D9A7B330-CD22-4DA1-A95A-8DE1982AD8EB}.Release|Any CPU.Build.0 = Release|Any CPU
{17F86780-9A1F-4AA1-86F1-875EEC2730C7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{17F86780-9A1F-4AA1-86F1-875EEC2730C7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{17F86780-9A1F-4AA1-86F1-875EEC2730C7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{17F86780-9A1F-4AA1-86F1-875EEC2730C7}.Release|Any CPU.Build.0 = Release|Any CPU
{72457126-E118-4171-A08F-9A709EE4B7FC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{72457126-E118-4171-A08F-9A709EE4B7FC}.Debug|Any CPU.Build.0 = Debug|Any CPU
{72457126-E118-4171-A08F-9A709EE4B7FC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{72457126-E118-4171-A08F-9A709EE4B7FC}.Release|Any CPU.Build.0 = Release|Any CPU
{D10AD48F-407D-4DB5-A328-173EC7CB010F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D10AD48F-407D-4DB5-A328-173EC7CB010F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D10AD48F-407D-4DB5-A328-173EC7CB010F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D10AD48F-407D-4DB5-A328-173EC7CB010F}.Release|Any CPU.Build.0 = Release|Any CPU
{4BE4EB01-AC56-4048-924E-2CA77F509ABA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4BE4EB01-AC56-4048-924E-2CA77F509ABA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4BE4EB01-AC56-4048-924E-2CA77F509ABA}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4BE4EB01-AC56-4048-924E-2CA77F509ABA}.Release|Any CPU.Build.0 = Release|Any CPU
{8C7FCBC2-E6E1-405E-BFB5-D8D9E67A09C4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8C7FCBC2-E6E1-405E-BFB5-D8D9E67A09C4}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8C7FCBC2-E6E1-405E-BFB5-D8D9E67A09C4}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8C7FCBC2-E6E1-405E-BFB5-D8D9E67A09C4}.Release|Any CPU.Build.0 = Release|Any CPU
{5D0F00F0-26C9-4785-AD61-B85710C60EB0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5D0F00F0-26C9-4785-AD61-B85710C60EB0}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5D0F00F0-26C9-4785-AD61-B85710C60EB0}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5D0F00F0-26C9-4785-AD61-B85710C60EB0}.Release|Any CPU.Build.0 = Release|Any CPU
{CDE24A24-01D3-403C-84B9-37722E18DFB7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{CDE24A24-01D3-403C-84B9-37722E18DFB7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CDE24A24-01D3-403C-84B9-37722E18DFB7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{CDE24A24-01D3-403C-84B9-37722E18DFB7}.Release|Any CPU.Build.0 = Release|Any CPU
{79AED36E-ABD0-4747-93D3-8722B042454B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{79AED36E-ABD0-4747-93D3-8722B042454B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{79AED36E-ABD0-4747-93D3-8722B042454B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{79AED36E-ABD0-4747-93D3-8722B042454B}.Release|Any CPU.Build.0 = Release|Any CPU
{954CA994-D204-468B-9D69-51F6AD3E1C29}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{954CA994-D204-468B-9D69-51F6AD3E1C29}.Debug|Any CPU.Build.0 = Debug|Any CPU
{954CA994-D204-468B-9D69-51F6AD3E1C29}.Release|Any CPU.ActiveCfg = Release|Any CPU
{954CA994-D204-468B-9D69-51F6AD3E1C29}.Release|Any CPU.Build.0 = Release|Any CPU
{33B1BC8D-E292-4972-A363-22056B207156}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{33B1BC8D-E292-4972-A363-22056B207156}.Debug|Any CPU.Build.0 = Debug|Any CPU
{33B1BC8D-E292-4972-A363-22056B207156}.Release|Any CPU.ActiveCfg = Release|Any CPU
{33B1BC8D-E292-4972-A363-22056B207156}.Release|Any CPU.Build.0 = Release|Any CPU
{D5D447D7-EF8E-43A6-B9A4-3B025DD9F45D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D5D447D7-EF8E-43A6-B9A4-3B025DD9F45D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D5D447D7-EF8E-43A6-B9A4-3B025DD9F45D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D5D447D7-EF8E-43A6-B9A4-3B025DD9F45D}.Release|Any CPU.Build.0 = Release|Any CPU
{DFD137A2-DDB5-4D22-BE0D-FA9AD4C8B059}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{DFD137A2-DDB5-4D22-BE0D-FA9AD4C8B059}.Debug|Any CPU.Build.0 = Debug|Any CPU
{DFD137A2-DDB5-4D22-BE0D-FA9AD4C8B059}.Release|Any CPU.ActiveCfg = Release|Any CPU
{DFD137A2-DDB5-4D22-BE0D-FA9AD4C8B059}.Release|Any CPU.Build.0 = Release|Any CPU
{C0C45321-B51D-4D8D-9B7B-AA4C2E0B2962}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C0C45321-B51D-4D8D-9B7B-AA4C2E0B2962}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C0C45321-B51D-4D8D-9B7B-AA4C2E0B2962}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C0C45321-B51D-4D8D-9B7B-AA4C2E0B2962}.Release|Any CPU.Build.0 = Release|Any CPU
{1C981BB3-26F7-494C-9005-CC27A5144233}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1C981BB3-26F7-494C-9005-CC27A5144233}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1C981BB3-26F7-494C-9005-CC27A5144233}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1C981BB3-26F7-494C-9005-CC27A5144233}.Release|Any CPU.Build.0 = Release|Any CPU
{05660F47-D649-48BD-9DED-DF4E01E7CFF9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{05660F47-D649-48BD-9DED-DF4E01E7CFF9}.Debug|Any CPU.Build.0 = Debug|Any CPU
{05660F47-D649-48BD-9DED-DF4E01E7CFF9}.Release|Any CPU.ActiveCfg = Release|Any CPU
{05660F47-D649-48BD-9DED-DF4E01E7CFF9}.Release|Any CPU.Build.0 = Release|Any CPU
{8F116B06-1C0E-4E4C-9A0A-D2FAB851E768}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8F116B06-1C0E-4E4C-9A0A-D2FAB851E768}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8F116B06-1C0E-4E4C-9A0A-D2FAB851E768}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8F116B06-1C0E-4E4C-9A0A-D2FAB851E768}.Release|Any CPU.Build.0 = Release|Any CPU
{EA4F1DA7-F2AB-4384-9AA4-9B756E2026B1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{EA4F1DA7-F2AB-4384-9AA4-9B756E2026B1}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EA4F1DA7-F2AB-4384-9AA4-9B756E2026B1}.Release|Any CPU.ActiveCfg = Release|Any CPU
{EA4F1DA7-F2AB-4384-9AA4-9B756E2026B1}.Release|Any CPU.Build.0 = Release|Any CPU
{194D3CCC-1153-474D-8176-FDE8D7D0D0BD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{194D3CCC-1153-474D-8176-FDE8D7D0D0BD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{194D3CCC-1153-474D-8176-FDE8D7D0D0BD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{194D3CCC-1153-474D-8176-FDE8D7D0D0BD}.Release|Any CPU.Build.0 = Release|Any CPU
{CB70A642-8CEC-4DDE-8C9F-AD08900EC98D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{CB70A642-8CEC-4DDE-8C9F-AD08900EC98D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CB70A642-8CEC-4DDE-8C9F-AD08900EC98D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{CB70A642-8CEC-4DDE-8C9F-AD08900EC98D}.Release|Any CPU.Build.0 = Release|Any CPU
{FBC8B571-ED50-49D8-8D9D-64AB7454A0D6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{FBC8B571-ED50-49D8-8D9D-64AB7454A0D6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{FBC8B571-ED50-49D8-8D9D-64AB7454A0D6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{FBC8B571-ED50-49D8-8D9D-64AB7454A0D6}.Release|Any CPU.Build.0 = Release|Any CPU
{137906EA-15FE-4AD8-A6A0-27528F0477D6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{137906EA-15FE-4AD8-A6A0-27528F0477D6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{137906EA-15FE-4AD8-A6A0-27528F0477D6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{137906EA-15FE-4AD8-A6A0-27528F0477D6}.Release|Any CPU.Build.0 = Release|Any CPU
{3420C92A-747F-4990-BA08-F2C9531E44AD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3420C92A-747F-4990-BA08-F2C9531E44AD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3420C92A-747F-4990-BA08-F2C9531E44AD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3420C92A-747F-4990-BA08-F2C9531E44AD}.Release|Any CPU.Build.0 = Release|Any CPU
{C889167C-E52C-4A65-A419-224B3D1B957D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C889167C-E52C-4A65-A419-224B3D1B957D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C889167C-E52C-4A65-A419-224B3D1B957D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C889167C-E52C-4A65-A419-224B3D1B957D}.Release|Any CPU.Build.0 = Release|Any CPU
{99002B65-86F7-415E-BF4A-381AA8AB9CCC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{99002B65-86F7-415E-BF4A-381AA8AB9CCC}.Debug|Any CPU.Build.0 = Debug|Any CPU
{99002B65-86F7-415E-BF4A-381AA8AB9CCC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{99002B65-86F7-415E-BF4A-381AA8AB9CCC}.Release|Any CPU.Build.0 = Release|Any CPU
{2AD6973D-C7BB-416E-89FE-EEE34664E05F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2AD6973D-C7BB-416E-89FE-EEE34664E05F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2AD6973D-C7BB-416E-89FE-EEE34664E05F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2AD6973D-C7BB-416E-89FE-EEE34664E05F}.Release|Any CPU.Build.0 = Release|Any CPU
{4A4595EF-6C37-4F99-96ED-4AE0B9E438D3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4A4595EF-6C37-4F99-96ED-4AE0B9E438D3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4A4595EF-6C37-4F99-96ED-4AE0B9E438D3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4A4595EF-6C37-4F99-96ED-4AE0B9E438D3}.Release|Any CPU.Build.0 = Release|Any CPU
{43D0EC0B-1955-4566-8D31-7B9102DA1703}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{43D0EC0B-1955-4566-8D31-7B9102DA1703}.Debug|Any CPU.Build.0 = Debug|Any CPU
{43D0EC0B-1955-4566-8D31-7B9102DA1703}.Release|Any CPU.ActiveCfg = Release|Any CPU
{43D0EC0B-1955-4566-8D31-7B9102DA1703}.Release|Any CPU.Build.0 = Release|Any CPU
{FC1D74E8-7A4D-48F4-83DE-95C6173780C4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{FC1D74E8-7A4D-48F4-83DE-95C6173780C4}.Debug|Any CPU.Build.0 = Debug|Any CPU
{FC1D74E8-7A4D-48F4-83DE-95C6173780C4}.Release|Any CPU.ActiveCfg = Release|Any CPU
{FC1D74E8-7A4D-48F4-83DE-95C6173780C4}.Release|Any CPU.Build.0 = Release|Any CPU
{3158C928-888C-4A84-8BC1-4A8257489538}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3158C928-888C-4A84-8BC1-4A8257489538}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3158C928-888C-4A84-8BC1-4A8257489538}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3158C928-888C-4A84-8BC1-4A8257489538}.Release|Any CPU.Build.0 = Release|Any CPU
{642A49D7-8752-4177-80D6-BFBBCFAD3DE0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{642A49D7-8752-4177-80D6-BFBBCFAD3DE0}.Debug|Any CPU.Build.0 = Debug|Any CPU
{642A49D7-8752-4177-80D6-BFBBCFAD3DE0}.Release|Any CPU.ActiveCfg = Release|Any CPU
{642A49D7-8752-4177-80D6-BFBBCFAD3DE0}.Release|Any CPU.Build.0 = Release|Any CPU
{6F759635-13D7-4E94-BCC9-80445D63F117}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6F759635-13D7-4E94-BCC9-80445D63F117}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6F759635-13D7-4E94-BCC9-80445D63F117}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6F759635-13D7-4E94-BCC9-80445D63F117}.Release|Any CPU.Build.0 = Release|Any CPU
{966EC390-3C7F-4D98-92A6-F0F30D02E9B1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{966EC390-3C7F-4D98-92A6-F0F30D02E9B1}.Debug|Any CPU.Build.0 = Debug|Any CPU
{966EC390-3C7F-4D98-92A6-F0F30D02E9B1}.Release|Any CPU.ActiveCfg = Release|Any CPU
{966EC390-3C7F-4D98-92A6-F0F30D02E9B1}.Release|Any CPU.Build.0 = Release|Any CPU
{3F72A4E9-7B72-4260-B010-C16EC54F9BAF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3F72A4E9-7B72-4260-B010-C16EC54F9BAF}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3F72A4E9-7B72-4260-B010-C16EC54F9BAF}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3F72A4E9-7B72-4260-B010-C16EC54F9BAF}.Release|Any CPU.Build.0 = Release|Any CPU
{475B6C45-B27C-438B-8966-908B9D6D1077}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{475B6C45-B27C-438B-8966-908B9D6D1077}.Debug|Any CPU.Build.0 = Debug|Any CPU
{475B6C45-B27C-438B-8966-908B9D6D1077}.Release|Any CPU.ActiveCfg = Release|Any CPU
{475B6C45-B27C-438B-8966-908B9D6D1077}.Release|Any CPU.Build.0 = Release|Any CPU
{66FCCD76-2761-47E3-8D11-B45D0001DDAA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{66FCCD76-2761-47E3-8D11-B45D0001DDAA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{66FCCD76-2761-47E3-8D11-B45D0001DDAA}.Release|Any CPU.ActiveCfg = Release|Any CPU
{66FCCD76-2761-47E3-8D11-B45D0001DDAA}.Release|Any CPU.Build.0 = Release|Any CPU
{3787DDE5-E5C8-4841-BDA7-DCB325388064}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3787DDE5-E5C8-4841-BDA7-DCB325388064}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3787DDE5-E5C8-4841-BDA7-DCB325388064}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3787DDE5-E5C8-4841-BDA7-DCB325388064}.Release|Any CPU.Build.0 = Release|Any CPU
{5531E894-D259-45A3-AA61-26DBE720C1CE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5531E894-D259-45A3-AA61-26DBE720C1CE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5531E894-D259-45A3-AA61-26DBE720C1CE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5531E894-D259-45A3-AA61-26DBE720C1CE}.Release|Any CPU.Build.0 = Release|Any CPU
{91BC2E7F-DA04-421C-98EF-76D37CEC130C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{91BC2E7F-DA04-421C-98EF-76D37CEC130C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{91BC2E7F-DA04-421C-98EF-76D37CEC130C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{91BC2E7F-DA04-421C-98EF-76D37CEC130C}.Release|Any CPU.Build.0 = Release|Any CPU
{E826F796-8CE3-4B5B-8423-5AA5F81D2FC3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{E826F796-8CE3-4B5B-8423-5AA5F81D2FC3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E826F796-8CE3-4B5B-8423-5AA5F81D2FC3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E826F796-8CE3-4B5B-8423-5AA5F81D2FC3}.Release|Any CPU.Build.0 = Release|Any CPU
{2CF067CA-064B-43C6-8B88-5E3B99A65F1D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2CF067CA-064B-43C6-8B88-5E3B99A65F1D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2CF067CA-064B-43C6-8B88-5E3B99A65F1D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2CF067CA-064B-43C6-8B88-5E3B99A65F1D}.Release|Any CPU.Build.0 = Release|Any CPU
{F301EF7D-F19C-4D83-AA94-CB64F29C037D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F301EF7D-F19C-4D83-AA94-CB64F29C037D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F301EF7D-F19C-4D83-AA94-CB64F29C037D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F301EF7D-F19C-4D83-AA94-CB64F29C037D}.Release|Any CPU.Build.0 = Release|Any CPU
{FE5C5947-D2D5-42C5-992A-13D672946135}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{FE5C5947-D2D5-42C5-992A-13D672946135}.Debug|Any CPU.Build.0 = Debug|Any CPU
{FE5C5947-D2D5-42C5-992A-13D672946135}.Release|Any CPU.ActiveCfg = Release|Any CPU
{FE5C5947-D2D5-42C5-992A-13D672946135}.Release|Any CPU.Build.0 = Release|Any CPU
{9CD5C81F-5828-4384-8474-2E2BE71D5EDD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{9CD5C81F-5828-4384-8474-2E2BE71D5EDD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{9CD5C81F-5828-4384-8474-2E2BE71D5EDD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{9CD5C81F-5828-4384-8474-2E2BE71D5EDD}.Release|Any CPU.Build.0 = Release|Any CPU
{3BD22132-D538-48C6-8854-F71333C798EB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3BD22132-D538-48C6-8854-F71333C798EB}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3BD22132-D538-48C6-8854-F71333C798EB}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3BD22132-D538-48C6-8854-F71333C798EB}.Release|Any CPU.Build.0 = Release|Any CPU
{1F0B6B85-8B0B-47CA-899D-F25B4F1B52C3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1F0B6B85-8B0B-47CA-899D-F25B4F1B52C3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1F0B6B85-8B0B-47CA-899D-F25B4F1B52C3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1F0B6B85-8B0B-47CA-899D-F25B4F1B52C3}.Release|Any CPU.Build.0 = Release|Any CPU
{08191FCD-7258-4F19-95FB-AEC3DE77B2EB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{08191FCD-7258-4F19-95FB-AEC3DE77B2EB}.Debug|Any CPU.Build.0 = Debug|Any CPU
{08191FCD-7258-4F19-95FB-AEC3DE77B2EB}.Release|Any CPU.ActiveCfg = Release|Any CPU
{08191FCD-7258-4F19-95FB-AEC3DE77B2EB}.Release|Any CPU.Build.0 = Release|Any CPU
{73A7688A-5BD3-4F7E-ADFA-CE36C5A10E3B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{73A7688A-5BD3-4F7E-ADFA-CE36C5A10E3B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{73A7688A-5BD3-4F7E-ADFA-CE36C5A10E3B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{73A7688A-5BD3-4F7E-ADFA-CE36C5A10E3B}.Release|Any CPU.Build.0 = Release|Any CPU
{6E444FF1-A47C-4CF6-BB3F-507C8EBD776D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6E444FF1-A47C-4CF6-BB3F-507C8EBD776D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6E444FF1-A47C-4CF6-BB3F-507C8EBD776D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6E444FF1-A47C-4CF6-BB3F-507C8EBD776D}.Release|Any CPU.Build.0 = Release|Any CPU
{7059493C-8251-4764-9C1E-2368B8B485BC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7059493C-8251-4764-9C1E-2368B8B485BC}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7059493C-8251-4764-9C1E-2368B8B485BC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7059493C-8251-4764-9C1E-2368B8B485BC}.Release|Any CPU.Build.0 = Release|Any CPU
{8A9FDB57-342D-49C2-BAFC-D885AAE5CC7C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8A9FDB57-342D-49C2-BAFC-D885AAE5CC7C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8A9FDB57-342D-49C2-BAFC-D885AAE5CC7C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8A9FDB57-342D-49C2-BAFC-D885AAE5CC7C}.Release|Any CPU.Build.0 = Release|Any CPU
{5D13EF34-8B39-4EC5-847F-E12892ACF841}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5D13EF34-8B39-4EC5-847F-E12892ACF841}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5D13EF34-8B39-4EC5-847F-E12892ACF841}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5D13EF34-8B39-4EC5-847F-E12892ACF841}.Release|Any CPU.Build.0 = Release|Any CPU
{E649EA64-D213-461B-87F7-D67035801443}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{E649EA64-D213-461B-87F7-D67035801443}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E649EA64-D213-461B-87F7-D67035801443}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E649EA64-D213-461B-87F7-D67035801443}.Release|Any CPU.Build.0 = Release|Any CPU
{CBC7993C-57D8-4A6C-992C-19E849DFE71D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{CBC7993C-57D8-4A6C-992C-19E849DFE71D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CBC7993C-57D8-4A6C-992C-19E849DFE71D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{CBC7993C-57D8-4A6C-992C-19E849DFE71D}.Release|Any CPU.Build.0 = Release|Any CPU
{7528BF74-25C7-4ABE-883A-443B4EEC4776}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7528BF74-25C7-4ABE-883A-443B4EEC4776}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7528BF74-25C7-4ABE-883A-443B4EEC4776}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7528BF74-25C7-4ABE-883A-443B4EEC4776}.Release|Any CPU.Build.0 = Release|Any CPU
{36B82383-D69E-4897-A24A-648BABDF80EC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{36B82383-D69E-4897-A24A-648BABDF80EC}.Debug|Any CPU.Build.0 = Debug|Any CPU
{36B82383-D69E-4897-A24A-648BABDF80EC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{36B82383-D69E-4897-A24A-648BABDF80EC}.Release|Any CPU.Build.0 = Release|Any CPU
{10AB3CE2-A720-467F-9EC8-EBB4BAC9A1C9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{10AB3CE2-A720-467F-9EC8-EBB4BAC9A1C9}.Debug|Any CPU.Build.0 = Debug|Any CPU
{10AB3CE2-A720-467F-9EC8-EBB4BAC9A1C9}.Release|Any CPU.ActiveCfg = Release|Any CPU
{10AB3CE2-A720-467F-9EC8-EBB4BAC9A1C9}.Release|Any CPU.Build.0 = Release|Any CPU
{14A96B1A-9DC9-44C8-A675-206329E15263}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{14A96B1A-9DC9-44C8-A675-206329E15263}.Debug|Any CPU.Build.0 = Debug|Any CPU
{14A96B1A-9DC9-44C8-A675-206329E15263}.Release|Any CPU.ActiveCfg = Release|Any CPU
{14A96B1A-9DC9-44C8-A675-206329E15263}.Release|Any CPU.Build.0 = Release|Any CPU
{3DD574CD-9C5D-4A45-85E1-EBBA64C22B5F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3DD574CD-9C5D-4A45-85E1-EBBA64C22B5F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3DD574CD-9C5D-4A45-85E1-EBBA64C22B5F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3DD574CD-9C5D-4A45-85E1-EBBA64C22B5F}.Release|Any CPU.Build.0 = Release|Any CPU
{82190F52-2901-46D6-8A4C-34649959483F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{82190F52-2901-46D6-8A4C-34649959483F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{82190F52-2901-46D6-8A4C-34649959483F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{82190F52-2901-46D6-8A4C-34649959483F}.Release|Any CPU.Build.0 = Release|Any CPU
{085948FF-0E9B-4A9A-B564-F8B8B4BDDDBC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{085948FF-0E9B-4A9A-B564-F8B8B4BDDDBC}.Debug|Any CPU.Build.0 = Debug|Any CPU
{085948FF-0E9B-4A9A-B564-F8B8B4BDDDBC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{085948FF-0E9B-4A9A-B564-F8B8B4BDDDBC}.Release|Any CPU.Build.0 = Release|Any CPU
{6BD8B2FA-F2E3-4AC8-A4C3-2925A653889A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6BD8B2FA-F2E3-4AC8-A4C3-2925A653889A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6BD8B2FA-F2E3-4AC8-A4C3-2925A653889A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6BD8B2FA-F2E3-4AC8-A4C3-2925A653889A}.Release|Any CPU.Build.0 = Release|Any CPU
{ED715544-E649-4F48-B8EE-9368C41C3AC0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{ED715544-E649-4F48-B8EE-9368C41C3AC0}.Debug|Any CPU.Build.0 = Debug|Any CPU
{ED715544-E649-4F48-B8EE-9368C41C3AC0}.Release|Any CPU.ActiveCfg = Release|Any CPU
{ED715544-E649-4F48-B8EE-9368C41C3AC0}.Release|Any CPU.Build.0 = Release|Any CPU
{2C5EB8B3-A313-413D-BAA0-5C21D2A6EC6E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2C5EB8B3-A313-413D-BAA0-5C21D2A6EC6E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2C5EB8B3-A313-413D-BAA0-5C21D2A6EC6E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2C5EB8B3-A313-413D-BAA0-5C21D2A6EC6E}.Release|Any CPU.Build.0 = Release|Any CPU
{98251EAE-A41B-47B2-AA91-E28B8482DA70}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{98251EAE-A41B-47B2-AA91-E28B8482DA70}.Debug|Any CPU.Build.0 = Debug|Any CPU
{98251EAE-A41B-47B2-AA91-E28B8482DA70}.Release|Any CPU.ActiveCfg = Release|Any CPU
{98251EAE-A41B-47B2-AA91-E28B8482DA70}.Release|Any CPU.Build.0 = Release|Any CPU
{D4E8F7C8-2DB2-4C50-A422-DA1DF1E3CC73}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D4E8F7C8-2DB2-4C50-A422-DA1DF1E3CC73}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D4E8F7C8-2DB2-4C50-A422-DA1DF1E3CC73}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D4E8F7C8-2DB2-4C50-A422-DA1DF1E3CC73}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{2D1D92BB-4555-4CBE-8D0E-63563D6CE4C6} = {F2AB7512-139A-420F-AE3A-9ED22CA52CE1}
{9916839C-39FC-4CEB-A5AF-89CA7E87119F} = {F2AB7512-139A-420F-AE3A-9ED22CA52CE1}
{63FBD4D9-E1DA-4A7B-AA6A-D6074FE50867} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{14C049FD-B35B-415A-A824-87F26B26E7FD} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{0E7646E8-FE8F-43C1-8799-D97860925EC4} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{EA2B9121-EF54-40A6-A53E-6593C86EE696} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{D9A7B330-CD22-4DA1-A95A-8DE1982AD8EB} = {B6092A92-1071-4C30-AD55-8E8D46BC2F14}
{17F86780-9A1F-4AA1-86F1-875EEC2730C7} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{72457126-E118-4171-A08F-9A709EE4B7FC} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{D10AD48F-407D-4DB5-A328-173EC7CB010F} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{4BE4EB01-AC56-4048-924E-2CA77F509ABA} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{8C7FCBC2-E6E1-405E-BFB5-D8D9E67A09C4} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{5D0F00F0-26C9-4785-AD61-B85710C60EB0} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{CDE24A24-01D3-403C-84B9-37722E18DFB7} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{79AED36E-ABD0-4747-93D3-8722B042454B} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{954CA994-D204-468B-9D69-51F6AD3E1C29} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{33B1BC8D-E292-4972-A363-22056B207156} = {75E7476C-C05B-4C41-8E38-081D3EB55659}
{D5D447D7-EF8E-43A6-B9A4-3B025DD9F45D} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{DFD137A2-DDB5-4D22-BE0D-FA9AD4C8B059} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{C0C45321-B51D-4D8D-9B7B-AA4C2E0B2962} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{1C981BB3-26F7-494C-9005-CC27A5144233} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{05660F47-D649-48BD-9DED-DF4E01E7CFF9} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{8F116B06-1C0E-4E4C-9A0A-D2FAB851E768} = {B6092A92-1071-4C30-AD55-8E8D46BC2F14}
{EA4F1DA7-F2AB-4384-9AA4-9B756E2026B1} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{194D3CCC-1153-474D-8176-FDE8D7D0D0BD} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{CB70A642-8CEC-4DDE-8C9F-AD08900EC98D} = {84650275-884D-4CBB-9CC0-67553996E211}
{FBC8B571-ED50-49D8-8D9D-64AB7454A0D6} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{137906EA-15FE-4AD8-A6A0-27528F0477D6} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{3420C92A-747F-4990-BA08-F2C9531E44AD} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{C889167C-E52C-4A65-A419-224B3D1B957D} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{99002B65-86F7-415E-BF4A-381AA8AB9CCC} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{2AD6973D-C7BB-416E-89FE-EEE34664E05F} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{4A4595EF-6C37-4F99-96ED-4AE0B9E438D3} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{43D0EC0B-1955-4566-8D31-7B9102DA1703} = {B6092A92-1071-4C30-AD55-8E8D46BC2F14}
{FC1D74E8-7A4D-48F4-83DE-95C6173780C4} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{3158C928-888C-4A84-8BC1-4A8257489538} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{642A49D7-8752-4177-80D6-BFBBCFAD3DE0} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{6F759635-13D7-4E94-BCC9-80445D63F117} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{966EC390-3C7F-4D98-92A6-F0F30D02E9B1} = {B6092A92-1071-4C30-AD55-8E8D46BC2F14}
{3F72A4E9-7B72-4260-B010-C16EC54F9BAF} = {B6092A92-1071-4C30-AD55-8E8D46BC2F14}
{475B6C45-B27C-438B-8966-908B9D6D1077} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{66FCCD76-2761-47E3-8D11-B45D0001DDAA} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{3787DDE5-E5C8-4841-BDA7-DCB325388064} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{5531E894-D259-45A3-AA61-26DBE720C1CE} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{91BC2E7F-DA04-421C-98EF-76D37CEC130C} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{E826F796-8CE3-4B5B-8423-5AA5F81D2FC3} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{2CF067CA-064B-43C6-8B88-5E3B99A65F1D} = {B6092A92-1071-4C30-AD55-8E8D46BC2F14}
{F301EF7D-F19C-4D83-AA94-CB64F29C037D} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{FE5C5947-D2D5-42C5-992A-13D672946135} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{9CD5C81F-5828-4384-8474-2E2BE71D5EDD} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{3BD22132-D538-48C6-8854-F71333C798EB} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{1F0B6B85-8B0B-47CA-899D-F25B4F1B52C3} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{08191FCD-7258-4F19-95FB-AEC3DE77B2EB} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{73A7688A-5BD3-4F7E-ADFA-CE36C5A10E3B} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{6E444FF1-A47C-4CF6-BB3F-507C8EBD776D} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{7059493C-8251-4764-9C1E-2368B8B485BC} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{8A9FDB57-342D-49C2-BAFC-D885AAE5CC7C} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{5D13EF34-8B39-4EC5-847F-E12892ACF841} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{E649EA64-D213-461B-87F7-D67035801443} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{7528BF74-25C7-4ABE-883A-443B4EEC4776} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{36B82383-D69E-4897-A24A-648BABDF80EC} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{10AB3CE2-A720-467F-9EC8-EBB4BAC9A1C9} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{14A96B1A-9DC9-44C8-A675-206329E15263} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{3DD574CD-9C5D-4A45-85E1-EBBA64C22B5F} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{82190F52-2901-46D6-8A4C-34649959483F} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{085948FF-0E9B-4A9A-B564-F8B8B4BDDDBC} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{6BD8B2FA-F2E3-4AC8-A4C3-2925A653889A} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{ED715544-E649-4F48-B8EE-9368C41C3AC0} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{2C5EB8B3-A313-413D-BAA0-5C21D2A6EC6E} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{98251EAE-A41B-47B2-AA91-E28B8482DA70} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
{D4E8F7C8-2DB2-4C50-A422-DA1DF1E3CC73} = {8E3DE014-9B28-4B32-8AC1-B2BE404E9B2D}
EndGlobalSection
EndGlobal

View File

@@ -73,8 +73,8 @@
<HintPath>..\packages\Microsoft.Web.Infrastructure.1.0.0.0\lib\net40\Microsoft.Web.Infrastructure.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Moq, Version=4.2.1510.2205, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
<HintPath>..\packages\Moq.4.2.1510.2205\lib\NET40\Moq.dll</HintPath>
<Reference Include="Moq, Version=4.0.10827.0, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
<HintPath>..\packages\Moq.4.0.10827\lib\NET40\Moq.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="NHibernate, Version=4.0.0.4000, Culture=neutral, PublicKeyToken=aa95f207798dfdb4, processorArchitecture=MSIL">

View File

@@ -7,7 +7,7 @@
<package id="Microsoft.AspNet.Razor" version="3.2.3" targetFramework="net452" />
<package id="Microsoft.AspNet.WebPages" version="3.2.3" targetFramework="net452" />
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net452" />
<package id="Moq" version="4.2.1510.2205" targetFramework="net452" />
<package id="Moq" version="4.0.10827" targetFramework="net452" />
<package id="NHibernate" version="4.0.1.4000" targetFramework="net452" />
<package id="NUnit" version="2.5.10.11092" targetFramework="net452" />
</packages>

View File

@@ -27,10 +27,6 @@
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Owin" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.0.1.0" newVersion="3.0.1.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

View File

@@ -203,8 +203,6 @@ namespace Orchard.Tests.Modules.Comments.Services {
public class ProcessingEngineStub : IProcessingEngine {
public void Initialize() { }
public string AddTask(ShellSettings shellSettings, ShellDescriptor shellDescriptor, string messageName, Dictionary<string, object> parameters) {
return "";
}

View File

@@ -118,8 +118,8 @@
<HintPath>..\packages\Microsoft.Web.Infrastructure.1.0.0.0\lib\net40\Microsoft.Web.Infrastructure.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Moq, Version=4.2.1510.2205, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
<HintPath>..\packages\Moq.4.2.1510.2205\lib\NET40\Moq.dll</HintPath>
<Reference Include="Moq, Version=4.0.10827.0, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
<HintPath>..\packages\Moq.4.0.10827\lib\NET40\Moq.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Newtonsoft.Json, Version=7.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">

View File

@@ -11,7 +11,7 @@
<package id="Microsoft.AspNet.Razor" version="3.2.3" targetFramework="net452" />
<package id="Microsoft.AspNet.WebPages" version="3.2.3" targetFramework="net452" />
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net452" />
<package id="Moq" version="4.2.1510.2205" targetFramework="net452" />
<package id="Moq" version="4.0.10827" targetFramework="net452" />
<package id="Newtonsoft.Json" version="7.0.1" targetFramework="net452" />
<package id="NHibernate" version="4.0.1.4000" targetFramework="net452" />
<package id="NUnit" version="2.5.10.11092" targetFramework="net452" />

View File

@@ -110,8 +110,8 @@
<HintPath>..\packages\Microsoft.Web.Infrastructure.1.0.0.0\lib\net40\Microsoft.Web.Infrastructure.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Moq, Version=4.2.1510.2205, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
<HintPath>..\packages\Moq.4.2.1510.2205\lib\NET40\Moq.dll</HintPath>
<Reference Include="Moq, Version=4.0.10827.0, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
<HintPath>..\packages\Moq.4.0.10827\lib\NET40\Moq.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Newtonsoft.Json, Version=7.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">

View File

@@ -14,13 +14,11 @@ namespace Orchard.Tests.UI.Notify {
notifier.Warning(T("Hello world"));
notifier.Information(T("More Info"));
notifier.Error(T("Boom"));
notifier.Success(T("Success"));
Assert.That(notifier.List(), Has.Count.EqualTo(4));
Assert.That(notifier.List(), Has.Count.EqualTo(3));
Assert.That(notifier.List(), Has.Some.Property("Message").EqualTo(T("Hello world")));
Assert.That(notifier.List(), Has.Some.Property("Message").EqualTo(T("More Info")));
Assert.That(notifier.List(), Has.Some.Property("Message").EqualTo(T("Boom")));
Assert.That(notifier.List(), Has.Some.Property("Message").EqualTo(T("Success")));
}
}
}

View File

@@ -31,13 +31,9 @@ namespace Orchard.Tests.UI.Resources {
}
private void VerifyPaths(string resourceType, RequireSettings defaultSettings, string expectedPaths) {
VerifyPaths(resourceType, defaultSettings, expectedPaths, false);
}
private void VerifyPaths(string resourceType, RequireSettings defaultSettings, string expectedPaths, bool ssl) {
defaultSettings = defaultSettings ?? new RequireSettings();
var requiredResources = _resourceManager.BuildRequiredResources(resourceType);
var renderedResources = string.Join(",", requiredResources.Select(context => context.GetResourceUrl(defaultSettings, _appPath, ssl)).ToArray());
var renderedResources = string.Join(",", requiredResources.Select(context => context.GetResourceUrl(defaultSettings, _appPath)).ToArray());
Assert.That(renderedResources, Is.EqualTo(expectedPaths));
}
@@ -96,33 +92,6 @@ namespace Orchard.Tests.UI.Resources {
VerifyPaths("script", new RequireSettings { CdnMode = true }, "http://cdn/script1.min.js");
}
[Test]
public void CdnSslPathIsUsedInCdnMode() {
_testManifest.DefineManifest = m => {
m.DefineResource("script", "Script1").SetUrl("script1.js").SetCdn("https://cdn/script1.min.js");
};
_resourceManager.Require("script", "Script1");
VerifyPaths("script", new RequireSettings { CdnMode = true }, "https://cdn/script1.min.js", true);
}
[Test]
public void LocalPathIsUsedInCdnModeNotSupportsSsl() {
_testManifest.DefineManifest = m => {
m.DefineResource("script", "Script1").SetUrl("script1.min.js", "script1.js").SetCdn("http://cdn/script1.min.js", "http://cdn/script1.js", false);
};
_resourceManager.Require("script", "Script1");
VerifyPaths("script", new RequireSettings { CdnMode = true }, "script1.min.js", true);
}
[Test]
public void LocalDebugPathIsUsedInCdnModeNotSupportsSslAndDebug() {
_testManifest.DefineManifest = m => {
m.DefineResource("script", "Script1").SetUrl("script1.min.js", "script1.js").SetCdn("http://cdn/script1.min.js", "http://cdn/script1.js", false);
};
_resourceManager.Require("script", "Script1");
VerifyPaths("script", new RequireSettings { CdnMode = true, DebugMode = true }, "script1.js", true);
}
[Test]
public void CdnDebugPathIsUsedInCdnModeAndDebugMode() {
_testManifest.DefineManifest = m => {

View File

@@ -13,7 +13,7 @@
<package id="Microsoft.AspNet.WebApi.Core" version="5.2.3" targetFramework="net452" />
<package id="Microsoft.AspNet.WebPages" version="3.2.3" targetFramework="net452" />
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net452" />
<package id="Moq" version="4.2.1510.2205" targetFramework="net452" />
<package id="Moq" version="4.0.10827" targetFramework="net452" />
<package id="Newtonsoft.Json" version="7.0.1" targetFramework="net452" />
<package id="NHibernate" version="4.0.1.4000" targetFramework="net452" />
<package id="NUnit" version="2.5.10.11092" targetFramework="net452" />

View File

@@ -18,10 +18,6 @@
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Owin" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.0.1.0" newVersion="3.0.1.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

View File

@@ -1,9 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
<log4net xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<root>
<priority value="ERROR" xdt:Transform="SetAttributes(value)" />
<appender-ref ref="debug-file" xdt:Locator="Match(ref)" xdt:Transform="Remove" />
</root>
<logger name="Orchard" xdt:Locator="Match(name)" xdt:Transform="Remove" />
<appender name="debugger" xdt:Locator="Match(name)" xdt:Transform="Remove" />
<appender name="debug-file" xdt:Locator="Match(name)" xdt:Transform="Remove" />
<appender>
<immediateFlush value="false" xdt:Transform="SetAttributes(value)" />
</appender>
</log4net>

View File

@@ -11,7 +11,6 @@ using Orchard.Core.Common.ViewModels;
using Orchard.Services;
using System.Web.Mvc;
using System.Web.Routing;
using Orchard.ContentManagement.Handlers;
namespace Orchard.Core.Common.Drivers {
public class BodyPartDriver : ContentPartDriver<BodyPart> {
@@ -76,10 +75,6 @@ namespace Orchard.Core.Common.Drivers {
context.Element(part.PartDefinition.Name).SetAttributeValue("Text", part.Text);
}
protected override void Cloning(BodyPart originalPart, BodyPart clonePart, CloneContentContext context) {
clonePart.Text = originalPart.Text;
}
private static BodyEditorViewModel BuildEditorViewModel(BodyPart part,RequestContext requestContext) {
return new BodyEditorViewModel {
BodyPart = part,

View File

@@ -123,9 +123,5 @@ namespace Orchard.Core.Common.Drivers {
.SetAttributeValue("ModifiedUtc", XmlConvert.ToString(part.ModifiedUtc.Value, XmlDateTimeSerializationMode.Utc));
}
}
protected override void Cloning(CommonPart originalPart, CommonPart clonePart, CloneContentContext context) {
clonePart.Container = originalPart.Container;
}
}
}

View File

@@ -88,10 +88,6 @@ namespace Orchard.Core.Common.Drivers {
context.Element(field.FieldDefinition.Name + "." + field.Name).SetAttributeValue("Text", field.Value);
}
protected override void Cloning(ContentPart part, TextField originalField, TextField cloneField, CloneContentContext context) {
cloneField.Value = originalField.Value;
}
protected override void Describe(DescribeMembersContext context) {
context
.Member(null, typeof(string), T("Value"), T("The text associated with the field."))

View File

@@ -7,7 +7,6 @@ namespace Orchard.Core.Common.Settings {
public string Flavor { get; set; }
public bool Required { get; set; }
public string Hint { get; set; }
public string Placeholder { get; set; }
public string DefaultValue { get; set; }
}
}

View File

@@ -33,7 +33,6 @@ namespace Orchard.Core.Common.Settings {
builder.WithSetting("TextFieldSettings.Flavor", model.Settings.Flavor);
builder.WithSetting("TextFieldSettings.Hint", model.Settings.Hint);
builder.WithSetting("TextFieldSettings.Required", model.Settings.Required.ToString(CultureInfo.InvariantCulture));
builder.WithSetting("TextFieldSettings.Placeholder", model.Settings.Placeholder);
builder.WithSetting("TextFieldSettings.DefaultValue", model.Settings.DefaultValue);
yield return DefinitionTemplate(model);

View File

@@ -9,7 +9,5 @@ namespace Orchard.Core.Common.ViewModels {
public string Time { get; set; }
public bool ShowDate { get; set; }
public bool ShowTime { get; set; }
public string DatePlaceholder { get; set; }
public string TimePlaceholder { get; set; }
}
}

View File

@@ -1,6 +1,4 @@
@{
var propertyName = Model.PropertyName != null ? (string)Model.PropertyName : "Text";
var htmlAttributes = new Dictionary<string, object> {
{"class", "text large"}
};
@@ -14,4 +12,4 @@
}
}
@Html.TextBox(propertyName, (string)Model.Text, htmlAttributes)
@Html.TextBox("Text", (string)Model.Text, htmlAttributes)

View File

@@ -1,6 +1,4 @@
@{
var propertyName = Model.PropertyName != null ? (string)Model.PropertyName : "Text";
var htmlAttributes = new Dictionary<string, object> {
{"class", "text small"}
};
@@ -14,4 +12,4 @@
}
}
@Html.TextBox(propertyName, (string)Model.Text, htmlAttributes)
@Html.TextBox("Text", (string)Model.Text, htmlAttributes)

View File

@@ -1,6 +1,4 @@
@{
var propertyName = Model.PropertyName != null ? (string)Model.PropertyName : "Text";
var htmlAttributes = new Dictionary<string, object>();
if (Model.Required == true) {
@@ -10,10 +8,6 @@
if (Model.AutoFocus == true) {
htmlAttributes["autofocus"] = "autofocus";
}
if (!String.IsNullOrEmpty(Model.Placeholder)) {
htmlAttributes["placeholder"] = Model.Placeholder;
}
}
@Html.TextArea(propertyName, (string)Model.Text, 25, 80, htmlAttributes)
@Html.TextArea("Text", (string)Model.Text, 25, 80, htmlAttributes)

View File

@@ -1,6 +1,4 @@
@{
var propertyName = Model.PropertyName != null ? (string)Model.PropertyName : "Text";
var htmlAttributes = new Dictionary<string, object> {
{"class", "text medium"}
};
@@ -14,4 +12,4 @@
}
}
@Html.TextBox(propertyName, (string)Model.Text, htmlAttributes)
@Html.TextBox("Text", (string)Model.Text, htmlAttributes)

View File

@@ -1,7 +1,5 @@
@using Orchard.Utility.Extensions;
@{
var propertyName = Model.PropertyName != null ? (string)Model.PropertyName : "Text";
string editorFlavor = Model.EditorFlavor;
var htmlAttributes = new Dictionary<string, object> {
@@ -15,10 +13,6 @@
if (Model.AutoFocus == true) {
htmlAttributes["autofocus"] = "autofocus";
}
if (!String.IsNullOrEmpty(Model.Placeholder)) {
htmlAttributes["placeholder"] = Model.Placeholder;
}
}
@Html.TextArea(propertyName, (string)Model.Text, 25, 80, htmlAttributes)
@Html.TextArea("Text", (string)Model.Text, 25, 80, htmlAttributes)

View File

@@ -19,14 +19,6 @@
<span class="hint">@T("The help text is written under the field when authors are editing the content item.")</span>
@Html.ValidationMessageFor(m => m.Settings.Hint)
</fieldset>
<fieldset>
<div class="editor-field">
<label for="@Html.FieldIdFor(m => m.Settings.Placeholder)">@T("Watermark (placeholder)")</label>
@Html.TextBoxFor(m => m.Settings.Placeholder, new { @class = "text large" })
@Html.ValidationMessageFor(m => m.Settings.Placeholder)
<span class="hint">@T("A hint to display when the input of text is empty. (optional)")</span>
</div>
</fieldset>
<fieldset>
@Display.DefinitionTemplate(TemplateName: "TextFieldDefaultValueEditor", Model: Model)
</fieldset>

View File

@@ -5,13 +5,13 @@
}
@if (Model.ShowDate) {
<label for="@Html.FieldIdFor(m => Model.Date)">@T("Date")</label>
<span class="date">@Html.TextBoxFor(m => m.Date, new { placeholder = Model.DatePlaceholder ?? T("Date").Text })</span>
<label class="forpicker" for="@Html.FieldIdFor(m => Model.Date)">@T("Date")</label>
<span class="date">@Html.TextBoxFor(m => m.Date, new { placeholder = T("Date").Text })</span>
}
@if (Model.ShowTime) {
<label for="@Html.FieldIdFor(m => Model.Time)">@T("Time")</label>
<span class="time">@Html.TextBoxFor(m => m.Time, new { placeholder = Model.TimePlaceholder ?? T("Time").Text })</span>
<label class="forpicker" for="@Html.FieldIdFor(m => Model.Time)">@T("Time")</label>
<span class="time">@Html.TextBoxFor(m => m.Time, new { placeholder = T("Time").Text })</span>
}
@if (Model.ShowDate) { <text>@Html.ValidationMessageFor(m => m.Date)</text> }

View File

@@ -3,13 +3,11 @@
<fieldset>
<label for="@Html.FieldIdFor(m => m.Text)" @if(Model.Settings.Required) { <text>class="required"</text> }>@Model.Field.DisplayName</label>
@if (String.IsNullOrWhiteSpace(Model.Settings.Flavor)) {
@(Model.Settings.Required
? Html.TextBoxFor(m => m.Text, new { @class = "text", required = "required", placeholder = Model.Settings.Placeholder })
: Html.TextBoxFor(m => m.Text, new { @class = "text", placeholder = Model.Settings.Placeholder }))
@(Model.Settings.Required ? Html.TextBoxFor(m => m.Text, new {@class = "text", required = "required"}) : Html.TextBoxFor(m => m.Text, new {@class = "text"}))
@Html.ValidationMessageFor(m => m.Text)
}
else {
@Display.Body_Editor(Text: Model.Text, EditorFlavor: Model.Settings.Flavor, Required: Model.Settings.Required, ContentItem: Model.ContentItem, Placeholder: Model.Settings.Placeholder)
@Display.Body_Editor(Text: Model.Text, EditorFlavor: Model.Settings.Flavor, Required: Model.Settings.Required, ContentItem: Model.ContentItem)
}
@if (HasText(Model.Settings.Hint)) {
<span class="hint">@Model.Settings.Hint</span>

View File

@@ -0,0 +1,66 @@
using System;
using System.Linq;
using System.Web.Mvc;
using System.Web.Routing;
using Orchard.ContentManagement;
using Orchard.Core.Common.Models;
using Orchard.Core.Containers.Extensions;
using Orchard.Core.Containers.Models;
using Orchard.Core.Contents;
using Orchard.Core.Feeds;
using Orchard.DisplayManagement;
using Orchard.Mvc;
using Orchard.Themes;
using Orchard.UI.Navigation;
using Orchard.Settings;
using Orchard.Localization;
namespace Orchard.Core.Containers.Controllers {
public class ItemController : Controller {
private readonly IContentManager _contentManager;
private readonly ISiteService _siteService;
private readonly IFeedManager _feedManager;
public ItemController(
IContentManager contentManager,
IShapeFactory shapeFactory,
ISiteService siteService,
IFeedManager feedManager,
IOrchardServices services) {
_contentManager = contentManager;
_siteService = siteService;
_feedManager = feedManager;
Shape = shapeFactory;
Services = services;
T = NullLocalizer.Instance;
}
dynamic Shape { get; set; }
public IOrchardServices Services { get; private set; }
public Localizer T { get; set; }
[Themed]
public ActionResult Display(int id, PagerParameters pagerParameters) {
var container = _contentManager
.Get(id, VersionOptions.Published)
.As<ContainerPart>();
if (container == null) {
return HttpNotFound(T("Container not found").Text);
}
if (!Services.Authorizer.Authorize(Permissions.ViewContent, container, T("Cannot view content"))) {
return new HttpUnauthorizedResult();
}
// TODO: (PH) Find a way to apply PagerParameters via a driver so we can lose this controller
container.PagerParameters = pagerParameters;
var model = _contentManager.BuildDisplay(container);
return new ShapeResult(this, model);
}
}
}

View File

@@ -1,5 +1,4 @@
using System;
using System.Collections.Generic;
using System.Collections.Generic;
using System.Linq;
using System.Xml;
using Orchard.ContentManagement;
@@ -28,8 +27,8 @@ namespace Orchard.Core.Containers.Drivers {
private readonly IContainerService _containerService;
public ContainerPartDriver(
IContentDefinitionManager contentDefinitionManager,
IOrchardServices orchardServices,
IContentDefinitionManager contentDefinitionManager,
IOrchardServices orchardServices,
ISiteService siteService,
IFeedManager feedManager, IContainerService containerService) {
_contentDefinitionManager = contentDefinitionManager;
@@ -48,7 +47,7 @@ namespace Orchard.Core.Containers.Drivers {
if (!part.ItemsShown)
return null;
return ContentShape("Parts_Container_Contained", () => {
return ContentShape("Parts_Container_Contained", () => {
var container = part.ContentItem;
var query = _contentManager
.Query(VersionOptions.Published)
@@ -56,26 +55,13 @@ namespace Orchard.Core.Containers.Drivers {
.Join<ContainablePartRecord>().OrderByDescending(x => x.Position);
var metadata = container.ContentManager.GetItemMetadata(container);
if (metadata != null) {
_feedManager.Register(metadata.DisplayText, "rss", new RouteValueDictionary {{"containerid", container.Id}});
}
if (metadata!=null)
_feedManager.Register(metadata.DisplayText, "rss", new RouteValueDictionary { { "containerid", container.Id } });
// Retrieving pager parameters.
var queryString = _orchardServices.WorkContext.HttpContext.Request.QueryString;
var page = 0;
// Don't try to page if not necessary.
if (part.Paginated && queryString["page"] != null) {
Int32.TryParse(queryString["page"], out page);
}
var pageSize = part.PageSize;
// If the container is paginated and pageSize is provided in the query string then retrieve it.
if (part.Paginated && queryString["pageSize"] != null) {
Int32.TryParse(queryString["pageSize"], out pageSize);
}
var pager = new Pager(_siteService.GetSiteSettings(), page, pageSize);
var pager = new Pager(_siteService.GetSiteSettings(), part.PagerParameters);
pager.PageSize = part.PagerParameters.PageSize != null && part.Paginated
? pager.PageSize
: part.PageSize;
var pagerShape = shapeHelper.Pager(pager).TotalItemCount(query.Count());
var startIndex = part.Paginated ? pager.GetStartIndex() : 0;
@@ -102,7 +88,7 @@ namespace Orchard.Core.Containers.Drivers {
protected override DriverResult Editor(ContainerPart part, IUpdateModel updater, dynamic shapeHelper) {
return ContentShape("Parts_Container_Edit", () => {
if (!part.ContainerSettings.DisplayContainerEditor) {
if(!part.ContainerSettings.DisplayContainerEditor) {
return null;
}
@@ -121,7 +107,7 @@ namespace Orchard.Core.Containers.Drivers {
EnablePositioning = part.Record.EnablePositioning,
OverrideEnablePositioning = part.ContainerSettings.EnablePositioning == null
};
if (updater != null) {
if (updater.TryUpdateModel(model, "Container", null, new[] { "OverrideEnablePositioning" })) {
part.AdminMenuPosition = model.AdminMenuPosition;
@@ -141,7 +127,7 @@ namespace Orchard.Core.Containers.Drivers {
}
}
}
return shapeHelper.EditorTemplate(TemplateName: "Container", Model: model, Prefix: "Container");
});
}

View File

@@ -7,6 +7,7 @@ using Orchard.Core.Containers.Models;
using Orchard.Core.Containers.Services;
using Orchard.Core.Containers.Settings;
using Orchard.Data;
using System.Web.Routing;
namespace Orchard.Core.Containers.Handlers {
public class ContainerPartHandler : ContentHandler {
@@ -34,6 +35,14 @@ namespace Orchard.Core.Containers.Handlers {
});
OnGetContentItemMetadata<ContainerPart>((context, part) => {
context.Metadata.DisplayRouteValues = new RouteValueDictionary {
{"Area", "Containers"},
{"Controller", "Item"},
{"Action", "Display"},
{"id", context.ContentItem.Id}
};
});
OnActivated<ContainerPart>((context, part) => {
part.ContainerSettingsField.Loader(() => part.Settings.GetModel<ContainerTypePartSettings>());

View File

@@ -71,6 +71,12 @@ namespace Orchard.Core.Containers.Models {
get { return Record.ItemCount; }
set { Record.ItemCount = value; }
}
public PagerParameters PagerParameters { get; set; }
public ContainerPart() {
PagerParameters = new PagerParameters();
}
}
public class ContainerPartRecord : ContentPartRecord {

View File

@@ -22,7 +22,7 @@
<fieldset>
@Html.LabelFor(m => m.EnablePositioning, @T("Enable drag and drop"))
@Html.EditorFor(m => m.EnablePositioning)
<span class="hint">@T("Check this option to enable manual repositioning of items using drag and drop. If not set, this option will be configurable on the list content item itself.")</span>
<span class="hint">@T("Check this option to enable manual repositioning of items using. If not set, this option will be configurable on the list content item itself.")</span>
</fieldset>
<fieldset>
@Html.LabelFor(m => m.AdminListViewName, @T("List View"))
@@ -45,4 +45,4 @@
<span class="hint">@T("Select zero or more content types that this content type supports. Selecting zero content types means the list can contain any content type. Only types with the Containable part can be contained in a list.")</span>
</div>
</fieldset>
}
}

View File

@@ -193,7 +193,7 @@ namespace Orchard.Core.Contents.Controllers {
_contentManager.Publish(item);
}
Services.Notifier.Success(T("Content successfully published."));
Services.Notifier.Information(T("Content successfully published."));
break;
case ContentsBulkAction.Unpublish:
foreach (var item in checkedContentItems) {
@@ -204,7 +204,7 @@ namespace Orchard.Core.Contents.Controllers {
_contentManager.Unpublish(item);
}
Services.Notifier.Success(T("Content successfully unpublished."));
Services.Notifier.Information(T("Content successfully unpublished."));
break;
case ContentsBulkAction.Remove:
foreach (var item in checkedContentItems) {
@@ -215,7 +215,7 @@ namespace Orchard.Core.Contents.Controllers {
_contentManager.Remove(item);
}
Services.Notifier.Success(T("Content successfully removed."));
Services.Notifier.Information(T("Content successfully removed."));
break;
default:
throw new ArgumentOutOfRangeException();
@@ -296,7 +296,7 @@ namespace Orchard.Core.Contents.Controllers {
conditionallyPublish(contentItem);
Services.Notifier.Success(string.IsNullOrWhiteSpace(contentItem.TypeDefinition.DisplayName)
Services.Notifier.Information(string.IsNullOrWhiteSpace(contentItem.TypeDefinition.DisplayName)
? T("Your content has been created.")
: T("Your {0} has been created.", contentItem.TypeDefinition.DisplayName));
if (!string.IsNullOrEmpty(returnUrl)) {
@@ -375,7 +375,7 @@ namespace Orchard.Core.Contents.Controllers {
returnUrl = Url.ItemDisplayUrl(contentItem);
}
Services.Notifier.Success(string.IsNullOrWhiteSpace(contentItem.TypeDefinition.DisplayName)
Services.Notifier.Information(string.IsNullOrWhiteSpace(contentItem.TypeDefinition.DisplayName)
? T("Your content has been saved.")
: T("Your {0} has been saved.", contentItem.TypeDefinition.DisplayName));
@@ -383,24 +383,26 @@ namespace Orchard.Core.Contents.Controllers {
}
[HttpPost]
public ActionResult Clone(int id) {
var originalContentItem = _contentManager.GetLatest(id);
public ActionResult Clone(int id, string returnUrl) {
var contentItem = _contentManager.GetLatest(id);
if (!Services.Authorizer.Authorize(Permissions.ViewContent, originalContentItem, T("Couldn't open original content")))
if (contentItem == null)
return HttpNotFound();
if (!Services.Authorizer.Authorize(Permissions.EditContent, contentItem, T("Couldn't clone content")))
return new HttpUnauthorizedResult();
// pass a dummy content to the authorization check to check for "own" variations
var dummyContent = _contentManager.New(originalContentItem.ContentType);
try {
Services.ContentManager.Clone(contentItem);
}
catch (InvalidOperationException) {
Services.Notifier.Warning(T("Could not clone the content item."));
return this.RedirectLocal(returnUrl, () => RedirectToAction("List"));
}
if (!Services.Authorizer.Authorize(Permissions.EditContent, dummyContent, T("Couldn't create clone content")))
return new HttpUnauthorizedResult();
Services.Notifier.Information(T("Successfully cloned. The clone was saved as a draft."));
var cloneContentItem = _contentManager.Clone(originalContentItem);
Services.Notifier.Success(T("Successfully cloned. The clone was saved as a draft."));
var adminRouteValues = _contentManager.GetItemMetadata(cloneContentItem).AdminRouteValues;
return RedirectToRoute(adminRouteValues);
return this.RedirectLocal(returnUrl, () => RedirectToAction("List"));
}
[HttpPost]
@@ -412,7 +414,7 @@ namespace Orchard.Core.Contents.Controllers {
if (contentItem != null) {
_contentManager.Remove(contentItem);
Services.Notifier.Success(string.IsNullOrWhiteSpace(contentItem.TypeDefinition.DisplayName)
Services.Notifier.Information(string.IsNullOrWhiteSpace(contentItem.TypeDefinition.DisplayName)
? T("That content has been removed.")
: T("That {0} has been removed.", contentItem.TypeDefinition.DisplayName));
}
@@ -431,7 +433,7 @@ namespace Orchard.Core.Contents.Controllers {
_contentManager.Publish(contentItem);
Services.Notifier.Success(string.IsNullOrWhiteSpace(contentItem.TypeDefinition.DisplayName) ? T("That content has been published.") : T("That {0} has been published.", contentItem.TypeDefinition.DisplayName));
Services.Notifier.Information(string.IsNullOrWhiteSpace(contentItem.TypeDefinition.DisplayName) ? T("That content has been published.") : T("That {0} has been published.", contentItem.TypeDefinition.DisplayName));
return this.RedirectLocal(returnUrl, () => RedirectToAction("List"));
}
@@ -447,7 +449,7 @@ namespace Orchard.Core.Contents.Controllers {
_contentManager.Unpublish(contentItem);
Services.Notifier.Success(string.IsNullOrWhiteSpace(contentItem.TypeDefinition.DisplayName) ? T("That content has been unpublished.") : T("That {0} has been unpublished.", contentItem.TypeDefinition.DisplayName));
Services.Notifier.Information(string.IsNullOrWhiteSpace(contentItem.TypeDefinition.DisplayName) ? T("That content has been unpublished.") : T("That {0} has been unpublished.", contentItem.TypeDefinition.DisplayName));
return this.RedirectLocal(returnUrl, () => RedirectToAction("List"));
}

View File

@@ -54,7 +54,7 @@
@Html.SelectOption((ContentsOrder)Model.Options.OrderBy, ContentsOrder.Modified, T("recently modified").ToString())
@Html.SelectOption((ContentsOrder)Model.Options.OrderBy, ContentsOrder.Published, T("recently published").ToString())
</select>
<label for="contentResults" class="bulk-filter">@T("Filter by")</label>
<label for="contentResults" class="bulk-order">@T("Filter by")</label>
<select id="contentResults" name="Options.ContentsStatus">
@Html.SelectOption((ContentsStatus)Model.Options.ContentsStatus, ContentsStatus.Owner, T("owned by me").ToString())
@Html.SelectOption((ContentsStatus)Model.Options.ContentsStatus, ContentsStatus.Latest, T("latest").ToString())

View File

@@ -1,8 +1,12 @@
@using Orchard.Utility.Extensions;
@{
var contentTypeClassName = ((string)Model.ContentItem.ContentType).HtmlClassify();
Model.Classes.Add(contentTypeClassName);
Model.Classes.Add("content-item");
var tag = Tag(Model, "article");
}
<article class="content-item @contentTypeClassName">
@tag.StartElement
<header>
@Display(Model.Header)
@if (Model.Meta != null) {
@@ -17,4 +21,4 @@
@Display(Model.Footer)
</footer>
}
</article>
@tag.EndElement

View File

@@ -1,9 +1,10 @@
@using Orchard.ContentManagement
@using Orchard.Core.Contents
@using Orchard.Utility.Extensions
@{
ContentPart contentPart = Model.ContentPart;
}
@if (Authorizer.Authorize(Permissions.EditContent, contentPart)) {
<a href="@Url.Action("Clone", "Admin", new { Id = Model.ContentItem.Id, Area = "Contents" })" itemprop="UnsafeUrl">@T("Clone")</a>
<a href="@Url.Action("Clone", "Admin", new { Id = Model.ContentItem.Id, ReturnUrl = Request.ToUrlString(), Area = "Contents" })" itemprop="UnsafeUrl">@T("Clone")</a>
@T(" | ")
}

View File

@@ -1,8 +1,7 @@
using System;
using System;
using Orchard.Commands;
using Orchard.ContentManagement;
using Orchard.ContentManagement.Aspects;
using Orchard.Core.Common.Models;
using Orchard.Core.Navigation.Models;
using Orchard.Core.Navigation.Services;
using Orchard.Security;
@@ -16,7 +15,7 @@ namespace Orchard.Core.Navigation.Commands {
private readonly IMembershipService _membershipService;
public MenuCommands(
IContentManager contentManager,
IContentManager contentManager,
IMenuService menuService,
ISiteService siteService,
IMembershipService membershipService) {
@@ -28,10 +27,7 @@ namespace Orchard.Core.Navigation.Commands {
[OrchardSwitch]
public string MenuPosition { get; set; }
[OrchardSwitch]
public string Identity { get; set; }
[OrchardSwitch]
public string Owner { get; set; }
@@ -45,7 +41,7 @@ namespace Orchard.Core.Navigation.Commands {
public string MenuName { get; set; }
[CommandName("menuitem create")]
[CommandHelp("menuitem create /MenuPosition:<position> /MenuText:<text> /Url:<url> /MenuName:<name> [/Owner:<username>]\r\n\t" + "Creates a new menu item")]
[CommandHelp("menuitem create /MenuPosition:<position> /MenuText:<text> /Url:<url> /MenuName:<name> [/Owner:<username>] \r\n\t" + "Creates a new menu item")]
[OrchardSwitches("MenuPosition,MenuText,Url,MenuName,Owner")]
public void Create() {
// flushes before doing a query in case a previous command created the menu
@@ -79,20 +75,17 @@ namespace Orchard.Core.Navigation.Commands {
}
[CommandName("menu create")]
[CommandHelp("menu create /MenuName:<name> [/Identity:<identity>] \r\n\t" + "Creates a new menu")]
[OrchardSwitches("MenuName,Identity")]
[CommandHelp("menu create /MenuName:<name>\r\n\t" + "Creates a new menu")]
[OrchardSwitches("MenuName")]
public void CreateMenu() {
if (string.IsNullOrWhiteSpace(MenuName)) {
Context.Output.WriteLine(T("Menu name can't be empty.").Text);
return;
}
var menuItem = _menuService.Create(MenuName);
if (menuItem.Has<IdentityPart>() && !String.IsNullOrEmpty(Identity)) {
menuItem.As<IdentityPart>().Identifier = Identity;
}
_menuService.Create(MenuName);
Context.Output.WriteLine(T("Menu created successfully.").Text);
}
}
}
}

View File

@@ -227,7 +227,7 @@ namespace Orchard.Core.Navigation.Controllers {
return View(model);
}
Services.Notifier.Success(T("Your {0} has been added.", menuPart.TypeDefinition.DisplayName));
Services.Notifier.Information(T("Your {0} has been added.", menuPart.TypeDefinition.DisplayName));
return this.RedirectLocal(returnUrl, () => RedirectToAction("Index"));
}

View File

@@ -177,13 +177,5 @@ namespace Orchard.Core.Navigation {
return 6;
}
public int UpdateFrom6() {
ContentDefinitionManager.AlterTypeDefinition("ShapeMenuItem", cfg => cfg
.WithIdentity()
);
return 7;
}
}
}
}

View File

@@ -25,27 +25,27 @@
</fieldset>
<fieldset>
@Html.EditorFor(m => m.Breadcrumb)
@Html.EditorFor(m => m.Breadcrumb)
<label class="forcheckbox" for="@Html.FieldIdFor(m => m.Breadcrumb)">@T("Display as Breadcrumb")</label>
<span class="hint">@T("Check to render the path to the current content item.")</span>
</fieldset>
<div data-controllerid="@Html.FieldIdFor(m => m.Breadcrumb)">
<fieldset>
@Html.EditorFor(m => m.AddHomePage)
@Html.EditorFor(m => m.AddHomePage)
<label class="forcheckbox" for="@Html.FieldIdFor(m => m.AddHomePage)">@T("Add the home page as the first element")</label>
<span class="hint">@T("Check to render the home page as the first element of the breadcrumb.")</span>
</fieldset>
<fieldset>
@Html.EditorFor(m => m.AddCurrentPage)
@Html.EditorFor(m => m.AddCurrentPage)
<label class="forcheckbox" for="@Html.FieldIdFor(m => m.AddCurrentPage)">@T("Add the current content item as the last element")</label>
<span class="hint">@T("Check to render the current content item as the last element.")</span>
</fieldset>
</div>
<fieldset>
@Html.EditorFor(m => m.ShowFullMenu)
@Html.EditorFor(m => m.ShowFullMenu)
<label class="forcheckbox" for="@Html.FieldIdFor(m => m.ShowFullMenu)">@T("No filter on selected page")</label>
<span class="hint">@T("Check for the menu to be displayed without filtering the selected current page.")</span>
</fieldset>
<span class="hint">@T("Check for the menu to be display without filtering the selected current page.")</span>
</fieldset>

View File

@@ -11,7 +11,3 @@
@Display(Model.Sidebar)
</div>
</div>
@if (!String.IsNullOrWhiteSpace(Request.QueryString["returnUrl"])) {
@Html.Hidden("returnUrl", Request.QueryString["returnUrl"])
}

View File

@@ -119,6 +119,7 @@
<Compile Include="Common\ViewModels\DateTimeEditor.cs" />
<Compile Include="Common\ViewModels\TextFieldDriverViewModel.cs" />
<Compile Include="Common\ViewModels\TextFieldSettingsEventsViewModel.cs" />
<Compile Include="Containers\Controllers\ItemController.cs" />
<Compile Include="Containers\Drivers\ContainablePartDriver.cs" />
<Compile Include="Containers\Drivers\ContainerPartDriver.cs" />
<Compile Include="Common\Migrations.cs" />
@@ -394,7 +395,10 @@
<ItemGroup>
<Content Include="Common\Views\Parts.Common.Body.Summary.cshtml" />
</ItemGroup>
<ItemGroup />
<ItemGroup>
<Folder Include="App_Data\" />
<Folder Include="Views\Gamma\" />
</ItemGroup>
<ItemGroup>
<Content Include="Contents\Views\Content.cshtml" />
<Content Include="Contents\Views\Content.SummaryAdmin.cshtml" />

View File

@@ -82,7 +82,7 @@ namespace Orchard.Core.Settings.Controllers {
return View(model);
}
Services.Notifier.Success(T("Settings updated"));
Services.Notifier.Information(T("Settings updated"));
return RedirectToAction("Index");
}

View File

@@ -455,12 +455,12 @@ namespace Orchard.Core.Shapes {
var appPath = httpContext == null || httpContext.Request == null
? null
: httpContext.Request.ApplicationPath;
var ssl = httpContext?.Request?.IsSecureConnection ?? false;
foreach (var context in requiredResources.Where(r =>
(includeLocation.HasValue ? r.Settings.Location == includeLocation.Value : true) &&
(excludeLocation.HasValue ? r.Settings.Location != excludeLocation.Value : true))) {
var path = context.GetResourceUrl(defaultSettings, appPath, ssl);
var path = context.GetResourceUrl(defaultSettings, appPath);
var condition = context.Settings.Condition;
var attributes = context.Settings.HasAttributes ? context.Settings.Attributes : null;
IHtmlString result;

View File

@@ -52,9 +52,5 @@ namespace Orchard.Core.Title.Drivers {
protected override void Exporting(TitlePart part, ExportContentContext context) {
context.Element(part.PartDefinition.Name).SetAttributeValue("Title", part.Title);
}
protected override void Cloning(TitlePart originalPart, TitlePart clonePart, CloneContentContext context) {
clonePart.Title = originalPart.Title;
}
}
}

View File

@@ -168,7 +168,7 @@ namespace Lucene.Services {
writer.DeleteDocuments(query);
}
catch (Exception ex) {
Logger.Error(ex, "An unexpected error occured while removing the documents [{0}] from the index [{1}].", String.Join(", ", documentIds), indexName);
Logger.Error(ex, "An unexpected error occurred while removing the documents [{0}] from the index [{1}].", String.Join(", ", documentIds), indexName);
}
}
}

View File

@@ -1,8 +1,6 @@
@using Orchard.Environment.Descriptor.Models
@{
var propertyName = Model.PropertyName != null ? (string)Model.PropertyName : "Text";
Script.Require("OrchardMarkdown");
Style.Require("OrchardMarkdown");
@@ -37,7 +35,7 @@
<div class="wmd-innerbox">
<div class="wmd-editor-box">
<div id="wmd-button-bar-@idPostfix" class="wmd-button-bar"></div>
@Html.TextArea(propertyName, (string)Model.Text, 25, 80, textAreaAttributes)
@Html.TextArea("Text", (string)Model.Text, 25, 80, textAreaAttributes)
</div>
<div class="wmd-preview-box">
<div id="wmd-preview-@idPostfix" class="wmd-panel wmd-preview"></div>

View File

@@ -172,8 +172,8 @@ namespace Orchard.Alias.Controllers {
}
catch (Exception ex) {
Services.TransactionManager.Cancel();
Services.Notifier.Error(T("An error occured while creating the alias {0}: {1}. Please check the values are correct.", aliasPath, ex.Message));
Logger.Error(ex, T("An error occured while creating the alias {0}", aliasPath).Text);
Services.Notifier.Error(T("An error occurred while creating the alias {0}: {1}. Please check the values are correct.", aliasPath, ex.Message));
Logger.Error(ex, T("An error occurred while creating the alias {0}", aliasPath).Text);
ViewBag.Path = aliasPath;
ViewBag.Route = routePath;
@@ -181,7 +181,7 @@ namespace Orchard.Alias.Controllers {
return View();
}
Services.Notifier.Success(T("Alias {0} created", aliasPath));
Services.Notifier.Information(T("Alias {0} created", aliasPath));
return RedirectToAction("IndexUnmanaged");
}
@@ -236,8 +236,8 @@ namespace Orchard.Alias.Controllers {
}
catch (Exception ex) {
Services.TransactionManager.Cancel();
Services.Notifier.Error(T("An error occured while editing the alias '{0}': {1}. Please check the values are correct.", aliasPath, ex.Message));
Logger.Error(ex, T("An error occured while creating the alias '{0}'", aliasPath).Text);
Services.Notifier.Error(T("An error occurred while editing the alias '{0}': {1}. Please check the values are correct.", aliasPath, ex.Message));
Logger.Error(ex, T("An error occurred while creating the alias '{0}'", aliasPath).Text);
ViewBag.Path = aliasPath;
ViewBag.Route = routePath;
@@ -251,7 +251,7 @@ namespace Orchard.Alias.Controllers {
_aliasService.Delete(path == "/" ? String.Empty : path);
}
Services.Notifier.Success(T("Alias {0} updated", path));
Services.Notifier.Information(T("Alias {0} updated", path));
return RedirectToAction("IndexUnmanaged");
}
@@ -267,7 +267,7 @@ namespace Orchard.Alias.Controllers {
_aliasService.Delete(path);
Services.Notifier.Success(T("Alias {0} deleted", path));
Services.Notifier.Information(T("Alias {0} deleted", path));
return this.RedirectLocal(returnUrl, Url.Action("IndexUnmanaged"));
}

View File

@@ -36,7 +36,7 @@ namespace Orchard.AntiSpam.Services {
return SpamStatus.Ham;
}
catch(Exception e) {
Logger.Error(e, "An error occured while checking for spam");
Logger.Error(e, "An error occurred while checking for spam");
return SpamStatus.Spam;
}
}
@@ -46,7 +46,7 @@ namespace Orchard.AntiSpam.Services {
var result = ExecuteValidateRequest(context, "submit-spam");
}
catch (Exception e) {
Logger.Error(e, "An error occured while reporting spam");
Logger.Error(e, "An error occurred while reporting spam");
}
}
@@ -55,7 +55,7 @@ namespace Orchard.AntiSpam.Services {
var result = ExecuteValidateRequest(context, "submit-ham");
}
catch (Exception e) {
Logger.Error(e, "An error occured while reporting ham");
Logger.Error(e, "An error occurred while reporting ham");
}
}

View File

@@ -54,7 +54,7 @@ namespace Orchard.AuditTrail.Controllers {
var restoredContentItem = _contentManager.Restore(contentItem, VersionOptions.Restore(version, publish: !draftable));
var restoredContentItemTitle = _contentManager.GetItemMetadata(restoredContentItem).DisplayText;
_notifier.Success(T("&quot;{0}&quot; has been restored.", restoredContentItemTitle));
_notifier.Information(T("&quot;{0}&quot; has been restored.", restoredContentItemTitle));
return this.RedirectReturn(returnUrl, () => Url.Action("Index", "Admin"));
}

View File

@@ -56,7 +56,7 @@ namespace Orchard.AuditTrail.Controllers {
var restoredContentItem = _recycleBin.Restore(contentItem);
var restoredContentItemTitle = _contentManager.GetItemMetadata(restoredContentItem).DisplayText;
_notifier.Success(T("&quot;{0}&quot; has been restored.", restoredContentItemTitle));
_notifier.Information(T("&quot;{0}&quot; has been restored.", restoredContentItemTitle));
return this.RedirectReturn(returnUrl, () => Url.Action("Index", "RecycleBin"));
}
@@ -115,7 +115,7 @@ namespace Orchard.AuditTrail.Controllers {
}
_recycleBin.Restore(contentItem);
_notifier.Success(T("&quot;{0}&quot; has been restored.", contentItemTitle));
_notifier.Information(T("&quot;{0}&quot; has been restored.", contentItemTitle));
}
}
@@ -131,7 +131,7 @@ namespace Orchard.AuditTrail.Controllers {
try {
_contentManager.Destroy(contentItem);
_notifier.Success(T("&quot;{0}&quot; has been permanently deleted.", contentItemTitle));
_notifier.Information(T("&quot;{0}&quot; has been permanently deleted.", contentItemTitle));
}
catch (Exception ex) {
Logger.Error(ex, "An exception occurred while trying to permanently delete content with ID {0}.", contentItem.Id);

View File

@@ -34,10 +34,7 @@ namespace Orchard.AuditTrail.Providers.Content {
protected override void Updating(UpdateContentContext context) {
var contentItem = context.ContentItem;
if (contentItem.IsNew())
return;
_ignoreExportHandlerFor = contentItem;
_ignoreExportHandlerFor = contentItem;
_previousVersionXml = _contentItemCreated
? default(XElement) // No need to do a diff on a newly created content item.
: _contentManager.Export(contentItem);
@@ -46,10 +43,7 @@ namespace Orchard.AuditTrail.Providers.Content {
protected override void Updated(UpdateContentContext context) {
var contentItem = context.ContentItem;
if (contentItem.IsNew())
return;
if (_contentItemCreated) {
RecordAuditTrailEvent(ContentAuditTrailEventProvider.Created, context.ContentItem);
}

View File

@@ -35,9 +35,7 @@ namespace Orchard.AuditTrail.Services {
case XmlNodeType.Element:
var match = reader.GetAttribute("match");
var isAttributeChange = match != null && match.StartsWith("@");
int matchInt;
var index = match == null || isAttributeChange || !Int32.TryParse(match, out matchInt)
? default(int?) : matchInt - 1;
var index = match == null || isAttributeChange ? default(int?) : Int32.Parse(match) - 1;
var diffType = reader.LocalName;
var currentElement = stack.Peek();

View File

@@ -1,6 +0,0 @@
[
{
"inputs": [ "Assets/Styles.less" ],
"output": "Styles/Styles.css"
}
]

View File

@@ -1,13 +0,0 @@
namespace Orchard.Azure.Authentication.Constants {
public class DefaultAzureSettings {
public static readonly string Tenant = "mydirectory.onmicrosoft.com";
public static readonly string ClientId = "MyClientId";
public static readonly string ADInstance = "https://login.microsoftonline.com/{0}";
public static readonly string LogoutRedirectUri = "http://localhost:30321/OrchardLocal/";
public static readonly bool BearerAuthEnabled = false;
public static readonly bool SSLEnabled = false;
public static readonly bool AzureWebSiteProtectionEnabled = false;
public static readonly string GraphiApiUri = "https://graph.windows.net";
public static readonly string GraphApiKey = "XSpN3xxGE7KgjLF/3lk2PBz98eAQpIMwUQUvoB/bZXs=";
}
}

View File

@@ -1,63 +0,0 @@
using System;
using Microsoft.Owin.Security;
using Microsoft.Owin.Security.Cookies;
using Microsoft.Owin.Security.OpenIdConnect;
using Orchard.Environment.Extensions;
using Orchard.Security;
using Orchard.Themes;
using System.Web;
using System.Web.Configuration;
using System.Web.Mvc;
using Orchard.Azure.Authentication.Services;
using Orchard.Logging;
namespace Orchard.Azure.Authentication.Controllers {
[Themed]
[OrchardSuppressDependency("Orchard.Users.Controllers.AccountController")]
public class AccountController : Controller {
public ILogger Logger { get; set; }
private readonly IAzureGraphiApiService _graphiApiService;
private readonly IAzureRolesPersistence _azureRolesPersistence;
public AccountController(IAzureGraphiApiService graphiApiService, IAzureRolesPersistence azureRolesPersistence) {
Logger = NullLogger.Instance;
_graphiApiService = graphiApiService;
_azureRolesPersistence = azureRolesPersistence;
}
public void LogOn() {
if (Request.IsAuthenticated) {
return; //TODO: redirect to home if we can?
}
var redirectUri = Url.Content("~/users/account/logoncallback");
HttpContext.GetOwinContext().Authentication.Challenge(new AuthenticationProperties {RedirectUri = redirectUri},
OpenIdConnectAuthenticationDefaults.AuthenticationType);
}
public void LogOff() {
HttpContext.GetOwinContext().Authentication.SignOut(
OpenIdConnectAuthenticationDefaults.AuthenticationType, CookieAuthenticationDefaults.AuthenticationType); //OpenID Connect sign-out request.
}
public ActionResult LogonCallback() {
var userName = HttpContext.GetOwinContext().Authentication.User.Identity.Name.Trim();
try {
var groups = _graphiApiService.GetUserGroups(userName);
_azureRolesPersistence.SyncAzureGroupsToOrchardRoles(userName, groups);
}
catch (Exception ex) {
Logger.Error(ex.Message, ex);
}
return Redirect(Url.Content("~/"));
}
[AlwaysAccessible]
public ActionResult AccessDenied() {
return View();
}
}
}

View File

@@ -1,21 +0,0 @@
using Orchard.ContentManagement;
using Orchard.ContentManagement.Drivers;
using Orchard.Azure.Authentication.Models;
namespace Orchard.Azure.Authentication.Drivers {
public class AzureSettingsPartDriver : ContentPartDriver<AzureSettingsPart> {
protected override string Prefix {
get { return "AzureSettings"; }
}
protected override DriverResult Editor(AzureSettingsPart part, dynamic shapeHelper) {
return ContentShape("Parts_AzureSettings_Edit", () =>
shapeHelper.EditorTemplate(TemplateName: "Parts/AzureSettings", Model: part, Prefix: Prefix)).OnGroup("Azure");
}
protected override DriverResult Editor(AzureSettingsPart part, IUpdateModel updater, dynamic shapeHelper) {
updater.TryUpdateModel(part, Prefix, null, null);
return Editor(part, shapeHelper);
}
}
}

View File

@@ -1,26 +0,0 @@
using Orchard.ContentManagement.Handlers;
using Orchard.ContentManagement;
using Orchard.Data;
using Orchard.Localization;
using Orchard.Azure.Authentication.Models;
namespace Orchard.Azure.Authentication.Handlers {
public class AzureSettingsPartHandler : ContentHandler {
public Localizer T { get; set; }
public AzureSettingsPartHandler() {
T= NullLocalizer.Instance;
Filters.Add(new ActivatingFilter<AzureSettingsPart>("Site"));
Filters.Add(new TemplateFilterForPart<AzureSettingsPart>("AzureSettings", "Parts/AzureSettings", "Azure Authentication"));
}
protected override void GetItemMetadata(GetContentItemMetadataContext context) {
if (context.ContentItem.ContentType != "Site") {
return;
}
base.GetItemMetadata(context);
context.Metadata.EditorGroupInfo.Add(new GroupInfo(T("Azure Authentication")));
}
}
}

View File

@@ -1,201 +0,0 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "{}"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright 2015 Radio Systems Corporation
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Some files were not shown because too many files have changed in this diff Show More