From 22590afbe68637819ce639a951b98f1bd7ae050a Mon Sep 17 00:00:00 2001
From: vfedosevich
Date: Mon, 18 May 2015 03:58:37 -0700
Subject: [PATCH 01/24] password feedback changes
---
.../Resources/UI.Designer.cs | 2 +-
.../Resources/UI.resx | 2 +-
.../App_Themes/Default/Styles/Skin.css | 71 +++++++++++++++++++
.../ExchangeContactGeneralSettings.ascx.resx | 2 +-
...zationDeletedUserGeneralSettings.ascx.resx | 2 +-
.../OrganizationUserGeneralSettings.ascx.resx | 2 +-
.../ExchangeContactGeneralSettings.ascx | 2 +-
...ngeContactGeneralSettings.ascx.designer.cs | 28 --------
.../ExchangeServer/ExchangeCreateMailbox.ascx | 2 +-
.../OrganizationCreateUser.ascx | 2 +-
...rganizationDeletedUserGeneralSettings.ascx | 2 +-
.../OrganizationUserGeneralSettings.ascx | 5 +-
.../UserControls/PasswordControl.ascx | 58 ++++++++++++++-
.../UserControls/PasswordControl.ascx.cs | 4 +-
.../PasswordControl.ascx.designer.cs | 31 +-------
.../JavaScript/jquery.poshytip.min.js | 7 ++
.../WebsitePanel.WebPortal.csproj | 1 +
17 files changed, 150 insertions(+), 73 deletions(-)
create mode 100644 WebsitePanel/Sources/WebsitePanel.WebPortal/JavaScript/jquery.poshytip.min.js
diff --git a/WebsitePanel/Sources/WebsitePanel.WebDavPortal/Resources/UI.Designer.cs b/WebsitePanel/Sources/WebsitePanel.WebDavPortal/Resources/UI.Designer.cs
index 4c1d4299..b093a75e 100644
--- a/WebsitePanel/Sources/WebsitePanel.WebDavPortal/Resources/UI.Designer.cs
+++ b/WebsitePanel/Sources/WebsitePanel.WebDavPortal/Resources/UI.Designer.cs
@@ -430,7 +430,7 @@ namespace WebsitePanel.WebDavPortal.Resources {
}
///
- /// Looks up a localized string similar to Initials.
+ /// Looks up a localized string similar to Middle Initial.
///
public static string Initials {
get {
diff --git a/WebsitePanel/Sources/WebsitePanel.WebDavPortal/Resources/UI.resx b/WebsitePanel/Sources/WebsitePanel.WebDavPortal/Resources/UI.resx
index 1f4ec733..f1a4390d 100644
--- a/WebsitePanel/Sources/WebsitePanel.WebDavPortal/Resources/UI.resx
+++ b/WebsitePanel/Sources/WebsitePanel.WebDavPortal/Resources/UI.resx
@@ -235,7 +235,7 @@
Info
- Initials
+ Middle InitialFile already exist
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Themes/Default/Styles/Skin.css b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Themes/Default/Styles/Skin.css
index 448cd1bb..8bb2fc07 100644
--- a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Themes/Default/Styles/Skin.css
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Themes/Default/Styles/Skin.css
@@ -379,4 +379,75 @@ p.warningText {font-size:14px; color:Red; text-align:center;}
}
.ui-menu-item:hover {
background-color: #f0f0f0;
+}
+
+
+
+.tip-bluesimple {
+ z-index:1000;
+ text-align:left;
+ border:1px solid #5e86aa;
+ border-radius:4px;
+ -moz-border-radius:4px;
+ -webkit-border-radius:4px;
+ min-width:50px;
+ max-width:300px;
+ color:#333;
+ background-color:#ffffff;
+ /**
+ * - If you set a background-image, border/padding/background-color will be ingnored.
+ * You can set any padding to .tip-inner instead if you need.
+ * - If you want a tiled background-image and border/padding for the tip,
+ * set the background-image to .tip-inner instead.
+ */
+}
+.tip-bluesimple .tip-inner {
+ font:12px/16px arial,helvetica,sans-serif;
+}
+
+/* Configure an arrow image - the script will automatically position it on the correct side of the tip */
+.tip-bluesimple .tip-arrow-top {
+ margin-top:-6px;
+ margin-left:-5px; /* approx. half the width to center it */
+ top:0;
+ left:50%;
+ width:9px;
+ height:6px;
+}
+.tip-bluesimple .tip-arrow-right {
+ margin-top:-4px; /* approx. half the height to center it */
+ margin-left:0;
+ top:50%;
+ left:100%;
+ width:6px;
+ height:9px;
+}
+.tip-bluesimple .tip-arrow-bottom {
+ margin-top:0;
+ margin-left:-5px; /* approx. half the width to center it */
+ top:100%;
+ left:50%;
+ width:9px;
+ height:6px;
+}
+.tip-bluesimple .tip-arrow-left {
+ margin-top:-3px; /* approx. half the height to center it */
+ margin-left:-6px;
+ top:50%;
+ left:0;
+ width:6px;
+ height:9px;
+}
+
+.popover-title {
+padding: 8px 14px;
+margin: 0 !important;
+font-size: 14px;
+background-color: #f7f7f7;
+border-bottom: 1px solid #ebebeb;
+border-radius: 5px 5px 0 0;
+}
+
+.popover-content {
+ padding:6px 8px;
}
\ No newline at end of file
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/App_LocalResources/ExchangeContactGeneralSettings.ascx.resx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/App_LocalResources/ExchangeContactGeneralSettings.ascx.resx
index ac4b01a6..6539dbf9 100644
--- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/App_LocalResources/ExchangeContactGeneralSettings.ascx.resx
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/App_LocalResources/ExchangeContactGeneralSettings.ascx.resx
@@ -163,7 +163,7 @@
Home Phone:
- Initials:
+ Middle Initial:Job Title:
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/App_LocalResources/OrganizationDeletedUserGeneralSettings.ascx.resx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/App_LocalResources/OrganizationDeletedUserGeneralSettings.ascx.resx
index 9180fb9b..c0313977 100644
--- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/App_LocalResources/OrganizationDeletedUserGeneralSettings.ascx.resx
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/App_LocalResources/OrganizationDeletedUserGeneralSettings.ascx.resx
@@ -157,7 +157,7 @@
Home Phone:
- Initials:
+ Middle Initial:Job Title:
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/App_LocalResources/OrganizationUserGeneralSettings.ascx.resx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/App_LocalResources/OrganizationUserGeneralSettings.ascx.resx
index ab9d05c4..97d921a2 100644
--- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/App_LocalResources/OrganizationUserGeneralSettings.ascx.resx
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/App_LocalResources/OrganizationUserGeneralSettings.ascx.resx
@@ -166,7 +166,7 @@
Home Phone:
- Initials:
+ Middle Initial:Job Title:
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/ExchangeContactGeneralSettings.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/ExchangeContactGeneralSettings.ascx
index 0958c36f..edd88567 100644
--- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/ExchangeContactGeneralSettings.ascx
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/ExchangeContactGeneralSettings.ascx
@@ -61,7 +61,7 @@
-
+
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/ExchangeContactGeneralSettings.ascx.designer.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/ExchangeContactGeneralSettings.ascx.designer.cs
index 30402103..12bec3b9 100644
--- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/ExchangeContactGeneralSettings.ascx.designer.cs
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/ExchangeContactGeneralSettings.ascx.designer.cs
@@ -1,31 +1,3 @@
-// Copyright (c) 2015, Outercurve Foundation.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following disclaimer in the documentation
-// and/or other materials provided with the distribution.
-//
-// - Neither the name of the Outercurve Foundation nor the names of its
-// contributors may be used to endorse or promote products derived from this
-// software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
//------------------------------------------------------------------------------
//
// This code was generated by a tool.
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/ExchangeCreateMailbox.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/ExchangeCreateMailbox.ascx
index 55926fa6..2a117368 100644
--- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/ExchangeCreateMailbox.ascx
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/ExchangeCreateMailbox.ascx
@@ -73,7 +73,7 @@
-
\ No newline at end of file
+
+
+
+<% if (ValidationEnabled)
+ {%>
+
+
+ Password must meet the following requirements:
+
+
+
+
<%= string.Format("Password should be at least {0} characters", MinimumLength) %>
+
+
<%= string.Format("Password should be maximum {0} characters", MaximumLength) %>
+
+
+ <% if (MinimumUppercase > 0)
+ {%>
+
<%= string.Format("Password should contain at least {0} UPPERCASE characters", MinimumUppercase) %>
+
+ <% }%>
+ <% if (MinimumNumbers > 0)
+ {%>
+
<%= string.Format("Password should contain at least {0} numbers", MinimumNumbers) %>
+
+ <% }%>
+ <% if (MinimumSymbols > 0)
+ {%>
+
<%= string.Format("Password should contain at least {0} non-alphanumeric symbols", MinimumSymbols) %>
+
+ <% }%>
+
+
+<% }%>
+
+
+
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/PasswordControl.ascx.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/PasswordControl.ascx.cs
index d297936e..c6879b35 100644
--- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/PasswordControl.ascx.cs
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/PasswordControl.ascx.cs
@@ -277,7 +277,9 @@ namespace WebsitePanel.Portal
return ((matches != null) && matches.length >= minMatches);
}
", true);
-
+
+
+ Page.ClientScript.RegisterClientScriptInclude("jqueryui-tooltip", ResolveUrl("~/JavaScript/jquery.poshytip.min.js"));
}
}
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/PasswordControl.ascx.designer.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/PasswordControl.ascx.designer.cs
index 113b3729..47c7e325 100644
--- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/PasswordControl.ascx.designer.cs
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/PasswordControl.ascx.designer.cs
@@ -1,38 +1,9 @@
-// Copyright (c) 2015, Outercurve Foundation.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following disclaimer in the documentation
-// and/or other materials provided with the distribution.
-//
-// - Neither the name of the Outercurve Foundation nor the names of its
-// contributors may be used to endorse or promote products derived from this
-// software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
//------------------------------------------------------------------------------
//
// This code was generated by a tool.
-// Runtime Version:2.0.50727.1873
//
// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
+// the code is regenerated.
//
//------------------------------------------------------------------------------
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/JavaScript/jquery.poshytip.min.js b/WebsitePanel/Sources/WebsitePanel.WebPortal/JavaScript/jquery.poshytip.min.js
new file mode 100644
index 00000000..e057cf26
--- /dev/null
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/JavaScript/jquery.poshytip.min.js
@@ -0,0 +1,7 @@
+/*
+ * Poshy Tip jQuery plugin v1.2
+ * http://vadikom.com/tools/poshy-tip-jquery-plugin-for-stylish-tooltips/
+ * Copyright 2010-2013, Vasil Dinkov, http://vadikom.com/
+ */
+
+(function(e){var a=[],d=/^url\(["']?([^"'\)]*)["']?\);?$/i,c=/\.png$/i,b=!!window.createPopup&&document.documentElement.currentStyle.minWidth=="undefined";function f(){e.each(a,function(){this.refresh(true)})}e(window).resize(f);e.Poshytip=function(h,g){this.$elm=e(h);this.opts=e.extend({},e.fn.poshytip.defaults,g);this.$tip=e(['
').css({border:0,padding:0,"background-image":"none","background-color":"transparent"}).find(".tip-bg-image").css("background-image",'url("'+l[1]+'")').end().find("td").eq(3).append(this.$inner)}if(i&&!e.support.opacity){this.opts.fade=false}}if(m&&!e.support.opacity){if(b&&c.test(m[1])){m=false;this.$arrow.css("background-image","none")}this.opts.fade=false}var o=this.$tip.find("> table.tip-table");if(b){this.$tip[0].style.width="";o.width("auto").find("td").eq(3).width("auto");var n=this.$tip.width(),j=parseInt(this.$tip.css("min-width")),g=parseInt(this.$tip.css("max-width"));if(!isNaN(j)&&ng){n=g}}this.$tip.add(o).width(n).eq(0).find("td").eq(3).width("100%")}else{if(o[0]){o.width("auto").find("td").eq(3).width("auto").end().end().width(document.defaultView&&document.defaultView.getComputedStyle&&parseFloat(document.defaultView.getComputedStyle(this.$tip[0],null).width)||this.$tip.width()).find("td").eq(3).width("100%")}}this.tipOuterW=this.$tip.outerWidth();this.tipOuterH=this.$tip.outerHeight();this.calcPos();if(m&&this.pos.arrow){this.$arrow[0].className="tip-arrow tip-arrow-"+this.pos.arrow;this.$arrow.css("visibility","inherit")}if(h&&this.opts.refreshAniDuration){this.asyncAnimating=true;var p=this;this.$tip.css(k).animate({left:this.pos.l,top:this.pos.t},this.opts.refreshAniDuration,function(){p.asyncAnimating=false})}else{this.$tip.css({left:this.pos.l,top:this.pos.t})}},display:function(h){var i=this.$tip.data("active");if(i&&!h||!i&&h){return}this.$tip.stop();if((this.opts.slide&&this.pos.arrow||this.opts.fade)&&(h&&this.opts.hideAniDuration||!h&&this.opts.showAniDuration)){var n={},m={};if(this.opts.slide&&this.pos.arrow){var l,g;if(this.pos.arrow=="bottom"||this.pos.arrow=="top"){l="top";g="bottom"}else{l="left";g="right"}var k=parseInt(this.$tip.css(l));n[l]=k+(h?0:(this.pos.arrow==g?-this.opts.slideOffset:this.opts.slideOffset));m[l]=k+(h?(this.pos.arrow==g?this.opts.slideOffset:-this.opts.slideOffset):0)+"px"}if(this.opts.fade){n.opacity=h?this.$tip.css("opacity"):0;m.opacity=h?0:this.opacity}this.$tip.css(n).animate(m,this.opts[h?"hideAniDuration":"showAniDuration"])}h?this.$tip.queue(e.proxy(this.reset,this)):this.$tip.css("visibility","inherit");if(i){var j=this.$elm.data("title.poshytip");if(j!==null){this.$elm.attr("title",j)}}this.$tip.data("active",!i)},disable:function(){this.reset();this.disabled=true},enable:function(){this.disabled=false},destroy:function(){this.reset();this.$tip.remove();delete this.$tip;this.content=null;this.$elm.unbind(".poshytip").removeData("title.poshytip").removeData("poshytip");a.splice(e.inArray(this,a),1)},clearTimeouts:function(){if(this.showTimeout){clearTimeout(this.showTimeout);this.showTimeout=0}if(this.hideTimeout){clearTimeout(this.hideTimeout);this.hideTimeout=0}},calcPos:function(){var n={l:0,t:0,arrow:""},h=e(window),k={l:h.scrollLeft(),t:h.scrollTop(),w:h.width(),h:h.height()},p,j,m,i,q,g;if(this.opts.alignTo=="cursor"){p=j=m=this.eventX;i=q=g=this.eventY}else{var o=this.$elm.offset(),l={l:o.left,t:o.top,w:this.$elm.outerWidth(),h:this.$elm.outerHeight()};p=l.l+(this.opts.alignX!="inner-right"?0:l.w);j=p+Math.floor(l.w/2);m=p+(this.opts.alignX!="inner-left"?l.w:0);i=l.t+(this.opts.alignY!="inner-bottom"?0:l.h);q=i+Math.floor(l.h/2);g=i+(this.opts.alignY!="inner-top"?l.h:0)}switch(this.opts.alignX){case"right":case"inner-left":n.l=m+this.opts.offsetX;if(this.opts.keepInViewport&&n.l+this.tipOuterW>k.l+k.w){n.l=k.l+k.w-this.tipOuterW}if(this.opts.alignX=="right"||this.opts.alignY=="center"){n.arrow="left"}break;case"center":n.l=j-Math.floor(this.tipOuterW/2);if(this.opts.keepInViewport){if(n.l+this.tipOuterW>k.l+k.w){n.l=k.l+k.w-this.tipOuterW}else{if(n.lk.t+k.h){n.t=i-this.tipOuterH-this.opts.offsetY;if(n.arrow=="top"){n.arrow="bottom"}}break;case"center":n.t=q-Math.floor(this.tipOuterH/2);if(this.opts.keepInViewport){if(n.t+this.tipOuterH>k.t+k.h){n.t=k.t+k.h-this.tipOuterH}else{if(n.t',"div.",j.className,"{visibility:hidden;position:absolute;top:0;left:0;}","div.",j.className," table.tip-table, div.",j.className," table.tip-table td{margin:0;font-family:inherit;font-size:inherit;font-weight:inherit;font-style:inherit;font-variant:inherit;vertical-align:middle;}","div.",j.className," td.tip-bg-image span{display:block;font:1px/1px sans-serif;height:",j.bgImageFrameSize,"px;width:",j.bgImageFrameSize,"px;overflow:hidden;}","div.",j.className," td.tip-right{background-position:100% 0;}","div.",j.className," td.tip-bottom{background-position:100% 100%;}","div.",j.className," td.tip-left{background-position:0 100%;}","div.",j.className," div.tip-inner{background-position:-",j.bgImageFrameSize,"px -",j.bgImageFrameSize,"px;}","div.",j.className," div.tip-arrow{visibility:hidden;position:absolute;overflow:hidden;font:1px/1px sans-serif;}",""].join("")).appendTo("head")}if(j.liveEvents&&j.showOn!="none"){var i,k=e.extend({},j,{liveEvents:false});switch(j.showOn){case"hover":i=function(){var m=e(this);if(!m.data("poshytip")){m.poshytip(k).poshytip("mouseenter")}};this.live?this.live("mouseenter.poshytip",i):e(document).delegate(this.selector,"mouseenter.poshytip",i);break;case"focus":i=function(){var m=e(this);if(!m.data("poshytip")){m.poshytip(k).poshytip("showDelayed")}};this.live?this.live("focus.poshytip",i):e(document).delegate(this.selector,"focus.poshytip",i);break}return this}return this.each(function(){new e.Poshytip(this,j)})};e.fn.poshytip.defaults={content:"[title]",className:"tip-yellow",bgImageFrameSize:10,showTimeout:500,hideTimeout:100,timeOnScreen:0,showOn:"hover",liveEvents:false,alignTo:"cursor",alignX:"right",alignY:"top",offsetX:-22,offsetY:18,keepInViewport:true,allowTipHover:true,followCursor:false,fade:true,slide:true,slideOffset:8,showAniDuration:300,hideAniDuration:300,refreshAniDuration:200}})(jQuery);
\ No newline at end of file
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/WebsitePanel.WebPortal.csproj b/WebsitePanel/Sources/WebsitePanel.WebPortal/WebsitePanel.WebPortal.csproj
index 385f2d7d..d0921a2f 100644
--- a/WebsitePanel/Sources/WebsitePanel.WebPortal/WebsitePanel.WebPortal.csproj
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/WebsitePanel.WebPortal.csproj
@@ -241,6 +241,7 @@
+
From 0ff8fa899600b5af21a0d8cf21b7df14f2693b0f Mon Sep 17 00:00:00 2001
From: Virtuworks
Date: Mon, 18 May 2015 11:04:01 -0400
Subject: [PATCH 02/24] Added tag build-2.1.0.726 for changeset 6208e4867779
From fc2abbd92cde3f5054bbb535b1bab57f91ff753d Mon Sep 17 00:00:00 2001
From: Virtuworks
Date: Mon, 18 May 2015 19:44:13 -0400
Subject: [PATCH 03/24] Added tag build-2.1.0.727 for changeset 853491dd56c4
From f34ff4f2c5366909b51179f4bcfe5ee82846fc3c Mon Sep 17 00:00:00 2001
From: McMak
Date: Tue, 19 May 2015 14:15:06 +0300
Subject: [PATCH 04/24] Installer: old to new update #1
---
.../Sources/Setup.WIXInstaller/Product.wxs | 6 +-
.../WebsitePanel.Setup/Internal/Adapter.cs | 17 +-
.../Internal/XmlDocumentMerge.cs | 146 +-
WebsitePanel/Database/wix_install_db.sql | 8 +-
WebsitePanel/Database/wix_update_db.sql | 2388 +++++++++++++----
5 files changed, 2056 insertions(+), 509 deletions(-)
diff --git a/WebsitePanel.Installer/Sources/Setup.WIXInstaller/Product.wxs b/WebsitePanel.Installer/Sources/Setup.WIXInstaller/Product.wxs
index 6d4f921b..ebf7abe3 100644
--- a/WebsitePanel.Installer/Sources/Setup.WIXInstaller/Product.wxs
+++ b/WebsitePanel.Installer/Sources/Setup.WIXInstaller/Product.wxs
@@ -596,13 +596,13 @@
-
+
-
+
-
+
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Setup/Internal/Adapter.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Setup/Internal/Adapter.cs
index ea1913ec..1c873917 100644
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Setup/Internal/Adapter.cs
+++ b/WebsitePanel.Installer/Sources/WebsitePanel.Setup/Internal/Adapter.cs
@@ -3928,6 +3928,13 @@ namespace WebsitePanel.Setup.Internal
{
try
{
+ XmlDocumentMerge.KeyAttributes = new List { "name", "id", "key", "pageID", "localName", "xmlns", "privatePath", "moduleDefinitionID", "ref", "verb;path", "controlRenderingCompatibilityVersion;clientIDMode" };
+ XmlDocumentMerge.FrozenAttributes = new List
+ {
+ new XmlDocumentMerge.FrozenAttrTag() { Path="configuration/microsoft.web.services3/security/securityTokenManager/add", Attributes = new List() {"localName"} },
+ new XmlDocumentMerge.FrozenAttrTag(true) { Path="compilation", Attributes = new List() {"targetFramework"} },
+ new XmlDocumentMerge.FrozenAttrTag() { Path="configuration/startup/supportedRuntime", Attributes = new List() {"version", "sku" } }
+ };
Log.WriteStart("RestoreXmlConfigs");
var Backup = BackupRestore.Find(Ctx.InstallerFolder, Global.DefaultProductName, Ctx.ComponentName);
switch(Ctx.ComponentCode)
@@ -3940,21 +3947,13 @@ namespace WebsitePanel.Setup.Internal
case Global.EntServer.ComponentCode:
{
Backup.XmlFiles.Add("Web.config");
+ Backup.XmlFiles.Add(@"bin\WebsitePanel.SchedulerService.exe.config");
}
break;
case Global.WebPortal.ComponentCode:
{
Backup.XmlFiles.Add("Web.config");
- Backup.XmlFiles.Add(@"App_Data\Countries.config");
- Backup.XmlFiles.Add(@"App_Data\CountryStates.config");
- Backup.XmlFiles.Add(@"App_Data\Ecommerce_Modules.config");
- Backup.XmlFiles.Add(@"App_Data\Ecommerce_Pages.config");
- Backup.XmlFiles.Add(@"App_Data\ESModule_ControlsHierarchy.config");
- Backup.XmlFiles.Add(@"App_Data\ModulesData.config");
Backup.XmlFiles.Add(@"App_Data\SiteSettings.config");
- Backup.XmlFiles.Add(@"App_Data\SupportedLocales.config");
- Backup.XmlFiles.Add(@"App_Data\SupportedThemes.config");
- Backup.XmlFiles.Add(@"App_Data\WebsitePanel_Modules.config");
Backup.XmlFiles.Add(@"App_Data\WebsitePanel_Pages.config");
}
break;
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Setup/Internal/XmlDocumentMerge.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Setup/Internal/XmlDocumentMerge.cs
index 4c4511c4..50a10dce 100644
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Setup/Internal/XmlDocumentMerge.cs
+++ b/WebsitePanel.Installer/Sources/WebsitePanel.Setup/Internal/XmlDocumentMerge.cs
@@ -8,14 +8,46 @@ namespace WebsitePanel.Setup.Internal
{
public static class XmlDocumentMerge
{
+ public class AttrTag
+ {
+ public AttrTag()
+ : this(null)
+ {
+
+ }
+ public AttrTag(params string[] Attributes)
+ {
+ this.Attributes = Attributes;
+ Priority = Attributes == null ? 0 : (ulong)Attributes.LongLength;
+ }
+ public ulong Priority { get; private set; }
+ public string[] Attributes;
+ }
+ public class FrozenAttrTag
+ {
+ public FrozenAttrTag()
+ : this(false)
+ {
+
+ }
+ public FrozenAttrTag(bool Relative)
+ {
+ IsRelative = Relative;
+ }
+ public string Path { get; set; }
+ public IList Attributes { get; set; }
+ public bool IsRelative { get; private set; }
+ }
const string SuccessFormat = "Success: {0}.";
const string ErrorFormat = "Error: {0}.";
const string MergeCompleted = "XmlDocumentMerge completed";
static XmlDocumentMerge()
{
- KeyAttributes = new List { "name", "id", "key" };
+ KeyAttributes = new List();
+ FrozenAttributes = new List();
}
- public static List KeyAttributes { get; set; }
+ public static IList KeyAttributes { get; set; }
+ public static IList FrozenAttributes { get; set; }
public static string Process(string Src, string Dst, string SaveTo = "")
{
var Result = string.Empty;
@@ -83,57 +115,97 @@ namespace WebsitePanel.Setup.Internal
}
private static string NodeView(XPathNavigator Navi)
{
- foreach (var Attr in KeyAttributes)
+ foreach (var Item in GetProcessingChain(KeyAttributes))
{
- var Value = Navi.GetAttribute(Attr, string.Empty);
- if (!string.IsNullOrWhiteSpace(Value))
- return string.Format("{0}[@{1}='{2}']", Navi.Name, Attr, Value);
+ string Result = string.Empty;
+ foreach (var Attr in Item.Attributes)
+ {
+ var Value = Navi.GetAttribute(Attr, string.Empty);
+ if (string.IsNullOrWhiteSpace(Value))
+ {
+ Result = string.Empty;
+ continue;
+ }
+ else
+ {
+ if (string.IsNullOrWhiteSpace(Result))
+ Result = string.Format("@{0}='{1}'", Attr, Value);
+ else
+ Result = string.Format("{0} and @{1}='{2}'", Result, Attr, Value);
+ }
+ }
+ if (!string.IsNullOrWhiteSpace(Result))
+ return string.Format("{0}[{1}]", Navi.Name, Result);
}
return Navi.Name;
}
private static void Merge(XPathNavigator DstNavi, XmlDocument SrcDoc, string Parent)
{
- if (DstNavi.NodeType == XPathNodeType.Element)
+ var Current = NodePath(Parent, NodeView(DstNavi));
+ if (!string.IsNullOrWhiteSpace(Current))
{
- var SrcElem = SrcDoc.SelectSingleNode(NodePath(Parent, NodeView(DstNavi)));
- if (SrcElem != null)
+ if (DstNavi.NodeType == XPathNodeType.Element)
{
- if (DstNavi.MoveToFirstAttribute())
+ var SrcElem = SrcDoc.SelectSingleNode(Current);
+ if (SrcElem != null)
{
- do
+ var Frozen = GetFrozenAttributes(Current, FrozenAttributes);
+ if (DstNavi.MoveToFirstAttribute())
{
- var SrcElemAttr = SrcElem.Attributes[DstNavi.LocalName];
- if (SrcElemAttr != null)
- DstNavi.SetValue(SrcElemAttr.Value);
+ do
+ {
+ var SrcElemAttr = SrcElem.Attributes[DstNavi.LocalName];
+ if (SrcElemAttr != null && CanProcess(DstNavi.LocalName, Frozen))
+ DstNavi.SetValue(SrcElemAttr.Value);
+ }
+ while (DstNavi.MoveToNextAttribute());
+ DstNavi.MoveToParent();
}
- while (DstNavi.MoveToNextAttribute());
- DstNavi.MoveToParent();
}
}
- }
- else if (DstNavi.NodeType == XPathNodeType.Text)
- {
- var SrcElem = SrcDoc.SelectSingleNode(NodePath(Parent, NodeView(DstNavi)));
- if (SrcElem != null)
- DstNavi.SetValue(SrcElem.InnerText);
- }
- var Here = NodeView(DstNavi);
- if (DstNavi.MoveToFirstChild())
- {
- do
+ else if (DstNavi.NodeType == XPathNodeType.Text)
{
- Merge(DstNavi, SrcDoc, NodePath(Parent, Here));
+ var SrcElem = SrcDoc.SelectSingleNode(Current);
+ if (SrcElem != null)
+ DstNavi.SetValue(SrcElem.InnerText);
+ }
+ if (DstNavi.MoveToFirstChild())
+ {
+ do
+ {
+ Merge(DstNavi, SrcDoc, Current);
+ }
+ while (DstNavi.MoveToNext());
+ DstNavi.MoveToParent();
+ }
+ else if (DstNavi.NodeType == XPathNodeType.Element)
+ {
+ var SrcElem = SrcDoc.SelectSingleNode(Current);
+ if (SrcElem != null && !string.IsNullOrWhiteSpace(SrcElem.InnerXml))
+ foreach (XmlNode Child in SrcElem.ChildNodes)
+ DstNavi.AppendChild(Child.CloneNode(true).CreateNavigator());
}
- while (DstNavi.MoveToNext());
- DstNavi.MoveToParent();
- }
- else if (DstNavi.NodeType == XPathNodeType.Element)
- {
- var SrcElem = SrcDoc.SelectSingleNode(NodePath(Parent, Here));
- if (SrcElem != null && !string.IsNullOrWhiteSpace(SrcElem.InnerXml))
- foreach (XmlNode Child in SrcElem.ChildNodes)
- DstNavi.AppendChild(Child.CloneNode(true).CreateNavigator());
}
}
+ private static IList GetProcessingChain(IEnumerable Attributes)
+ {
+ var Delimiter = ";";
+ var Chain = new List();
+ foreach (var Attribute in Attributes)
+ Chain.Add(new AttrTag(Attribute.Split(new string[] { Delimiter }, StringSplitOptions.RemoveEmptyEntries)));
+ Chain.Sort(delegate(AttrTag a, AttrTag b) { return a.Priority == b.Priority ? 0 : a.Priority > b.Priority ? -1 : 1; });
+ return Chain;
+ }
+ private static FrozenAttrTag GetFrozenAttributes(string Path, IEnumerable Frozens)
+ {
+ foreach (var Frozen in Frozens)
+ if (Frozen.IsRelative ? Path.IndexOf(Frozen.Path, 1) == -1 : Path.StartsWith(Frozen.Path))
+ return Frozen;
+ return null;
+ }
+ private static bool CanProcess(string Name, FrozenAttrTag Frozen)
+ {
+ return Frozen == null ? true : !Frozen.Attributes.Contains(Name);
+ }
}
}
diff --git a/WebsitePanel/Database/wix_install_db.sql b/WebsitePanel/Database/wix_install_db.sql
index a058e413..01122d13 100644
--- a/WebsitePanel/Database/wix_install_db.sql
+++ b/WebsitePanel/Database/wix_install_db.sql
@@ -44364,7 +44364,7 @@ Hello #user.FirstName#,
-Please, find below details of your control panel account.
+Please, find below details of your control panel account. The one time password was generated for you. You should change the password after login.
Control Panel URL
@@ -44373,7 +44373,7 @@ Please, find below details of your control panel account.
Control Panel URL
Username
-
Password
+
One Time Password
@@ -44411,11 +44411,11 @@ INSERT [dbo].[UserSettings] ([UserID], [SettingsName], [PropertyName], [Property
Hello #user.FirstName#,
-Please, find below details of your control panel account.
+Please, find below details of your control panel account. The one time password was generated for you. You should change the password after login.
Control Panel URL: http://panel.AcmeHosting.com
Username: #user.Username#
-Password: #user.Password#
+One Time Password: #user.Password#
If you have any questions regarding your hosting account, feel free to contact our support department at any time.
diff --git a/WebsitePanel/Database/wix_update_db.sql b/WebsitePanel/Database/wix_update_db.sql
index 4131b41b..deb9d711 100644
--- a/WebsitePanel/Database/wix_update_db.sql
+++ b/WebsitePanel/Database/wix_update_db.sql
@@ -73,7 +73,7 @@ GO
-ALTER PROCEDURE [dbo].[AddExchangeMailboxPlan]
+ALTER PROCEDURE [dbo].[AddExchangeMailboxPlan]
(
@MailboxPlanId int OUTPUT,
@ItemID int,
@@ -181,7 +181,7 @@ GO
-ALTER PROCEDURE [dbo].[UpdateExchangeMailboxPlan]
+ALTER PROCEDURE [dbo].[UpdateExchangeMailboxPlan]
(
@MailboxPlanId int,
@MailboxPlan nvarchar(300),
@@ -229,19 +229,19 @@ UPDATE ExchangeMailboxPlans SET
MailboxPlanType = @MailboxPlanType,
AllowLitigationHold = @AllowLitigationHold,
RecoverableItemsWarningPct = @RecoverableItemsWarningPct,
- RecoverableItemsSpace = @RecoverableItemsSpace,
+ RecoverableItemsSpace = @RecoverableItemsSpace,
LitigationHoldUrl = @LitigationHoldUrl,
LitigationHoldMsg = @LitigationHoldMsg
WHERE MailboxPlanId = @MailboxPlanId
RETURN
-
+
GO
-ALTER PROCEDURE [dbo].[GetExchangeMailboxPlan]
+ALTER PROCEDURE [dbo].[GetExchangeMailboxPlan]
(
@MailboxPlanId int
)
@@ -281,7 +281,7 @@ GO
-ALTER PROCEDURE [dbo].[GetExchangeOrganizationStatistics]
+ALTER PROCEDURE [dbo].[GetExchangeOrganizationStatistics]
(
@ItemID int
)
@@ -296,7 +296,7 @@ SELECT
(SELECT COUNT(*) FROM ExchangeAccounts WHERE AccountType = 4 AND ItemID = @ItemID) AS CreatedPublicFolders,
(SELECT COUNT(*) FROM ExchangeOrganizationDomains WHERE ItemID = @ItemID) AS CreatedDomains,
(SELECT MIN(B.MailboxSizeMB) FROM ExchangeAccounts AS A INNER JOIN ExchangeMailboxPlans AS B ON A.MailboxPlanId = B.MailboxPlanId WHERE A.ItemID=@ItemID) AS UsedDiskSpace,
- (SELECT MIN(B.RecoverableItemsSpace) FROM ExchangeAccounts AS A INNER JOIN ExchangeMailboxPlans AS B ON A.MailboxPlanId = B.MailboxPlanId WHERE A.ItemID=@ItemID) AS UsedLitigationHoldSpace
+ (SELECT MIN(B.RecoverableItemsSpace) FROM ExchangeAccounts AS A INNER JOIN ExchangeMailboxPlans AS B ON A.MailboxPlanId = B.MailboxPlanId WHERE A.ItemID=@ItemID) AS UsedLitigationHoldSpace
END
ELSE
BEGIN
@@ -307,7 +307,7 @@ SELECT
(SELECT COUNT(*) FROM ExchangeAccounts WHERE AccountType = 4 AND ItemID = @ItemID) AS CreatedPublicFolders,
(SELECT COUNT(*) FROM ExchangeOrganizationDomains WHERE ItemID = @ItemID) AS CreatedDomains,
(SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS A INNER JOIN ExchangeMailboxPlans AS B ON A.MailboxPlanId = B.MailboxPlanId WHERE A.ItemID=@ItemID) AS UsedDiskSpace,
- (SELECT SUM(B.RecoverableItemsSpace) FROM ExchangeAccounts AS A INNER JOIN ExchangeMailboxPlans AS B ON A.MailboxPlanId = B.MailboxPlanId WHERE A.ItemID=@ItemID) AS UsedLitigationHoldSpace
+ (SELECT SUM(B.RecoverableItemsSpace) FROM ExchangeAccounts AS A INNER JOIN ExchangeMailboxPlans AS B ON A.MailboxPlanId = B.MailboxPlanId WHERE A.ItemID=@ItemID) AS UsedLitigationHoldSpace
END
@@ -384,7 +384,7 @@ EXEC sp_xml_preparedocument @idoc OUTPUT, @xml
-- Execute a SELECT statement that uses the OPENXML rowset provider.
DELETE FROM ServiceProperties
-WHERE ServiceID = @ServiceID
+WHERE ServiceID = @ServiceID
AND PropertyName COLLATE Latin1_General_CI_AS IN
(
SELECT PropertyName
@@ -402,7 +402,7 @@ SELECT
@ServiceID,
PropertyName,
PropertyValue
-FROM OPENXML(@idoc, '/properties/property',1) WITH
+FROM OPENXML(@idoc, '/properties/property',1) WITH
(
PropertyName nvarchar(50) '@name',
PropertyValue nvarchar(1000) '@value'
@@ -412,7 +412,7 @@ FROM OPENXML(@idoc, '/properties/property',1) WITH
exec sp_xml_removedocument @idoc
COMMIT TRAN
-RETURN
+RETURN
GO
IF NOT EXISTS (SELECT * FROM [dbo].[Providers] WHERE [DisplayName] = 'Hosted MS CRM 2011')
@@ -462,8 +462,8 @@ END
GO
-------------------------------- Scheduler Service------------------------------------------------------
-IF EXISTS( SELECT * FROM INFORMATION_SCHEMA.COLUMNS
- WHERE TABLE_NAME = 'Schedule'
+IF EXISTS( SELECT * FROM INFORMATION_SCHEMA.COLUMNS
+ WHERE TABLE_NAME = 'Schedule'
AND COLUMN_NAME = 'LastFinish')
ALTER TABLE Schedule
DROP COLUMN LastFinish
@@ -583,7 +583,7 @@ SELECT
FROM Schedule AS S
INNER JOIN PackagesTree(@PackageID, @Recursive) AS PT ON S.PackageID = PT.PackageID
ORDER BY S.Enabled DESC, S.NextRun
-
+
-- select schedules
SELECT
@@ -653,9 +653,17 @@ RAISERROR('You are not allowed to access this package', 16, 1)
DECLARE @condition nvarchar(400)
SET @condition = ' 1 = 1 '
-IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
-AND @FilterValue <> '' AND @FilterValue IS NOT NULL
-SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
+IF @FilterValue <> '' AND @FilterValue IS NOT NULL
+BEGIN
+ IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
+ SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
+ ELSE
+ SET @condition = @condition + '
+ AND (ScheduleName LIKE ''' + @FilterValue + '''
+ OR Username LIKE ''' + @FilterValue + '''
+ OR FullName LIKE ''' + @FilterValue + '''
+ OR Email LIKE ''' + @FilterValue + ''')'
+END
IF @SortColumn IS NULL OR @SortColumn = ''
SET @SortColumn = 'S.ScheduleName ASC'
@@ -711,7 +719,7 @@ SELECT
-- packages
P.PackageID,
P.PackageName,
-
+
-- user
P.UserID,
U.Username,
@@ -783,7 +791,7 @@ SET
WeekMonthDay = @WeekMonthDay
WHERE
ScheduleID = @ScheduleID
-
+
DECLARE @idoc int
--Create an internal representation of the XML document.
EXEC sp_xml_preparedocument @idoc OUTPUT, @XmlParameters
@@ -802,7 +810,7 @@ SELECT
@ScheduleID,
ParameterID,
ParameterValue
-FROM OPENXML(@idoc, '/parameters/parameter',1) WITH
+FROM OPENXML(@idoc, '/parameters/parameter',1) WITH
(
ParameterID nvarchar(50) '@id',
ParameterValue nvarchar(3000) '@value'
@@ -1008,7 +1016,7 @@ SELECT TOP 1
FROM BackgroundTasks AS T
INNER JOIN BackgroundTaskStack AS TS
ON TS.TaskId = T.ID
-WHERE T.TaskID = @TaskID
+WHERE T.TaskID = @TaskID
GO
IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetBackgroundTasks')
@@ -1031,7 +1039,7 @@ AS
inner join Users C on P.id = C.OwnerID
)
-SELECT
+SELECT
T.ID,
T.Guid,
T.TaskID,
@@ -1381,7 +1389,7 @@ DROP PROCEDURE GetProcessBackgroundTasks
GO
CREATE PROCEDURE [dbo].[GetProcessBackgroundTasks]
-(
+(
@Status INT
)
AS
@@ -1507,7 +1515,7 @@ SELECT
FROM
ExchangeDisclaimers
WHERE
- ItemID = @ItemID
+ ItemID = @ItemID
ORDER BY DisclaimerName
RETURN'
END
@@ -1533,7 +1541,7 @@ GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE type_desc = N'SQL_STORED_PROCEDURE' AND name = N'UpdateExchangeDisclaimer')
BEGIN
-EXEC sp_executesql N' CREATE PROCEDURE [dbo].[UpdateExchangeDisclaimer]
+EXEC sp_executesql N' CREATE PROCEDURE [dbo].[UpdateExchangeDisclaimer]
(
@ExchangeDisclaimerId int,
@DisclaimerName nvarchar(300),
@@ -1555,7 +1563,7 @@ GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE type_desc = N'SQL_STORED_PROCEDURE' AND name = N'AddExchangeDisclaimer')
BEGIN
-EXEC sp_executesql N'CREATE PROCEDURE [dbo].[AddExchangeDisclaimer]
+EXEC sp_executesql N'CREATE PROCEDURE [dbo].[AddExchangeDisclaimer]
(
@ExchangeDisclaimerId int OUTPUT,
@ItemID int,
@@ -1588,7 +1596,7 @@ GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE type_desc = N'SQL_STORED_PROCEDURE' AND name = N'GetExchangeDisclaimer')
BEGIN
-EXEC sp_executesql N'CREATE PROCEDURE [dbo].[GetExchangeDisclaimer]
+EXEC sp_executesql N'CREATE PROCEDURE [dbo].[GetExchangeDisclaimer]
(
@ExchangeDisclaimerId int
)
@@ -1621,7 +1629,7 @@ Go
IF NOT EXISTS (SELECT * FROM sys.objects WHERE type_desc = N'SQL_STORED_PROCEDURE' AND name = N'SetExchangeAccountDisclaimerId')
BEGIN
-EXEC sp_executesql N' CREATE PROCEDURE [dbo].[SetExchangeAccountDisclaimerId]
+EXEC sp_executesql N' CREATE PROCEDURE [dbo].[SetExchangeAccountDisclaimerId]
(
@AccountID int,
@ExchangeDisclaimerId int
@@ -1637,7 +1645,7 @@ GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE type_desc = N'SQL_STORED_PROCEDURE' AND name = N'GetExchangeAccountDisclaimerId')
BEGIN
-EXEC sp_executesql N'CREATE PROCEDURE [dbo].[GetExchangeAccountDisclaimerId]
+EXEC sp_executesql N'CREATE PROCEDURE [dbo].[GetExchangeAccountDisclaimerId]
(
@AccountID int
)
@@ -1653,10 +1661,10 @@ END
GO
--- add Disclaimers Quota
+-- add Disclaimers Quota
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE ([QuotaName] = N'Exchange2007.DisclaimersAllowed'))
BEGIN
-INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota]) VALUES (422, 12, 26, N'Exchange2007.DisclaimersAllowed', N'Disclaimers Allowed', 1, 0, NULL, NULL)
+INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota]) VALUES (422, 12, 26, N'Exchange2007.DisclaimersAllowed', N'Disclaimers Allowed', 1, 0, NULL, NULL)
END
GO
@@ -1665,13 +1673,13 @@ GO
--BEGIN
--INSERT [dbo].[Quotas] ([QuotaID], [GroupID],[QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota]) VALUES (423, 13, 5, N'HostedSolution.SecurityGroupManagement', N'Allow Security Group Management', 1, 0, NULL, NULL)
--END
---GO
+--GO
-- Lync Enterprise Voice
IF NOT EXISTS(select 1 from sys.columns COLS INNER JOIN sys.objects OBJS ON OBJS.object_id=COLS.object_id and OBJS.type='U' AND OBJS.name='LyncUserPlans' AND COLS.name='TelephonyVoicePolicy')
BEGIN
-ALTER TABLE [dbo].[LyncUserPlans] ADD
+ALTER TABLE [dbo].[LyncUserPlans] ADD
[RemoteUserAccess] [bit] NOT NULL DEFAULT 0,
[PublicIMConnectivity] [bit] NOT NULL DEFAULT 0,
@@ -1690,7 +1698,7 @@ ALTER TABLE [dbo].[LyncUserPlans] ADD
END
Go
---
+--
DROP PROCEDURE GetLyncUserPlan;
@@ -1722,7 +1730,7 @@ GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE type_desc = N'SQL_STORED_PROCEDURE' AND name = N'UpdateLyncUserPlan')
BEGIN
-EXEC sp_executesql N' CREATE PROCEDURE [dbo].[UpdateLyncUserPlan]
+EXEC sp_executesql N' CREATE PROCEDURE [dbo].[UpdateLyncUserPlan]
(
@LyncUserPlanId int,
@LyncUserPlanName nvarchar(300),
@@ -1744,9 +1752,9 @@ EXEC sp_executesql N' CREATE PROCEDURE [dbo].[UpdateLyncUserPlan]
@Telephony int,
@ServerURI nvarchar(300),
-
+
@ArchivePolicy nvarchar(300),
-
+
@TelephonyDialPlanPolicy nvarchar(300),
@TelephonyVoicePolicy nvarchar(300)
)
@@ -1772,7 +1780,7 @@ UPDATE LyncUserPlans SET
Telephony = @Telephony,
ServerURI = @ServerURI,
-
+
ArchivePolicy = @ArchivePolicy,
TelephonyDialPlanPolicy = @TelephonyDialPlanPolicy,
TelephonyVoicePolicy = @TelephonyVoicePolicy
@@ -1788,7 +1796,7 @@ GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE type_desc = N'SQL_STORED_PROCEDURE' AND name = N'AddLyncUserPlan')
BEGIN
-EXEC sp_executesql N'CREATE PROCEDURE [dbo].[AddLyncUserPlan]
+EXEC sp_executesql N'CREATE PROCEDURE [dbo].[AddLyncUserPlan]
(
@LyncUserPlanId int OUTPUT,
@ItemID int,
@@ -1811,7 +1819,7 @@ EXEC sp_executesql N'CREATE PROCEDURE [dbo].[AddLyncUserPlan]
@Telephony int,
@ServerURI nvarchar(300),
-
+
@ArchivePolicy nvarchar(300),
@TelephonyDialPlanPolicy nvarchar(300),
@TelephonyVoicePolicy nvarchar(300)
@@ -1856,7 +1864,7 @@ INSERT INTO LyncUserPlans
Telephony,
ServerURI,
-
+
ArchivePolicy,
TelephonyDialPlanPolicy,
TelephonyVoicePolicy
@@ -1884,7 +1892,7 @@ VALUES
@Telephony,
@ServerURI,
-
+
@ArchivePolicy,
@TelephonyDialPlanPolicy,
@TelephonyVoicePolicy
@@ -1893,7 +1901,7 @@ VALUES
SET @LyncUserPlanId = SCOPE_IDENTITY()
-RETURN'
+RETURN'
END
GO
@@ -1902,7 +1910,7 @@ GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE type_desc = N'SQL_STORED_PROCEDURE' AND name = N'GetLyncUserPlan')
BEGIN
-EXEC sp_executesql N'CREATE PROCEDURE [dbo].[GetLyncUserPlan]
+EXEC sp_executesql N'CREATE PROCEDURE [dbo].[GetLyncUserPlan]
(
@LyncUserPlanId int
)
@@ -1929,7 +1937,7 @@ SELECT
Telephony,
ServerURI,
-
+
ArchivePolicy,
TelephonyDialPlanPolicy,
TelephonyVoicePolicy
@@ -1946,7 +1954,7 @@ GO
-ALTER PROCEDURE [dbo].[GetLyncUserPlan]
+ALTER PROCEDURE [dbo].[GetLyncUserPlan]
(
@LyncUserPlanId int
)
@@ -1973,7 +1981,7 @@ SELECT
Telephony,
ServerURI,
-
+
ArchivePolicy,
TelephonyDialPlanPolicy,
TelephonyVoicePolicy
@@ -2068,13 +2076,13 @@ AS
INNER JOIN PackagesTreeCache AS PT ON PIP.PackageID = PT.PackageID
WHERE PT.ParentPackageID = @PackageID AND IP.PoolID = 3)
ELSE IF @QuotaID = 319 -- BB Users
- SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
+ SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
INNER JOIN BlackBerryUsers bu ON ea.AccountID = bu.AccountID
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE pt.ParentPackageID = @PackageID)
ELSE IF @QuotaID = 320 -- OCS Users
- SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
+ SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
INNER JOIN OCSUsers ocs ON ea.AccountID = ocs.AccountID
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
@@ -2088,12 +2096,12 @@ AS
SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts AS ea
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
- WHERE pt.ParentPackageID = @PackageID
+ WHERE pt.ParentPackageID = @PackageID
AND ea.AccountType IN (1)
AND ea.MailboxPlanId IS NOT NULL)
ELSE IF @QuotaID = 77 -- Exchange2007.DiskSpace
- SET @Result = (SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS ea
- INNER JOIN ExchangeMailboxPlans AS B ON ea.MailboxPlanId = B.MailboxPlanId
+ SET @Result = (SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS ea
+ INNER JOIN ExchangeMailboxPlans AS B ON ea.MailboxPlanId = B.MailboxPlanId
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE pt.ParentPackageID = @PackageID)
@@ -2255,11 +2263,11 @@ IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
AND @FilterValue <> '' AND @FilterValue IS NOT NULL
BEGIN
IF @FilterColumn = 'PrimaryEmailAddress' AND @AccountTypes <> '2'
- BEGIN
+ BEGIN
SET @condition = @condition + ' AND EA.AccountID IN (SELECT EAEA.AccountID FROM ExchangeAccountEmailAddresses EAEA WHERE EAEA.EmailAddress LIKE ''' + @FilterValue + ''')'
END
ELSE
- BEGIN
+ BEGIN
SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
END
END
@@ -2278,7 +2286,7 @@ SELECT
EA.PrimaryEmailAddress,
EA.MailEnabledPublicFolder,
EA.MailboxPlanId,
- P.MailboxPlan,
+ P.MailboxPlan,
EA.SubscriberNumber,
EA.UserPrincipalName
FROM
@@ -2418,7 +2426,7 @@ GO
IF NOT EXISTS (SELECT * FROM [dbo].[Providers] WHERE [DisplayName] = 'Remote Desktop Services Windows 2012')
BEGIN
-INSERT [dbo].[Providers] ([ProviderId], [GroupId], [ProviderName], [DisplayName], [ProviderType], [EditorControl], [DisableAutoDiscovery])
+INSERT [dbo].[Providers] ([ProviderId], [GroupId], [ProviderName], [DisplayName], [ProviderType], [EditorControl], [DisableAutoDiscovery])
VALUES(1501, 45, N'RemoteDesktopServices2012', N'Remote Desktop Services Windows 2012', N'WebsitePanel.Providers.RemoteDesktopServices.Windows2012,WebsitePanel.Providers.RemoteDesktopServices.Windows2012', N'RDS', 1)
END
GO
@@ -2450,7 +2458,7 @@ BEGIN
-- delete
DELETE FROM PackageIPAddresses
FROM PackageIPAddresses AS PIP
- INNER JOIN OPENXML(@idoc, '/items/item', 1) WITH
+ INNER JOIN OPENXML(@idoc, '/items/item', 1) WITH
(
AddressID int '@id'
) as PV ON PIP.AddressID = PV.AddressID
@@ -2458,17 +2466,17 @@ BEGIN
-- insert
INSERT INTO dbo.PackageIPAddresses
- (
+ (
PackageID,
OrgID,
- AddressID
+ AddressID
)
- SELECT
+ SELECT
@PackageID,
@OrgID,
AddressID
- FROM OPENXML(@idoc, '/items/item', 1) WITH
+ FROM OPENXML(@idoc, '/items/item', 1) WITH
(
AddressID int '@id'
) as PV
@@ -2504,9 +2512,18 @@ AND (@PoolID = 0 OR @PoolID <> 0 AND IP.PoolID = @PoolID)
AND (@OrgID = 0 OR @OrgID <> 0 AND PA.OrgID = @OrgID)
'
-IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
-AND @FilterValue <> '' AND @FilterValue IS NOT NULL
-SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
+IF @FilterValue <> '' AND @FilterValue IS NOT NULL
+BEGIN
+ IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
+ SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
+ ELSE
+ SET @condition = @condition + '
+ AND (ExternalIP LIKE ''' + @FilterValue + '''
+ OR InternalIP LIKE ''' + @FilterValue + '''
+ OR DefaultGateway LIKE ''' + @FilterValue + '''
+ OR ItemName LIKE ''' + @FilterValue + '''
+ OR Username LIKE ''' + @FilterValue + ''')'
+END
IF @SortColumn IS NULL OR @SortColumn = ''
SET @SortColumn = 'IP.ExternalIP ASC'
@@ -2650,13 +2667,13 @@ GO
BEGIN
UPDATE [dbo].[CRMUsers]
- SET
- CALType = 0 WHERE CALType IS NULL
+ SET
+ CALType = 0 WHERE CALType IS NULL
END
GO
-ALTER PROCEDURE [dbo].[InsertCRMUser]
+ALTER PROCEDURE [dbo].[InsertCRMUser]
(
@ItemID int,
@CrmUserID uniqueidentifier,
@@ -2675,14 +2692,14 @@ INSERT INTO
BusinessUnitID,
CALType
)
-VALUES
+VALUES
(
- @ItemID,
+ @ItemID,
@CrmUserID,
@BusinessUnitID,
@CALType
)
-
+
END
GO
@@ -2701,15 +2718,15 @@ BEGIN
UPDATE [dbo].[CRMUsers]
- SET
+ SET
CALType = @CALType
WHERE AccountID = @ItemID
-
+
END
GO
-ALTER PROCEDURE [dbo].[GetCRMUsersCount]
+ALTER PROCEDURE [dbo].[GetCRMUsersCount]
(
@ItemID int,
@Name nvarchar(400),
@@ -2729,15 +2746,15 @@ BEGIN
SET @Email = '%'
END
-SELECT
- COUNT(ea.AccountID)
-FROM
- ExchangeAccounts ea
-INNER JOIN
- CRMUsers cu
-ON
+SELECT
+ COUNT(ea.AccountID)
+FROM
+ ExchangeAccounts ea
+INNER JOIN
+ CRMUsers cu
+ON
ea.AccountID = cu.AccountID
-WHERE
+WHERE
ea.ItemID = @ItemID AND ea.DisplayName LIKE @Name AND ea.PrimaryEmailAddress LIKE @Email
AND ((cu.CALType = @CALType) OR (@CALType = -1))
END
@@ -2783,17 +2800,17 @@ CREATE PROCEDURE [dbo].[GetPackageIPAddressesCount]
AS
BEGIN
-SELECT
+SELECT
COUNT(PA.PackageAddressID)
-FROM
+FROM
dbo.PackageIPAddresses PA
-INNER JOIN
+INNER JOIN
dbo.IPAddresses AS IP ON PA.AddressID = IP.AddressID
-INNER JOIN
+INNER JOIN
dbo.Packages P ON PA.PackageID = P.PackageID
-INNER JOIN
+INNER JOIN
dbo.Users U ON U.UserID = P.UserID
-LEFT JOIN
+LEFT JOIN
ServiceItems SI ON PA.ItemId = SI.ItemID
WHERE
(@PoolID = 0 OR @PoolID <> 0 AND IP.PoolID = @PoolID)
@@ -2901,13 +2918,13 @@ AS
INNER JOIN PackagesTreeCache AS PT ON PIP.PackageID = PT.PackageID
WHERE PT.ParentPackageID = @PackageID AND IP.PoolID = 3)
ELSE IF @QuotaID = 319 -- BB Users
- SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
+ SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
INNER JOIN BlackBerryUsers bu ON ea.AccountID = bu.AccountID
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE pt.ParentPackageID = @PackageID)
ELSE IF @QuotaID = 320 -- OCS Users
- SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
+ SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
INNER JOIN OCSUsers ocs ON ea.AccountID = ocs.AccountID
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
@@ -2921,12 +2938,12 @@ AS
SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts AS ea
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
- WHERE pt.ParentPackageID = @PackageID
+ WHERE pt.ParentPackageID = @PackageID
AND ea.AccountType IN (1)
AND ea.MailboxPlanId IS NOT NULL)
ELSE IF @QuotaID = 77 -- Exchange2007.DiskSpace
- SET @Result = (SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS ea
- INNER JOIN ExchangeMailboxPlans AS B ON ea.MailboxPlanId = B.MailboxPlanId
+ SET @Result = (SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS ea
+ INNER JOIN ExchangeMailboxPlans AS B ON ea.MailboxPlanId = B.MailboxPlanId
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE pt.ParentPackageID = @PackageID)
@@ -3213,17 +3230,17 @@ GO
IF EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'HostedSolution.SecurityGroupManagement' AND [QuotaID] = 423)
BEGIN
- UPDATE [dbo].[Quotas]
- SET [QuotaDescription] = N'Security Groups',
+ UPDATE [dbo].[Quotas]
+ SET [QuotaDescription] = N'Security Groups',
[QuotaName] = N'HostedSolution.SecurityGroups',
[QuotaTypeID] = 2
WHERE [QuotaID] = 423
- UPDATE [dbo].[HostingPlanQuotas]
+ UPDATE [dbo].[HostingPlanQuotas]
SET [QuotaValue] = -1
WHERE [QuotaID] = 423
- UPDATE [dbo].[PackageQuotas]
+ UPDATE [dbo].[PackageQuotas]
SET [QuotaValue] = -1
WHERE [QuotaID] = 423
END
@@ -3231,7 +3248,7 @@ ELSE
BEGIN
--add Security Groups Quota
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'HostedSolution.SecurityGroups')
- INSERT [dbo].[Quotas] ([QuotaID], [GroupID],[QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota]) VALUES (423, 13, 5, N'HostedSolution.SecurityGroups', N'Security Groups', 2, 0, NULL, NULL)
+ INSERT [dbo].[Quotas] ([QuotaID], [GroupID],[QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota]) VALUES (423, 13, 5, N'HostedSolution.SecurityGroups', N'Security Groups', 2, 0, NULL, NULL)
END
GO
@@ -3326,13 +3343,13 @@ AS
INNER JOIN PackagesTreeCache AS PT ON PIP.PackageID = PT.PackageID
WHERE PT.ParentPackageID = @PackageID AND IP.PoolID = 3)
ELSE IF @QuotaID = 319 -- BB Users
- SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
+ SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
INNER JOIN BlackBerryUsers bu ON ea.AccountID = bu.AccountID
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE pt.ParentPackageID = @PackageID)
ELSE IF @QuotaID = 320 -- OCS Users
- SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
+ SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
INNER JOIN OCSUsers ocs ON ea.AccountID = ocs.AccountID
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
@@ -3346,12 +3363,12 @@ AS
SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts AS ea
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
- WHERE pt.ParentPackageID = @PackageID
+ WHERE pt.ParentPackageID = @PackageID
AND ea.AccountType IN (1)
AND ea.MailboxPlanId IS NOT NULL)
ELSE IF @QuotaID = 77 -- Exchange2007.DiskSpace
- SET @Result = (SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS ea
- INNER JOIN ExchangeMailboxPlans AS B ON ea.MailboxPlanId = B.MailboxPlanId
+ SET @Result = (SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS ea
+ INNER JOIN ExchangeMailboxPlans AS B ON ea.MailboxPlanId = B.MailboxPlanId
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE pt.ParentPackageID = @PackageID)
@@ -3414,7 +3431,7 @@ GO
IF NOT EXISTS (SELECT * FROM [dbo].[Providers] WHERE [DisplayName] = 'Hosted MS CRM 2013')
BEGIN
-INSERT [dbo].[Providers] ([ProviderId], [GroupId], [ProviderName], [DisplayName], [ProviderType], [EditorControl], [DisableAutoDiscovery])
+INSERT [dbo].[Providers] ([ProviderId], [GroupId], [ProviderName], [DisplayName], [ProviderType], [EditorControl], [DisableAutoDiscovery])
VALUES(1202, 24, N'CRM', N'Hosted MS CRM 2013', N'WebsitePanel.Providers.HostedSolution.CRMProvider2013, WebsitePanel.Providers.HostedSolution.Crm2013', N'CRM2011', NULL)
END
GO
@@ -3423,35 +3440,35 @@ GO
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'HostedCRM2013.Organization')
BEGIN
-INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
+INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
VALUES (463, 24, 1, N'HostedCRM2013.Organization', N'CRM Organization', 1, 0, NULL, NULL)
END
GO
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'HostedCRM2013.MaxDatabaseSize')
BEGIN
-INSERT [dbo].[Quotas] ([QuotaID], [GroupID],[QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID])
+INSERT [dbo].[Quotas] ([QuotaID], [GroupID],[QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID])
VALUES (464, 24, 5, N'HostedCRM2013.MaxDatabaseSize', N'Max Database Size, MB',3, 0 , NULL)
END
GO
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'HostedCRM2013.EssentialUsers')
BEGIN
-INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
+INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
VALUES (465, 24, 2, N'HostedCRM2013.EssentialUsers', N'Essential licenses per organization', 3, 0, NULL, NULL)
END
GO
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'HostedCRM2013.BasicUsers')
BEGIN
-INSERT [dbo].[Quotas] ([QuotaID], [GroupID],[QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID])
+INSERT [dbo].[Quotas] ([QuotaID], [GroupID],[QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID])
VALUES (466, 24, 3, N'HostedCRM2013.BasicUsers', N'Basic licenses per organization',3, 0 , NULL)
END
GO
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'HostedCRM2013.ProfessionalUsers')
BEGIN
-INSERT [dbo].[Quotas] ([QuotaID], [GroupID],[QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID])
+INSERT [dbo].[Quotas] ([QuotaID], [GroupID],[QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID])
VALUES (467, 24, 4, N'HostedCRM2013.ProfessionalUsers', N'Professional licenses per organization',3, 0 , NULL)
END
GO
@@ -3479,14 +3496,14 @@ GO
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'Exchange2013.ArchivingStorage')
BEGIN
-INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
+INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
VALUES (425, 12, 29, N'Exchange2013.ArchivingStorage', N'Archiving storage, MB', 2, 0, NULL, NULL)
END
GO
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'Exchange2013.ArchivingMailboxes')
BEGIN
-INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
+INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
VALUES (426, 12, 28, N'Exchange2013.ArchivingMailboxes', N'Archiving Mailboxes per Organization', 2, 0, NULL, NULL)
END
GO
@@ -3523,7 +3540,7 @@ END
GO
-ALTER PROCEDURE [dbo].[AddExchangeMailboxPlan]
+ALTER PROCEDURE [dbo].[AddExchangeMailboxPlan]
(
@MailboxPlanId int OUTPUT,
@ItemID int,
@@ -3635,7 +3652,7 @@ RETURN
GO
-ALTER PROCEDURE [dbo].[UpdateExchangeMailboxPlan]
+ALTER PROCEDURE [dbo].[UpdateExchangeMailboxPlan]
(
@MailboxPlanId int,
@MailboxPlan nvarchar(300),
@@ -3687,7 +3704,7 @@ UPDATE ExchangeMailboxPlans SET
MailboxPlanType = @MailboxPlanType,
AllowLitigationHold = @AllowLitigationHold,
RecoverableItemsWarningPct = @RecoverableItemsWarningPct,
- RecoverableItemsSpace = @RecoverableItemsSpace,
+ RecoverableItemsSpace = @RecoverableItemsSpace,
LitigationHoldUrl = @LitigationHoldUrl,
LitigationHoldMsg = @LitigationHoldMsg,
Archiving = @Archiving,
@@ -3697,7 +3714,7 @@ UPDATE ExchangeMailboxPlans SET
WHERE MailboxPlanId = @MailboxPlanId
RETURN
-
+
GO
@@ -3735,7 +3752,7 @@ SELECT
FROM
ExchangeMailboxPlans
WHERE
- ItemID = @ItemID
+ ItemID = @ItemID
AND ((Archiving=@Archiving) OR ((@Archiving=0) AND (Archiving IS NULL)))
ORDER BY MailboxPlan
RETURN
@@ -3743,7 +3760,7 @@ RETURN
GO
-ALTER PROCEDURE [dbo].[GetExchangeMailboxPlan]
+ALTER PROCEDURE [dbo].[GetExchangeMailboxPlan]
(
@MailboxPlanId int
)
@@ -3802,7 +3819,7 @@ END
GO
-- Password column removed
-ALTER PROCEDURE [dbo].[GetExchangeAccount]
+ALTER PROCEDURE [dbo].[GetExchangeAccount]
(
@ItemID int,
@AccountID int
@@ -3822,12 +3839,12 @@ SELECT
P.MailboxPlan,
E.SubscriberNumber,
E.UserPrincipalName,
- E.ArchivingMailboxPlanId,
+ E.ArchivingMailboxPlanId,
AP.MailboxPlan as 'ArchivingMailboxPlan',
E.EnableArchiving
FROM
ExchangeAccounts AS E
-LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
+LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
LEFT OUTER JOIN ExchangeMailboxPlans AS AP ON E.ArchivingMailboxPlanId = AP.MailboxPlanId
WHERE
E.ItemID = @ItemID AND
@@ -3837,7 +3854,7 @@ GO
-- Password column removed
-ALTER PROCEDURE [dbo].[GetExchangeAccountByAccountName]
+ALTER PROCEDURE [dbo].[GetExchangeAccountByAccountName]
(
@ItemID int,
@AccountName nvarchar(300)
@@ -3857,12 +3874,12 @@ SELECT
P.MailboxPlan,
E.SubscriberNumber,
E.UserPrincipalName,
- E.ArchivingMailboxPlanId,
+ E.ArchivingMailboxPlanId,
AP.MailboxPlan as 'ArchivingMailboxPlan',
E.EnableArchiving
FROM
ExchangeAccounts AS E
-LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
+LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
LEFT OUTER JOIN ExchangeMailboxPlans AS AP ON E.ArchivingMailboxPlanId = AP.MailboxPlanId
WHERE
E.ItemID = @ItemID AND
@@ -3875,7 +3892,7 @@ GO
-- Password column removed
-ALTER PROCEDURE [dbo].[GetExchangeAccountByMailboxPlanId]
+ALTER PROCEDURE [dbo].[GetExchangeAccountByMailboxPlanId]
(
@ItemID int,
@MailboxPlanId int
@@ -3898,17 +3915,17 @@ SELECT
P.MailboxPlan,
E.SubscriberNumber,
E.UserPrincipalName,
- E.ArchivingMailboxPlanId,
+ E.ArchivingMailboxPlanId,
AP.MailboxPlan as 'ArchivingMailboxPlan',
E.EnableArchiving
FROM
ExchangeAccounts AS E
-LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
+LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
LEFT OUTER JOIN ExchangeMailboxPlans AS AP ON E.ArchivingMailboxPlanId = AP.MailboxPlanId
WHERE
E.ItemID = @ItemID AND
E.MailboxPlanId IS NULL AND
- E.AccountType IN (1,5)
+ E.AccountType IN (1,5)
RETURN
END
@@ -3929,16 +3946,16 @@ SELECT
P.MailboxPlan,
E.SubscriberNumber,
E.UserPrincipalName,
- E.ArchivingMailboxPlanId,
+ E.ArchivingMailboxPlanId,
AP.MailboxPlan as 'ArchivingMailboxPlan',
E.EnableArchiving
FROM
ExchangeAccounts AS E
-LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
+LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
LEFT OUTER JOIN ExchangeMailboxPlans AS AP ON E.ArchivingMailboxPlanId = AP.MailboxPlanId
WHERE
E.MailboxPlanId = @MailboxPlanId AND
- E.AccountType IN (1,5)
+ E.AccountType IN (1,5)
END
ELSE
BEGIN
@@ -3956,17 +3973,17 @@ SELECT
P.MailboxPlan,
E.SubscriberNumber,
E.UserPrincipalName,
- E.ArchivingMailboxPlanId,
+ E.ArchivingMailboxPlanId,
AP.MailboxPlan as 'ArchivingMailboxPlan',
E.EnableArchiving
FROM
ExchangeAccounts AS E
-LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
+LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
LEFT OUTER JOIN ExchangeMailboxPlans AS AP ON E.ArchivingMailboxPlanId = AP.MailboxPlanId
WHERE
E.ItemID = @ItemID AND
E.MailboxPlanId = @MailboxPlanId AND
- E.AccountType IN (1,5)
+ E.AccountType IN (1,5)
RETURN
END
GO
@@ -4007,18 +4024,18 @@ IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
AND @FilterValue <> '' AND @FilterValue IS NOT NULL
BEGIN
IF @FilterColumn = 'PrimaryEmailAddress' AND @AccountTypes <> '2'
- BEGIN
+ BEGIN
SET @condition = @condition + ' AND EA.AccountID IN (SELECT EAEA.AccountID FROM ExchangeAccountEmailAddresses EAEA WHERE EAEA.EmailAddress LIKE ''' + @FilterValue + ''')'
END
ELSE
- BEGIN
+ BEGIN
SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
END
END
if @Archiving = 1
BEGIN
- SET @condition = @condition + ' AND (EA.ArchivingMailboxPlanId > 0) '
+ SET @condition = @condition + ' AND (EA.ArchivingMailboxPlanId > 0) '
END
IF @SortColumn IS NULL OR @SortColumn = ''
@@ -4058,12 +4075,12 @@ print @sql
exec sp_executesql @sql, N'@ItemID int, @StartRow int, @MaximumRows int',
@ItemID, @StartRow, @MaximumRows
-RETURN
+RETURN
GO
-ALTER PROCEDURE [dbo].[SetExchangeAccountMailboxplan]
+ALTER PROCEDURE [dbo].[SetExchangeAccountMailboxplan]
(
@AccountID int,
@MailboxPlanId int,
@@ -4084,7 +4101,7 @@ RETURN
GO
-- Password column removed
-ALTER PROCEDURE [dbo].[UpdateExchangeAccount]
+ALTER PROCEDURE [dbo].[UpdateExchangeAccount]
(
@AccountID int,
@AccountName nvarchar(300),
@@ -4101,9 +4118,9 @@ ALTER PROCEDURE [dbo].[UpdateExchangeAccount]
)
AS
-BEGIN TRAN
+BEGIN TRAN
-IF (@MailboxPlanId = -1)
+IF (@MailboxPlanId = -1)
BEGIN
SET @MailboxPlanId = NULL
END
@@ -4113,7 +4130,7 @@ UPDATE ExchangeAccounts SET
DisplayName = @DisplayName,
PrimaryEmailAddress = @PrimaryEmailAddress,
MailEnabledPublicFolder = @MailEnabledPublicFolder,
- MailboxManagerActions = @MailboxManagerActions,
+ MailboxManagerActions = @MailboxManagerActions,
AccountType =@AccountType,
SamAccountName = @SamAccountName,
MailboxPlanId = @MailboxPlanId,
@@ -4154,7 +4171,7 @@ IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'AddExchangeRet
DROP PROCEDURE [dbo].[AddExchangeRetentionPolicyTag]
GO
-CREATE PROCEDURE [dbo].[AddExchangeRetentionPolicyTag]
+CREATE PROCEDURE [dbo].[AddExchangeRetentionPolicyTag]
(
@TagID int OUTPUT,
@ItemID int,
@@ -4195,7 +4212,7 @@ IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'UpdateExchange
DROP PROCEDURE [dbo].[UpdateExchangeRetentionPolicyTag]
GO
-CREATE PROCEDURE [dbo].[UpdateExchangeRetentionPolicyTag]
+CREATE PROCEDURE [dbo].[UpdateExchangeRetentionPolicyTag]
(
@TagID int,
@ItemID int,
@@ -4215,7 +4232,7 @@ UPDATE ExchangeRetentionPolicyTags SET
WHERE TagID = @TagID
RETURN
-
+
GO
@@ -4238,7 +4255,7 @@ SELECT
FROM
ExchangeRetentionPolicyTags
WHERE
- ItemID = @ItemID
+ ItemID = @ItemID
ORDER BY TagName
RETURN
@@ -4249,7 +4266,7 @@ IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetExchangeRet
DROP PROCEDURE [dbo].[GetExchangeRetentionPolicyTag]
GO
-CREATE PROCEDURE [dbo].[GetExchangeRetentionPolicyTag]
+CREATE PROCEDURE [dbo].[GetExchangeRetentionPolicyTag]
(
@TagID int
)
@@ -4317,10 +4334,10 @@ P.MailboxPlan,
T.TagName
FROM
ExchangeMailboxPlanRetentionPolicyTags AS D
-LEFT OUTER JOIN ExchangeMailboxPlans AS P ON P.MailboxPlanId = D.MailboxPlanId
-LEFT OUTER JOIN ExchangeRetentionPolicyTags AS T ON T.TagID = D.TagID
+LEFT OUTER JOIN ExchangeMailboxPlans AS P ON P.MailboxPlanId = D.MailboxPlanId
+LEFT OUTER JOIN ExchangeRetentionPolicyTags AS T ON T.TagID = D.TagID
WHERE
- D.MailboxPlanId = @MailboxPlanId
+ D.MailboxPlanId = @MailboxPlanId
RETURN
GO
@@ -4329,7 +4346,7 @@ IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'AddExchangeMai
DROP PROCEDURE [dbo].[AddExchangeMailboxPlanRetentionPolicyTag]
GO
-CREATE PROCEDURE [dbo].[AddExchangeMailboxPlanRetentionPolicyTag]
+CREATE PROCEDURE [dbo].[AddExchangeMailboxPlanRetentionPolicyTag]
(
@PlanTagID int OUTPUT,
@TagID int,
@@ -4381,7 +4398,7 @@ GO
-- Exchange2013 Archiving
-ALTER PROCEDURE [dbo].[GetExchangeOrganizationStatistics]
+ALTER PROCEDURE [dbo].[GetExchangeOrganizationStatistics]
(
@ItemID int
)
@@ -4454,7 +4471,7 @@ UPDATE [dbo].[ServiceItemTypes] SET [Suspendable] = 1 WHERE [ItemTypeID] = 38 AN
END
GO
-/* ICE Warp */
+/* ICE Warp */
IF NOT EXISTS (SELECT * FROM [dbo].[Providers] WHERE [ProviderName] = 'IceWarp')
BEGIN
INSERT [dbo].[Providers] ([ProviderID], [GroupID], [ProviderName], [DisplayName], [ProviderType], [EditorControl], [DisableAutoDiscovery]) VALUES (160, 4, N'IceWarp', N'IceWarp Mail Server', N'WebsitePanel.Providers.Mail.IceWarp, WebsitePanel.Providers.Mail.IceWarp', N'IceWarp', NULL)
@@ -4542,7 +4559,7 @@ AS
SELECT *
FROM SupportServiceLevels
WHERE LevelID = @LevelID
-RETURN
+RETURN
GO
IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'AddSupportServiceLevel')
@@ -4582,7 +4599,7 @@ BEGIN
IF EXISTS (SELECT * FROM ResourceGroups WHERE GroupName = 'Service Levels')
BEGIN
- DECLARE @QuotaLastID int, @CurQuotaName nvarchar(100),
+ DECLARE @QuotaLastID int, @CurQuotaName nvarchar(100),
@CurQuotaDescription nvarchar(1000), @QuotaOrderInGroup int
SET @CurQuotaName = N'ServiceLevel.' + @LevelName
@@ -4598,23 +4615,23 @@ BEGIN
IF NOT EXISTS (SELECT * FROM Quotas WHERE QuotaName = @CurQuotaName)
BEGIN
- INSERT Quotas
- (QuotaID,
- GroupID,
- QuotaOrder,
- QuotaName,
- QuotaDescription,
- QuotaTypeID,
- ServiceQuota,
- ItemTypeID)
- VALUES
- (@QuotaLastID + 1,
- @ResourseGroupID,
- @QuotaOrderInGroup + 1,
- @CurQuotaName,
+ INSERT Quotas
+ (QuotaID,
+ GroupID,
+ QuotaOrder,
+ QuotaName,
+ QuotaDescription,
+ QuotaTypeID,
+ ServiceQuota,
+ ItemTypeID)
+ VALUES
+ (@QuotaLastID + 1,
+ @ResourseGroupID,
+ @QuotaOrderInGroup + 1,
+ @CurQuotaName,
@CurQuotaDescription,
- 2,
- 0,
+ 2,
+ 0,
NULL)
END
END
@@ -4659,7 +4676,7 @@ BEGIN
END
-RETURN
+RETURN
GO
IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'UpdateSupportServiceLevel')
@@ -4691,7 +4708,7 @@ BEGIN
DECLARE @QuotaID INT
SELECT @QuotaID = QuotaID FROM Quotas WHERE QuotaName = @PrevQuotaName
-
+
UPDATE Quotas
SET QuotaName = N'ServiceLevel.' + @LevelName,
QuotaDescription = @LevelName + ', users'
@@ -4700,12 +4717,12 @@ BEGIN
END
-RETURN
+RETURN
GO
-IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type IN ('FN', 'IF', 'TF') AND name = 'GetPackageServiceLevelResource')
+IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type IN ('FN', 'IF', 'TF') AND name = 'GetPackageServiceLevelResource')
DROP FUNCTION GetPackageServiceLevelResource
GO
@@ -4782,7 +4799,7 @@ BEGIN
)
SET @GroupEnabled = 0
END
-
+
-- check addons
IF EXISTS(
SELECT HPR.GroupID FROM PackageAddons AS PA
@@ -4792,10 +4809,10 @@ BEGIN
)
SET @GroupEnabled = 1
END
-
+
IF @GroupEnabled = 0
RETURN 0
-
+
SET @PID = @ParentPackageID
END -- end while
@@ -4944,7 +4961,7 @@ SELECT
END AS ParentEnabled,
ISNULL(HPR.CalculateDiskSpace, 1) AS CalculateDiskSpace,
ISNULL(HPR.CalculateBandwidth, 1) AS CalculateBandwidth
-FROM ResourceGroups AS RG
+FROM ResourceGroups AS RG
LEFT OUTER JOIN HostingPlanResources AS HPR ON RG.GroupID = HPR.GroupID AND HPR.PlanID = @PlanID
WHERE (RG.ShowGroup = 1)
ORDER BY RG.GroupOrder
@@ -5016,14 +5033,14 @@ WHERE ' + @condition
print @sql
-exec sp_executesql @sql, N'@ItemID int, @IncludeMailboxes bit',
+exec sp_executesql @sql, N'@ItemID int, @IncludeMailboxes bit',
@ItemID, @IncludeMailboxes
RETURN
GO
-- Password column removed
-ALTER PROCEDURE [dbo].[GetExchangeAccount]
+ALTER PROCEDURE [dbo].[GetExchangeAccount]
(
@ItemID int,
@AccountID int
@@ -5043,14 +5060,14 @@ SELECT
P.MailboxPlan,
E.SubscriberNumber,
E.UserPrincipalName,
- E.ArchivingMailboxPlanId,
+ E.ArchivingMailboxPlanId,
AP.MailboxPlan as 'ArchivingMailboxPlan',
E.EnableArchiving,
E.LevelID,
E.IsVIP
FROM
ExchangeAccounts AS E
-LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
+LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
LEFT OUTER JOIN ExchangeMailboxPlans AS AP ON E.ArchivingMailboxPlanId = AP.MailboxPlanId
WHERE
E.ItemID = @ItemID AND
@@ -5091,18 +5108,18 @@ IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
AND @FilterValue <> '' AND @FilterValue IS NOT NULL
BEGIN
IF @FilterColumn = 'PrimaryEmailAddress' AND @AccountTypes <> '2'
- BEGIN
+ BEGIN
SET @condition = @condition + ' AND EA.AccountID IN (SELECT EAEA.AccountID FROM ExchangeAccountEmailAddresses EAEA WHERE EAEA.EmailAddress LIKE ''' + @FilterValue + ''')'
END
ELSE
- BEGIN
+ BEGIN
SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
END
END
if @Archiving = 1
BEGIN
- SET @condition = @condition + ' AND (EA.ArchivingMailboxPlanId > 0) '
+ SET @condition = @condition + ' AND (EA.ArchivingMailboxPlanId > 0) '
END
IF @SortColumn IS NULL OR @SortColumn = ''
@@ -5159,9 +5176,9 @@ CREATE PROCEDURE [dbo].[UpdateExchangeAccountSLSettings]
)
AS
-BEGIN TRAN
+BEGIN TRAN
- IF (@LevelID = -1)
+ IF (@LevelID = -1)
BEGIN
SET @LevelID = NULL
END
@@ -5178,7 +5195,7 @@ BEGIN TRAN
RETURN -1
END
COMMIT TRAN
-RETURN
+RETURN
GO
IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'CheckServiceLevelUsage')
@@ -5194,12 +5211,12 @@ SELECT COUNT(EA.AccountID)
FROM SupportServiceLevels AS SL
INNER JOIN ExchangeAccounts AS EA ON SL.LevelID = EA.LevelID
WHERE EA.LevelID = @LevelID
-RETURN
+RETURN
GO
--- Service Level Quotas, change type
+-- Service Level Quotas, change type
UPDATE Quotas
-SET QuotaTypeID = 2
+SET QuotaTypeID = 2
WHERE QuotaName like 'ServiceLevel.%'
GO
@@ -5278,13 +5295,13 @@ AS
INNER JOIN PackagesTreeCache AS PT ON PIP.PackageID = PT.PackageID
WHERE PT.ParentPackageID = @PackageID AND IP.PoolID = 3)
ELSE IF @QuotaID = 319 -- BB Users
- SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
+ SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
INNER JOIN BlackBerryUsers bu ON ea.AccountID = bu.AccountID
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE pt.ParentPackageID = @PackageID)
ELSE IF @QuotaID = 320 -- OCS Users
- SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
+ SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
INNER JOIN OCSUsers ocs ON ea.AccountID = ocs.AccountID
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
@@ -5298,12 +5315,12 @@ AS
SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts AS ea
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
- WHERE pt.ParentPackageID = @PackageID
+ WHERE pt.ParentPackageID = @PackageID
AND ea.AccountType IN (1)
AND ea.MailboxPlanId IS NOT NULL)
ELSE IF @QuotaID = 77 -- Exchange2007.DiskSpace
- SET @Result = (SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS ea
- INNER JOIN ExchangeMailboxPlans AS B ON ea.MailboxPlanId = B.MailboxPlanId
+ SET @Result = (SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS ea
+ INNER JOIN ExchangeMailboxPlans AS B ON ea.MailboxPlanId = B.MailboxPlanId
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE pt.ParentPackageID = @PackageID)
@@ -5370,14 +5387,14 @@ GO
-- IIS80 Provider update for SNI and CCS support
-- Add default serviceproperties for all existing IIS80 Services (if any). These properties are used as markers in the IIS70 Controls in WebPortal to know the version of the IIS Provider
-declare c cursor read_only for
+declare c cursor read_only for
select ServiceID from Services where ProviderID in(select ProviderID from Providers where ProviderName='IIS80')
declare @ServiceID int
open c
-fetch next from c
+fetch next from c
into @ServiceID
while @@FETCH_STATUS = 0
@@ -5398,7 +5415,7 @@ begin
insert into ServiceProperties(ServiceID, PropertyName, PropertyValue)
values(@ServiceID, 'sslusesni', 'False')
- fetch next from c
+ fetch next from c
into @ServiceID
end
@@ -5417,8 +5434,8 @@ IF NOT EXISTS (SELECT * FROM SYS.TABLES WHERE name = 'RDSCollectionUsers')
CREATE TABLE RDSCollectionUsers
(
ID INT IDENTITY(1,1) NOT NULL PRIMARY KEY,
- RDSCollectionId INT NOT NULL,
- AccountID INT NOT NULL
+ RDSCollectionId INT NOT NULL,
+ AccountID INT NOT NULL
)
GO
@@ -5479,7 +5496,7 @@ CREATE TABLE [dbo].[RDSCollectionSettings](
[ClientPrinterAsDefault] [bit] NULL,
[RDEasyPrintDriverEnabled] [bit] NULL,
[MaxRedirectedMonitors] [int] NULL,
- CONSTRAINT [PK_RDSCollectionSettings] PRIMARY KEY CLUSTERED
+ CONSTRAINT [PK_RDSCollectionSettings] PRIMARY KEY CLUSTERED
(
[ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
@@ -5487,21 +5504,21 @@ CREATE TABLE [dbo].[RDSCollectionSettings](
GO
-IF NOT EXISTS(SELECT * FROM sys.columns
+IF NOT EXISTS(SELECT * FROM sys.columns
WHERE [name] = N'SecurityLayer' AND [object_id] = OBJECT_ID(N'RDSCollectionSettings'))
BEGIN
ALTER TABLE [dbo].[RDSCollectionSettings] ADD SecurityLayer NVARCHAR(20) null;
END
GO
-IF NOT EXISTS(SELECT * FROM sys.columns
+IF NOT EXISTS(SELECT * FROM sys.columns
WHERE [name] = N'EncryptionLevel' AND [object_id] = OBJECT_ID(N'RDSCollectionSettings'))
BEGIN
ALTER TABLE [dbo].[RDSCollectionSettings] ADD EncryptionLevel NVARCHAR(20) null;
END
GO
-IF NOT EXISTS(SELECT * FROM sys.columns
+IF NOT EXISTS(SELECT * FROM sys.columns
WHERE [name] = N'AuthenticateUsingNLA' AND [object_id] = OBJECT_ID(N'RDSCollectionSettings'))
BEGIN
ALTER TABLE [dbo].[RDSCollectionSettings] ADD AuthenticateUsingNLA BIT null;
@@ -5519,7 +5536,7 @@ CREATE TABLE [dbo].[RDSCertificates](
[FileName] [nvarchar](255) NOT NULL,
[ValidFrom] [datetime] NULL,
[ExpiryDate] [datetime] NULL
- CONSTRAINT [PK_RDSCertificates] PRIMARY KEY CLUSTERED
+ CONSTRAINT [PK_RDSCertificates] PRIMARY KEY CLUSTERED
(
[ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
@@ -5540,7 +5557,7 @@ IF EXISTS (SELECT * FROM sys.objects WHERE type = 'F' AND name = 'FK_RDSCollect
BEGIN
ALTER TABLE [dbo].[RDSCollectionUsers]
DROP CONSTRAINT [FK_RDSCollectionUsers_UserId]
-END
+END
ELSE
PRINT 'FK_RDSCollectionUsers_UserId not EXISTS'
GO
@@ -5550,9 +5567,9 @@ IF EXISTS (SELECT * FROM sys.objects WHERE type = 'F' AND name = 'FK_RDSServers
BEGIN
ALTER TABLE [dbo].[RDSServers]
DROP CONSTRAINT [FK_RDSServers_RDSCollectionId]
-END
+END
ELSE
- PRINT 'FK_RDSServers_RDSCollectionId not EXISTS'
+ PRINT 'FK_RDSServers_RDSCollectionId not EXISTS'
GO
ALTER TABLE [dbo].[RDSCollectionUsers] WITH CHECK ADD CONSTRAINT [FK_RDSCollectionUsers_RDSCollectionId] FOREIGN KEY([RDSCollectionId])
@@ -5602,7 +5619,7 @@ INSERT INTO RDSCertificates
Hash,
FileName,
ValidFrom,
- ExpiryDate
+ ExpiryDate
)
VALUES
(
@@ -5631,7 +5648,7 @@ AS
SELECT TOP 1
Id,
ServiceId,
- Content,
+ Content,
Hash,
FileName,
ValidFrom,
@@ -5757,10 +5774,10 @@ CREATE PROCEDURE [dbo].[GetRDSServersByItemId]
@ItemID INT
)
AS
-SELECT
+SELECT
RS.Id,
RS.ItemID,
- RS.Name,
+ RS.Name,
RS.FqdName,
RS.Description,
RS.RdsCollectionId,
@@ -5776,10 +5793,10 @@ DROP PROCEDURE GetRDSServers
GO
CREATE PROCEDURE [dbo].[GetRDSServers]
AS
-SELECT
+SELECT
RS.Id,
RS.ItemID,
- RS.Name,
+ RS.Name,
RS.FqdName,
RS.Description,
RS.RdsCollectionId,
@@ -5801,7 +5818,7 @@ AS
SELECT TOP 1
RS.Id,
RS.ItemID,
- RS.Name,
+ RS.Name,
RS.FqdName,
RS.Description,
RS.RdsCollectionId,
@@ -5819,10 +5836,10 @@ CREATE PROCEDURE [dbo].[GetRDSServersByCollectionId]
@RdsCollectionId INT
)
AS
-SELECT
+SELECT
RS.Id,
RS.ItemID,
- RS.Name,
+ RS.Name,
RS.FqdName,
RS.Description,
RS.RdsCollectionId,
@@ -5877,7 +5894,7 @@ INSERT INTO @RDSCollections (RDSCollectionId)
SELECT
S.ID
FROM RDSCollections AS S
-WHERE
+WHERE
((@ItemID is Null AND S.ItemID is null)
or (@ItemID is not Null AND S.ItemID = @ItemID))'
@@ -5922,10 +5939,10 @@ CREATE PROCEDURE [dbo].[GetRDSCollectionsByItemId]
@ItemID INT
)
AS
-SELECT
+SELECT
Id,
ItemId,
- Name,
+ Name,
Description,
DisplayName
FROM RDSCollections
@@ -5944,7 +5961,7 @@ AS
SELECT TOP 1
Id,
- Name,
+ Name,
ItemId,
Description,
DisplayName
@@ -5965,9 +5982,9 @@ AS
SELECT TOP 1
Id,
ItemId,
- Name,
+ Name,
Description,
- DisplayName
+ DisplayName
FROM RDSCollections
WHERE ID = @ID
GO
@@ -6058,7 +6075,7 @@ CREATE PROCEDURE [dbo].[GetRDSCollectionUsersByRDSCollectionId]
@ID INT
)
AS
-SELECT
+SELECT
[AccountID],
[ItemID],
[AccountType],
@@ -6095,7 +6112,7 @@ AS
INSERT INTO RDSCollectionUsers
(
- RDSCollectionId,
+ RDSCollectionId,
AccountID
)
VALUES
@@ -6183,7 +6200,7 @@ AS
SELECT TOP 1
Id,
RDSCollectionId,
- DisconnectedSessionLimitMin,
+ DisconnectedSessionLimitMin,
ActiveSessionLimitMin,
IdleSessionLimitMin,
BrokenConnectionAction,
@@ -6207,7 +6224,7 @@ CREATE PROCEDURE [dbo].[AddRDSCollectionSettings]
(
@RDSCollectionSettingsID INT OUTPUT,
@RDSCollectionId INT,
- @DisconnectedSessionLimitMin INT,
+ @DisconnectedSessionLimitMin INT,
@ActiveSessionLimitMin INT,
@IdleSessionLimitMin INT,
@BrokenConnectionAction NVARCHAR(20),
@@ -6225,7 +6242,7 @@ AS
INSERT INTO RDSCollectionSettings
(
RDSCollectionId,
- DisconnectedSessionLimitMin,
+ DisconnectedSessionLimitMin,
ActiveSessionLimitMin,
IdleSessionLimitMin,
BrokenConnectionAction,
@@ -6241,7 +6258,7 @@ INSERT INTO RDSCollectionSettings
VALUES
(
@RDSCollectionId,
- @DisconnectedSessionLimitMin,
+ @DisconnectedSessionLimitMin,
@ActiveSessionLimitMin,
@IdleSessionLimitMin,
@BrokenConnectionAction,
@@ -6268,7 +6285,7 @@ CREATE PROCEDURE [dbo].[UpdateRDSCollectionSettings]
(
@ID INT,
@RDSCollectionId INT,
- @DisconnectedSessionLimitMin INT,
+ @DisconnectedSessionLimitMin INT,
@ActiveSessionLimitMin INT,
@IdleSessionLimitMin INT,
@BrokenConnectionAction NVARCHAR(20),
@@ -6329,24 +6346,24 @@ GO
-- Exchange2013 Shared and resource mailboxes
-- Exchange2013 Shared and resource mailboxes Quotas
-
+
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'Exchange2013.SharedMailboxes')
BEGIN
-INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
+INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
VALUES (429, 12, 30, N'Exchange2013.SharedMailboxes', N'Shared Mailboxes per Organization', 2, 0, NULL, NULL)
END
GO
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'Exchange2013.ResourceMailboxes')
BEGIN
-INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
+INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
VALUES (428, 12, 31, N'Exchange2013.ResourceMailboxes', N'Resource Mailboxes per Organization', 2, 0, NULL, NULL)
END
GO
-- Exchange2013 Shared and resource mailboxes Organization statistics
-ALTER PROCEDURE [dbo].[GetExchangeOrganizationStatistics]
+ALTER PROCEDURE [dbo].[GetExchangeOrganizationStatistics]
(
@ItemID int
)
@@ -6442,8 +6459,19 @@ WHERE (D.IsInstantAlias = 0 AND D.IsDomainPointer = 0) AND
AND (@ServerID = 0 OR (@ServerID > 0 AND S.ServerID = @ServerID))
'
-IF @FilterColumn <> '' AND @FilterValue <> ''
-SET @sql = @sql + ' AND ' + @FilterColumn + ' LIKE @FilterValue '
+IF @FilterValue <> ''
+BEGIN
+ IF @FilterColumn <> ''
+ BEGIN
+ SET @sql = @sql + ' AND ' + @FilterColumn + ' LIKE @FilterValue '
+ END
+ ELSE
+ SET @sql = @sql + '
+ AND (DomainName LIKE @FilterValue
+ OR Username LIKE @FilterValue
+ OR ServerName LIKE @FilterValue
+ OR PackageName LIKE @FilterValue) '
+END
IF @SortColumn <> '' AND @SortColumn IS NOT NULL
SET @sql = @sql + ' ORDER BY ' + @SortColumn + ' '
@@ -6463,16 +6491,16 @@ SET @sql = @sql + ' SELECT COUNT(DomainID) FROM @Domains;SELECT
D.IsSubDomain,
D.IsInstantAlias,
D.IsDomainPointer,
-
+
-- packages
P.PackageName,
-
+
-- server
ISNULL(SRV.ServerID, 0) AS ServerID,
ISNULL(SRV.ServerName, '''') AS ServerName,
ISNULL(SRV.Comments, '''') AS ServerComments,
ISNULL(SRV.VirtualServer, 0) AS VirtualServer,
-
+
-- user
P.UserID,
U.Username,
@@ -6613,21 +6641,21 @@ REFERENCES [dbo].[Domains] ([DomainID])
ON DELETE CASCADE
GO
-IF NOT EXISTS(SELECT * FROM sys.columns
+IF NOT EXISTS(SELECT * FROM sys.columns
WHERE [name] = N'CreationDate' AND [object_id] = OBJECT_ID(N'Domains'))
BEGIN
ALTER TABLE [dbo].[Domains] ADD CreationDate DateTime null;
END
GO
-IF NOT EXISTS(SELECT * FROM sys.columns
+IF NOT EXISTS(SELECT * FROM sys.columns
WHERE [name] = N'ExpirationDate' AND [object_id] = OBJECT_ID(N'Domains'))
BEGIN
ALTER TABLE [dbo].[Domains] ADD ExpirationDate DateTime null;
END
GO
-IF NOT EXISTS(SELECT * FROM sys.columns
+IF NOT EXISTS(SELECT * FROM sys.columns
WHERE [name] = N'LastUpdateDate' AND [object_id] = OBJECT_ID(N'Domains'))
BEGIN
ALTER TABLE [dbo].[Domains] ADD LastUpdateDate DateTime null;
@@ -6660,7 +6688,7 @@ Set @DomainExpirationLetterHtmlBody = N'
.Summary A { color: ##0153A4; }
.Summary { font-family: Tahoma; font-size: 9pt; }
.Summary H1 { font-size: 1.7em; color: ##1F4978; border-bottom: dotted 3px ##efefef; }
- .Summary H2 { font-size: 1.3em; color: ##1F4978; }
- .Summary H3 { font-size: 1em; color: ##1F4978; }
+ .Summary H2 { font-size: 1.3em; color: ##1F4978; }
+ .Summary H3 { font-size: 1em; color: ##1F4978; }
.Summary TABLE { border: solid 1px ##e5e5e5; }
.Summary TH,
.Summary TD.Label { padding: 5px; font-size: 8pt; font-weight: bold; background-color: ##f5f5f5; }
@@ -6881,7 +6909,7 @@ Please, find below details of MX and NS changes.
-
+
@@ -6968,7 +6996,7 @@ INSERT [dbo].[UserSettings] ([UserID], [SettingsName], [PropertyName], [Property
.Summary A { color: ##0153A4; }
.Summary { font-family: Tahoma; font-size: 9pt; }
.Summary H1 { font-size: 1.7em; color: ##1F4978; border-bottom: dotted 3px ##efefef; }
- .Summary H2 { font-size: 1.3em; color: ##1F4978; }
+ .Summary H2 { font-size: 1.3em; color: ##1F4978; }
.Summary TABLE { border: solid 1px ##e5e5e5; }
.Summary TH,
.Summary TD.Label { padding: 5px; font-size: 8pt; font-weight: bold; background-color: ##f5f5f5; }
@@ -7050,7 +7078,7 @@ DROP PROCEDURE GetScheduleTaskEmailTemplate
GO
CREATE PROCEDURE [dbo].GetScheduleTaskEmailTemplate
(
- @TaskID [nvarchar](100)
+ @TaskID [nvarchar](100)
)
AS
SELECT
@@ -7058,7 +7086,7 @@ SELECT
[From] ,
[Subject] ,
[Template]
- FROM [dbo].[ScheduleTasksEmailTemplates] where [TaskID] = @TaskID
+ FROM [dbo].[ScheduleTasksEmailTemplates] where [TaskID] = @TaskID
GO
IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetDomainDnsRecords')
@@ -7097,7 +7125,7 @@ SELECT
Value,
Date
FROM [dbo].[DomainDnsRecords]
- WHERE [DomainId] = @DomainId
+ WHERE [DomainId] = @DomainId
GO
@@ -7194,7 +7222,7 @@ CREATE PROCEDURE [dbo].UpdateDomainDates
@DomainId INT,
@DomainCreationDate DateTime,
@DomainExpirationDate DateTime,
- @DomainLastUpdateDate DateTime
+ @DomainLastUpdateDate DateTime
)
AS
UPDATE [dbo].[Domains] SET [CreationDate] = @DomainCreationDate, [ExpirationDate] = @DomainExpirationDate, [LastUpdateDate] = @DomainLastUpdateDate WHERE [DomainID] = @DomainId
@@ -7340,7 +7368,7 @@ LEFT OUTER JOIN Services AS S ON Z.ServiceID = S.ServiceID
LEFT OUTER JOIN Servers AS SRV ON S.ServerID = SRV.ServerID
WHERE SD.ItemPosition BETWEEN @StartRow + 1 AND @StartRow + @MaximumRows'
-exec sp_executesql @sql, N'@StartRow int, @MaximumRows int, @PackageID int, @FilterValue nvarchar(50), @ServerID int, @Recursive bit',
+exec sp_executesql @sql, N'@StartRow int, @MaximumRows int, @PackageID int, @FilterValue nvarchar(50), @ServerID int, @Recursive bit',
@StartRow, @MaximumRows, @PackageID, @FilterValue, @ServerID, @Recursive
@@ -7381,7 +7409,7 @@ INSERT INTO @RDSServer (RDSServerId)
SELECT
S.ID
FROM RDSServers AS S
-WHERE
+WHERE
((((@ItemID is Null AND S.ItemID is null) or @IgnoreItemId = 1)
or (@ItemID is not Null AND S.ItemID = @ItemID))
and
@@ -7398,7 +7426,7 @@ SET @sql = @sql + ' SELECT COUNT(RDSServerId) FROM @RDSServer;
SELECT
ST.ID,
ST.ItemID,
- ST.Name,
+ ST.Name,
ST.FqdName,
ST.Description,
ST.RdsCollectionId,
@@ -7410,7 +7438,7 @@ LEFT OUTER JOIN ServiceItems AS SI ON SI.ItemId = ST.ItemId
WHERE S.ItemPosition BETWEEN @StartRow AND @EndRow'
exec sp_executesql @sql, N'@StartRow int, @MaximumRows int, @FilterValue nvarchar(50), @ItemID int, @RdsCollectionId int, @IgnoreItemId bit, @IgnoreRdsCollectionId bit',
-@StartRow, @MaximumRows, @FilterValue, @ItemID, @RdsCollectionId, @IgnoreItemId , @IgnoreRdsCollectionId
+@StartRow, @MaximumRows, @FilterValue, @ItemID, @RdsCollectionId, @IgnoreItemId , @IgnoreRdsCollectionId
RETURN
@@ -7452,7 +7480,7 @@ GO
-- fix check domain used by HostedOrganization
-ALTER PROCEDURE [dbo].[CheckDomainUsedByHostedOrganization]
+ALTER PROCEDURE [dbo].[CheckDomainUsedByHostedOrganization]
@DomainName nvarchar(100),
@Result int OUTPUT
AS
@@ -7471,7 +7499,7 @@ AS
BEGIN
SET @Result = 1
END
-
+
RETURN @Result
GO
@@ -7507,34 +7535,34 @@ SELECT
eam.AccountID as OwnerID
FROM
ExchangeAccountEmailAddresses as eam
-INNER JOIN
+INNER JOIN
ExchangeAccounts ea
-ON
+ON
ea.AccountID = eam.AccountID
WHERE
(ea.PrimaryEmailAddress != eam.EmailAddress)
AND (ea.UserPrincipalName != eam.EmailAddress)
AND (eam.EmailAddress LIKE '%@'+ @DomainName)
UNION
-SELECT
+SELECT
'LyncUsers' as ObjectName,
ea.AccountID as ObjectID,
ea.AccountType as ObjectType,
ea.DisplayName as DisplayName,
0 as OwnerID
-FROM
- ExchangeAccounts ea
-INNER JOIN
+FROM
+ ExchangeAccounts ea
+INNER JOIN
LyncUsers ou
-ON
+ON
ea.AccountID = ou.AccountID
-WHERE
+WHERE
ou.SipAddress LIKE '%@'+ @DomainName
-ORDER BY
+ORDER BY
DisplayName
RETURN
GO
-IF NOT EXISTS(SELECT * FROM sys.columns
+IF NOT EXISTS(SELECT * FROM sys.columns
WHERE [name] = N'RegistrarName' AND [object_id] = OBJECT_ID(N'Domains'))
BEGIN
ALTER TABLE [dbo].[Domains] ADD RegistrarName nvarchar(max);
@@ -7607,8 +7635,19 @@ WHERE (D.IsInstantAlias = 0 AND D.IsDomainPointer = 0) AND
AND (@ServerID = 0 OR (@ServerID > 0 AND S.ServerID = @ServerID))
'
-IF @FilterColumn <> '' AND @FilterValue <> ''
-SET @sql = @sql + ' AND ' + @FilterColumn + ' LIKE @FilterValue '
+IF @FilterValue <> ''
+BEGIN
+ IF @FilterColumn <> ''
+ BEGIN
+ SET @sql = @sql + ' AND ' + @FilterColumn + ' LIKE @FilterValue '
+ END
+ ELSE
+ SET @sql = @sql + '
+ AND (DomainName LIKE @FilterValue
+ OR Username LIKE @FilterValue
+ OR ServerName LIKE @FilterValue
+ OR PackageName LIKE @FilterValue) '
+END
IF @SortColumn <> '' AND @SortColumn IS NOT NULL
SET @sql = @sql + ' ORDER BY ' + @SortColumn + ' '
@@ -7653,7 +7692,7 @@ LEFT OUTER JOIN Services AS S ON Z.ServiceID = S.ServiceID
LEFT OUTER JOIN Servers AS SRV ON S.ServerID = SRV.ServerID
WHERE SD.ItemPosition BETWEEN @StartRow + 1 AND @StartRow + @MaximumRows'
-exec sp_executesql @sql, N'@StartRow int, @MaximumRows int, @PackageID int, @FilterValue nvarchar(50), @ServerID int, @Recursive bit',
+exec sp_executesql @sql, N'@StartRow int, @MaximumRows int, @PackageID int, @FilterValue nvarchar(50), @ServerID int, @Recursive bit',
@StartRow, @MaximumRows, @PackageID, @FilterValue, @ServerID, @Recursive
@@ -7735,18 +7774,18 @@ SELECT
P.StatusID,
P.PlanID,
P.PurchaseDate,
-
+
dbo.GetItemComments(P.PackageID, 'PACKAGE', @ActorID) AS Comments,
-
+
-- server
ISNULL(P.ServerID, 0) AS ServerID,
ISNULL(S.ServerName, 'None') AS ServerName,
ISNULL(S.Comments, '') AS ServerComments,
ISNULL(S.VirtualServer, 1) AS VirtualServer,
-
+
-- hosting plan
HP.PlanName,
-
+
-- user
P.UserID,
U.Username,
@@ -7781,17 +7820,17 @@ SELECT
P.PackageName,
P.StatusID,
P.PurchaseDate,
-
+
-- server
ISNULL(P.ServerID, 0) AS ServerID,
ISNULL(S.ServerName, 'None') AS ServerName,
ISNULL(S.Comments, '') AS ServerComments,
ISNULL(S.VirtualServer, 1) AS VirtualServer,
-
+
-- hosting plan
P.PlanID,
HP.PlanName,
-
+
-- user
P.UserID,
U.Username,
@@ -7806,7 +7845,7 @@ INNER JOIN Users AS U ON P.UserID = U.UserID
INNER JOIN Servers AS S ON P.ServerID = S.ServerID
INNER JOIN HostingPlans AS HP ON P.PlanID = HP.PlanID
WHERE
- P.UserID = @UserID
+ P.UserID = @UserID
RETURN
GO
@@ -7991,7 +8030,7 @@ CREATE PROCEDURE [dbo].[GetWebDavAccessTokenById]
@Id int
)
AS
-SELECT
+SELECT
ID ,
FilePath ,
AuthData ,
@@ -7999,7 +8038,7 @@ SELECT
ExpirationDate,
AccountID,
ItemId
- FROM WebDavAccessTokens
+ FROM WebDavAccessTokens
Where ID = @Id AND ExpirationDate > getdate()
GO
@@ -8012,7 +8051,7 @@ CREATE PROCEDURE [dbo].[GetWebDavAccessTokenByAccessToken]
@AccessToken UNIQUEIDENTIFIER
)
AS
-SELECT
+SELECT
ID ,
FilePath ,
AuthData ,
@@ -8020,7 +8059,7 @@ SELECT
ExpirationDate,
AccountID,
ItemId
- FROM WebDavAccessTokens
+ FROM WebDavAccessTokens
Where AccessToken = @AccessToken AND ExpirationDate > getdate()
GO
@@ -8037,7 +8076,7 @@ END
GO
IF NOT EXISTS (SELECT * FROM SYS.TABLES WHERE name = 'ExchangeDeletedAccounts')
-CREATE TABLE ExchangeDeletedAccounts
+CREATE TABLE ExchangeDeletedAccounts
(
ID INT IDENTITY(1,1) NOT NULL PRIMARY KEY,
AccountID INT NOT NULL,
@@ -8106,7 +8145,7 @@ IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'AddOrganizatio
DROP PROCEDURE [dbo].[AddOrganizationDeletedUser]
GO
-CREATE PROCEDURE [dbo].[AddOrganizationDeletedUser]
+CREATE PROCEDURE [dbo].[AddOrganizationDeletedUser]
(
@ID int OUTPUT,
@AccountID int,
@@ -8205,7 +8244,7 @@ AS
DECLARE @Result2 int
SET @Result2 = (SELECT SUM(CAST(SIP.PropertyValue AS int)) FROM ServiceItemProperties AS SIP
INNER JOIN ServiceItems AS SI ON SIP.ItemID = SI.ItemID
- INNER JOIN ServiceItemProperties AS SIP2 ON
+ INNER JOIN ServiceItemProperties AS SIP2 ON
SIP2.ItemID = SI.ItemID AND SIP2.PropertyName = 'DynamicMemory.Enabled' AND SIP2.PropertyValue = 'True'
INNER JOIN PackagesTreeCache AS PT ON SI.PackageID = PT.PackageID
WHERE SIP.PropertyName = 'DynamicMemory.Maximum' AND PT.ParentPackageID = @PackageID)
@@ -8242,13 +8281,13 @@ AS
INNER JOIN PackagesTreeCache AS PT ON PIP.PackageID = PT.PackageID
WHERE PT.ParentPackageID = @PackageID AND IP.PoolID = 3)
ELSE IF @QuotaID = 319 -- BB Users
- SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
+ SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
INNER JOIN BlackBerryUsers bu ON ea.AccountID = bu.AccountID
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE pt.ParentPackageID = @PackageID)
ELSE IF @QuotaID = 320 -- OCS Users
- SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
+ SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
INNER JOIN OCSUsers ocs ON ea.AccountID = ocs.AccountID
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
@@ -8262,12 +8301,12 @@ AS
SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts AS ea
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
- WHERE pt.ParentPackageID = @PackageID
+ WHERE pt.ParentPackageID = @PackageID
AND ea.AccountType IN (1)
AND ea.MailboxPlanId IS NOT NULL)
ELSE IF @QuotaID = 77 -- Exchange2007.DiskSpace
- SET @Result = (SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS ea
- INNER JOIN ExchangeMailboxPlans AS B ON ea.MailboxPlanId = B.MailboxPlanId
+ SET @Result = (SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS ea
+ INNER JOIN ExchangeMailboxPlans AS B ON ea.MailboxPlanId = B.MailboxPlanId
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE pt.ParentPackageID = @PackageID)
@@ -8316,7 +8355,7 @@ AS
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE PT.ParentPackageID = @PackageID)
ELSE IF @QuotaID = 451
- SET @Result = (SELECT COUNT(RS.[ID]) FROM [dbo].[RDSServers] RS
+ SET @Result = (SELECT COUNT(RS.[ID]) FROM [dbo].[RDSServers] RS
INNER JOIN ServiceItems si ON RS.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE PT.ParentPackageID = @PackageID)
@@ -8357,7 +8396,7 @@ BEGIN
END
GO
-ALTER PROCEDURE [dbo].[AddExchangeMailboxPlan]
+ALTER PROCEDURE [dbo].[AddExchangeMailboxPlan]
(
@MailboxPlanId int OUTPUT,
@ItemID int,
@@ -8471,7 +8510,7 @@ SET @MailboxPlanId = SCOPE_IDENTITY()
RETURN
GO
-ALTER PROCEDURE [dbo].[UpdateExchangeMailboxPlan]
+ALTER PROCEDURE [dbo].[UpdateExchangeMailboxPlan]
(
@MailboxPlanId int,
@MailboxPlan nvarchar(300),
@@ -8524,7 +8563,7 @@ UPDATE ExchangeMailboxPlans SET
MailboxPlanType = @MailboxPlanType,
AllowLitigationHold = @AllowLitigationHold,
RecoverableItemsWarningPct = @RecoverableItemsWarningPct,
- RecoverableItemsSpace = @RecoverableItemsSpace,
+ RecoverableItemsSpace = @RecoverableItemsSpace,
LitigationHoldUrl = @LitigationHoldUrl,
LitigationHoldMsg = @LitigationHoldMsg,
Archiving = @Archiving,
@@ -8537,7 +8576,7 @@ WHERE MailboxPlanId = @MailboxPlanId
RETURN
GO
-ALTER PROCEDURE [dbo].[GetExchangeMailboxPlan]
+ALTER PROCEDURE [dbo].[GetExchangeMailboxPlan]
(
@MailboxPlanId int
)
@@ -8613,7 +8652,7 @@ SELECT
FROM
ExchangeMailboxPlans
WHERE
- ItemID = @ItemID
+ ItemID = @ItemID
AND ((Archiving=@Archiving) OR ((@Archiving=0) AND (Archiving IS NULL)))
ORDER BY MailboxPlan
RETURN
@@ -8672,7 +8711,7 @@ SELECT
@ItemID,
PropertyName,
PropertyValue
-FROM OPENXML(@idoc, '/properties/property',1) WITH
+FROM OPENXML(@idoc, '/properties/property',1) WITH
(
PropertyName nvarchar(50) '@name',
PropertyValue nvarchar(3000) '@value'
@@ -8685,9 +8724,9 @@ INSERT INTO ServiceItemProperties
PropertyName,
PropertyValue
)
-SELECT
- ItemID,
- PropertyName,
+SELECT
+ ItemID,
+ PropertyName,
PropertyValue
FROM #TempTable
@@ -8698,7 +8737,7 @@ exec sp_xml_removedocument @idoc
COMMIT TRAN
-RETURN
+RETURN
GO
@@ -8706,7 +8745,7 @@ GO
IF OBJECTPROPERTY(object_id('dbo.GetExchangeAccountByAccountNameWithoutItemId'), N'IsProcedure') = 1
DROP PROCEDURE [dbo].[GetExchangeAccountByAccountNameWithoutItemId]
GO
-CREATE PROCEDURE [dbo].[GetExchangeAccountByAccountNameWithoutItemId]
+CREATE PROCEDURE [dbo].[GetExchangeAccountByAccountNameWithoutItemId]
(
@UserPrincipalName nvarchar(300)
)
@@ -8725,12 +8764,12 @@ SELECT
P.MailboxPlan,
E.SubscriberNumber,
E.UserPrincipalName,
- E.ArchivingMailboxPlanId,
+ E.ArchivingMailboxPlanId,
AP.MailboxPlan as 'ArchivingMailboxPlan',
E.EnableArchiving
FROM
ExchangeAccounts AS E
-LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
+LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
LEFT OUTER JOIN ExchangeMailboxPlans AS AP ON E.ArchivingMailboxPlanId = AP.MailboxPlanId
WHERE
E.UserPrincipalName = @UserPrincipalName
@@ -8855,11 +8894,11 @@ FROM ServiceItems AS SI
INNER JOIN ServiceItemTypes AS SIT ON SI.ItemTypeID = SIT.ItemTypeID
INNER JOIN ResourceGroups AS RG ON SIT.GroupID = RG.GroupID
INNER JOIN Services AS S ON SI.ServiceID = S.ServiceID
-WHERE S.ServiceID = @ServiceId
+WHERE S.ServiceID = @ServiceId
AND SIT.TypeName = @ItemTypeName
AND SI.ItemName = @ItemName
AND ((@GroupName IS NULL) OR (@GroupName IS NOT NULL AND RG.GroupName = @GroupName))
-RETURN
+RETURN
GO
-- Hyper-V 2012 R2 Provider
@@ -8928,10 +8967,10 @@ UPDATE [dbo].[Providers] SET [EditorControl] = N'HyperV2012R2', [GroupID] = 33 W
END
GO
-IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetVirtualMachinesPaged2012')
-DROP PROCEDURE GetVirtualMachinesPaged2012
+IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetVirtualMachinesPagedForPC')
+DROP PROCEDURE GetVirtualMachinesPagedForPC
GO
-CREATE PROCEDURE [dbo].[GetVirtualMachinesPaged2012]
+CREATE PROCEDURE [dbo].[GetVirtualMachinesPagedForPC]
(
@ActorID int,
@PackageID int,
@@ -8943,21 +8982,34 @@ CREATE PROCEDURE [dbo].[GetVirtualMachinesPaged2012]
@Recursive bit
)
AS
+
+
-- check rights
IF dbo.CheckActorPackageRights(@ActorID, @PackageID) = 0
-RAISERROR('You are not allowed to access this package', 16, 1)
+BEGIN
+ RAISERROR('You are not allowed to access this package', 16, 1)
+ RETURN
+END
-- start
DECLARE @condition nvarchar(700)
SET @condition = '
-SI.ItemTypeID = 41 -- VPS2012
+SI.ItemTypeID = 35 -- VPS
AND ((@Recursive = 0 AND P.PackageID = @PackageID)
OR (@Recursive = 1 AND dbo.CheckPackageParent(@PackageID, P.PackageID) = 1))
'
-IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
-AND @FilterValue <> '' AND @FilterValue IS NOT NULL
-SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
+IF @FilterValue <> '' AND @FilterValue IS NOT NULL
+BEGIN
+ IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
+ SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
+ ELSE
+ SET @condition = @condition + '
+ AND (ItemName LIKE ''' + @FilterValue + '''
+ OR Username LIKE ''' + @FilterValue + '''
+ OR ExternalIP LIKE ''' + @FilterValue + '''
+ OR IPAddress LIKE ''' + @FilterValue + ''')'
+END
IF @SortColumn IS NULL OR @SortColumn = ''
SET @SortColumn = 'SI.ItemName ASC'
@@ -9030,6 +9082,227 @@ exec sp_executesql @sql, N'@PackageID int, @StartRow int, @MaximumRows int, @Rec
RETURN
GO
+IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetVirtualMachinesPaged2012')
+DROP PROCEDURE GetVirtualMachinesPaged2012
+GO
+CREATE PROCEDURE [dbo].[GetVirtualMachinesPaged2012]
+(
+ @ActorID int,
+ @PackageID int,
+ @FilterColumn nvarchar(50) = '',
+ @FilterValue nvarchar(50) = '',
+ @SortColumn nvarchar(50),
+ @StartRow int,
+ @MaximumRows int,
+ @Recursive bit
+)
+AS
+-- check rights
+IF dbo.CheckActorPackageRights(@ActorID, @PackageID) = 0
+RAISERROR('You are not allowed to access this package', 16, 1)
+
+-- start
+DECLARE @condition nvarchar(700)
+SET @condition = '
+SI.ItemTypeID = 41 -- VPS2012
+AND ((@Recursive = 0 AND P.PackageID = @PackageID)
+OR (@Recursive = 1 AND dbo.CheckPackageParent(@PackageID, P.PackageID) = 1))
+'
+
+IF @FilterValue <> '' AND @FilterValue IS NOT NULL
+BEGIN
+ IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
+ SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
+ ELSE
+ SET @condition = @condition + '
+ AND (ItemName LIKE ''' + @FilterValue + '''
+ OR Username LIKE ''' + @FilterValue + '''
+ OR ExternalIP LIKE ''' + @FilterValue + '''
+ OR IPAddress LIKE ''' + @FilterValue + ''')'
+END
+
+IF @SortColumn IS NULL OR @SortColumn = ''
+SET @SortColumn = 'SI.ItemName ASC'
+
+DECLARE @sql nvarchar(3500)
+
+set @sql = '
+SELECT COUNT(SI.ItemID) FROM Packages AS P
+INNER JOIN ServiceItems AS SI ON P.PackageID = SI.PackageID
+INNER JOIN Users AS U ON P.UserID = U.UserID
+LEFT OUTER JOIN (
+ SELECT PIP.ItemID, IP.ExternalIP FROM PackageIPAddresses AS PIP
+ INNER JOIN IPAddresses AS IP ON PIP.AddressID = IP.AddressID
+ WHERE PIP.IsPrimary = 1 AND IP.PoolID = 3 -- external IP addresses
+) AS EIP ON SI.ItemID = EIP.ItemID
+LEFT OUTER JOIN PrivateIPAddresses AS PIP ON PIP.ItemID = SI.ItemID AND PIP.IsPrimary = 1
+WHERE ' + @condition + '
+
+DECLARE @Items AS TABLE
+(
+ ItemID int
+);
+
+WITH TempItems AS (
+ SELECT ROW_NUMBER() OVER (ORDER BY ' + @SortColumn + ') as Row,
+ SI.ItemID
+ FROM Packages AS P
+ INNER JOIN ServiceItems AS SI ON P.PackageID = SI.PackageID
+ INNER JOIN Users AS U ON P.UserID = U.UserID
+ LEFT OUTER JOIN (
+ SELECT PIP.ItemID, IP.ExternalIP FROM PackageIPAddresses AS PIP
+ INNER JOIN IPAddresses AS IP ON PIP.AddressID = IP.AddressID
+ WHERE PIP.IsPrimary = 1 AND IP.PoolID = 3 -- external IP addresses
+ ) AS EIP ON SI.ItemID = EIP.ItemID
+ LEFT OUTER JOIN PrivateIPAddresses AS PIP ON PIP.ItemID = SI.ItemID AND PIP.IsPrimary = 1
+ WHERE ' + @condition + '
+)
+
+INSERT INTO @Items
+SELECT ItemID FROM TempItems
+WHERE TempItems.Row BETWEEN @StartRow + 1 and @StartRow + @MaximumRows
+
+SELECT
+ SI.ItemID,
+ SI.ItemName,
+ SI.PackageID,
+ P.PackageName,
+ P.UserID,
+ U.Username,
+
+ EIP.ExternalIP,
+ PIP.IPAddress
+FROM @Items AS TSI
+INNER JOIN ServiceItems AS SI ON TSI.ItemID = SI.ItemID
+INNER JOIN Packages AS P ON SI.PackageID = P.PackageID
+INNER JOIN Users AS U ON P.UserID = U.UserID
+LEFT OUTER JOIN (
+ SELECT PIP.ItemID, IP.ExternalIP FROM PackageIPAddresses AS PIP
+ INNER JOIN IPAddresses AS IP ON PIP.AddressID = IP.AddressID
+ WHERE PIP.IsPrimary = 1 AND IP.PoolID = 3 -- external IP addresses
+) AS EIP ON SI.ItemID = EIP.ItemID
+LEFT OUTER JOIN PrivateIPAddresses AS PIP ON PIP.ItemID = SI.ItemID AND PIP.IsPrimary = 1
+'
+
+--print @sql
+
+exec sp_executesql @sql, N'@PackageID int, @StartRow int, @MaximumRows int, @Recursive bit',
+@PackageID, @StartRow, @MaximumRows, @Recursive
+
+RETURN
+GO
+
+IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetVirtualMachinesPaged')
+DROP PROCEDURE GetVirtualMachinesPaged
+GO
+CREATE PROCEDURE [dbo].[GetVirtualMachinesPaged]
+(
+ @ActorID int,
+ @PackageID int,
+ @FilterColumn nvarchar(50) = '',
+ @FilterValue nvarchar(50) = '',
+ @SortColumn nvarchar(50),
+ @StartRow int,
+ @MaximumRows int,
+ @Recursive bit
+)
+AS
+
+
+-- check rights
+IF dbo.CheckActorPackageRights(@ActorID, @PackageID) = 0
+RAISERROR('You are not allowed to access this package', 16, 1)
+
+-- start
+DECLARE @condition nvarchar(700)
+SET @condition = '
+SI.ItemTypeID = 33 -- VPS
+AND ((@Recursive = 0 AND P.PackageID = @PackageID)
+OR (@Recursive = 1 AND dbo.CheckPackageParent(@PackageID, P.PackageID) = 1))
+'
+
+IF @FilterValue <> '' AND @FilterValue IS NOT NULL
+BEGIN
+ IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
+ SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
+ ELSE
+ SET @condition = @condition + '
+ AND (ItemName LIKE ''' + @FilterValue + '''
+ OR Username LIKE ''' + @FilterValue + '''
+ OR ExternalIP LIKE ''' + @FilterValue + '''
+ OR IPAddress LIKE ''' + @FilterValue + ''')'
+END
+
+IF @SortColumn IS NULL OR @SortColumn = ''
+SET @SortColumn = 'SI.ItemName ASC'
+
+DECLARE @sql nvarchar(3500)
+
+set @sql = '
+SELECT COUNT(SI.ItemID) FROM Packages AS P
+INNER JOIN ServiceItems AS SI ON P.PackageID = SI.PackageID
+INNER JOIN Users AS U ON P.UserID = U.UserID
+LEFT OUTER JOIN (
+ SELECT PIP.ItemID, IP.ExternalIP FROM PackageIPAddresses AS PIP
+ INNER JOIN IPAddresses AS IP ON PIP.AddressID = IP.AddressID
+ WHERE PIP.IsPrimary = 1 AND IP.PoolID = 3 -- external IP addresses
+) AS EIP ON SI.ItemID = EIP.ItemID
+LEFT OUTER JOIN PrivateIPAddresses AS PIP ON PIP.ItemID = SI.ItemID AND PIP.IsPrimary = 1
+WHERE ' + @condition + '
+
+DECLARE @Items AS TABLE
+(
+ ItemID int
+);
+
+WITH TempItems AS (
+ SELECT ROW_NUMBER() OVER (ORDER BY ' + @SortColumn + ') as Row,
+ SI.ItemID
+ FROM Packages AS P
+ INNER JOIN ServiceItems AS SI ON P.PackageID = SI.PackageID
+ INNER JOIN Users AS U ON P.UserID = U.UserID
+ LEFT OUTER JOIN (
+ SELECT PIP.ItemID, IP.ExternalIP FROM PackageIPAddresses AS PIP
+ INNER JOIN IPAddresses AS IP ON PIP.AddressID = IP.AddressID
+ WHERE PIP.IsPrimary = 1 AND IP.PoolID = 3 -- external IP addresses
+ ) AS EIP ON SI.ItemID = EIP.ItemID
+ LEFT OUTER JOIN PrivateIPAddresses AS PIP ON PIP.ItemID = SI.ItemID AND PIP.IsPrimary = 1
+ WHERE ' + @condition + '
+)
+
+INSERT INTO @Items
+SELECT ItemID FROM TempItems
+WHERE TempItems.Row BETWEEN @StartRow + 1 and @StartRow + @MaximumRows
+
+SELECT
+ SI.ItemID,
+ SI.ItemName,
+ SI.PackageID,
+ P.PackageName,
+ P.UserID,
+ U.Username,
+
+ EIP.ExternalIP,
+ PIP.IPAddress
+FROM @Items AS TSI
+INNER JOIN ServiceItems AS SI ON TSI.ItemID = SI.ItemID
+INNER JOIN Packages AS P ON SI.PackageID = P.PackageID
+INNER JOIN Users AS U ON P.UserID = U.UserID
+LEFT OUTER JOIN (
+ SELECT PIP.ItemID, IP.ExternalIP FROM PackageIPAddresses AS PIP
+ INNER JOIN IPAddresses AS IP ON PIP.AddressID = IP.AddressID
+ WHERE PIP.IsPrimary = 1 AND IP.PoolID = 3 -- external IP addresses
+) AS EIP ON SI.ItemID = EIP.ItemID
+LEFT OUTER JOIN PrivateIPAddresses AS PIP ON PIP.ItemID = SI.ItemID AND PIP.IsPrimary = 1
+'
+
+--print @sql
+
+exec sp_executesql @sql, N'@PackageID int, @StartRow int, @MaximumRows int, @Recursive bit',
+@PackageID, @StartRow, @MaximumRows, @Recursive
+
+RETURN
+GO
--ES OWA Editing
IF NOT EXISTS (SELECT * FROM SYS.TABLES WHERE name = 'EnterpriseFoldersOwaPermissions')
@@ -9037,8 +9310,8 @@ CREATE TABLE EnterpriseFoldersOwaPermissions
(
ID INT IDENTITY(1,1) NOT NULL PRIMARY KEY,
ItemID INT NOT NULL,
- FolderID INT NOT NULL,
- AccountID INT NOT NULL
+ FolderID INT NOT NULL,
+ AccountID INT NOT NULL
)
GO
@@ -9088,21 +9361,21 @@ CREATE PROCEDURE [dbo].[AddEnterpriseFolderOwaUser]
(
@ESOwsaUserId INT OUTPUT,
@ItemID INT,
- @FolderID INT,
- @AccountID INT
+ @FolderID INT,
+ @AccountID INT
)
AS
INSERT INTO EnterpriseFoldersOwaPermissions
(
ItemID ,
- FolderID,
+ FolderID,
AccountID
)
VALUES
(
@ItemID,
- @FolderID,
- @AccountID
+ @FolderID,
+ @AccountID
)
SET @ESOwsaUserId = SCOPE_IDENTITY()
@@ -9121,7 +9394,7 @@ CREATE PROCEDURE [dbo].[GetEnterpriseFolderOwaUsers]
@FolderID INT
)
AS
-SELECT
+SELECT
EA.AccountID,
EA.ItemID,
EA.AccountType,
@@ -9131,7 +9404,7 @@ SELECT
EA.MailEnabledPublicFolder,
EA.MailboxPlanId,
EA.SubscriberNumber,
- EA.UserPrincipalName
+ EA.UserPrincipalName
FROM EnterpriseFoldersOwaPermissions AS EFOP
LEFT JOIN ExchangeAccounts AS EA ON EA.AccountID = EFOP.AccountID
WHERE EFOP.ItemID = @ItemID AND EFOP.FolderID = @FolderID
@@ -9167,7 +9440,7 @@ CREATE PROCEDURE [dbo].[GetUserEnterpriseFolderWithOwaEditPermission]
@AccountID INT
)
AS
-SELECT
+SELECT
EF.FolderName
FROM EnterpriseFoldersOwaPermissions AS EFOP
LEFT JOIN [dbo].[EnterpriseFolders] AS EF ON EF.EnterpriseFolderID = EFOP.FolderID
@@ -9179,7 +9452,7 @@ GO
IF NOT EXISTS (SELECT * FROM [dbo].[Providers] WHERE [DisplayName] = 'Hosted MS CRM 2015')
BEGIN
-INSERT [dbo].[Providers] ([ProviderId], [GroupId], [ProviderName], [DisplayName], [ProviderType], [EditorControl], [DisableAutoDiscovery])
+INSERT [dbo].[Providers] ([ProviderId], [GroupId], [ProviderName], [DisplayName], [ProviderType], [EditorControl], [DisableAutoDiscovery])
VALUES(1205, 24, N'CRM', N'Hosted MS CRM 2015', N'WebsitePanel.Providers.HostedSolution.CRMProvider2015, WebsitePanel.Providers.HostedSolution.Crm2015', N'CRM2011', NULL)
END
GO
@@ -9208,7 +9481,7 @@ Set @RDSSetupLetterHtmlBody = N'
.Summary A { color: ##0153A4; }
.Summary { font-family: Tahoma; font-size: 9pt; }
.Summary H1 { font-size: 1.7em; color: ##1F4978; border-bottom: dotted 3px ##efefef; }
- .Summary H2 { font-size: 1.3em; color: ##1F4978; }
+ .Summary H2 { font-size: 1.3em; color: ##1F4978; }
.Summary TABLE { border: solid 1px ##e5e5e5; }
.Summary TH,
.Summary TD.Label { padding: 5px; font-size: 8pt; font-weight: bold; background-color: ##f5f5f5; }
@@ -9271,14 +9544,14 @@ UPDATE [dbo].[UserSettings] SET [PropertyValue] = @RDSSetupLetterTextBody WHERE
GO
IF NOT EXISTS (SELECT * FROM [dbo].[ResourceGroups] WHERE GroupName = 'Sharepoint Foundation Server')
-BEGIN
+BEGIN
DECLARE @group_order AS INT
DECLARE @group_controller AS NVARCHAR(1000)
DECLARE @group_id AS INT
DECLARE @provider_id AS INT
UPDATE [dbo].[ResourceGroups] SET GroupName = 'Sharepoint Foundation Server' WHERE GroupName = 'Hosted Sharepoint'
- SELECT @group_order = GroupOrder, @group_controller = GroupController FROM [dbo].[ResourceGroups] WHERE GroupName = 'Sharepoint Foundation Server'
+ SELECT @group_order = GroupOrder, @group_controller = GroupController FROM [dbo].[ResourceGroups] WHERE GroupName = 'Sharepoint Foundation Server'
SELECT TOP 1 @group_id = GroupId + 1 From [dbo].[ResourceGroups] ORDER BY GroupID DESC
SELECT TOP 1 @provider_id = ProviderId + 1 From [dbo].[Providers] ORDER BY ProviderID DESC
UPDATE [dbo].[ResourceGroups] SET GroupOrder = GroupOrder + 1 WHERE GroupOrder > @group_order
@@ -9311,22 +9584,22 @@ CREATE PROCEDURE [dbo].[GetLyncUsers]
@SortColumn nvarchar(40),
@SortDirection nvarchar(20),
@StartRow int,
- @Count int
+ @Count int
)
AS
-CREATE TABLE #TempLyncUsers
-(
+CREATE TABLE #TempLyncUsers
+(
[ID] [int] IDENTITY(1,1) NOT NULL,
- [AccountID] [int],
+ [AccountID] [int],
[ItemID] [int] NOT NULL,
[AccountName] [nvarchar](300) NOT NULL,
[DisplayName] [nvarchar](300) NOT NULL,
[UserPrincipalName] [nvarchar](300) NULL,
[SipAddress] [nvarchar](300) NULL,
[SamAccountName] [nvarchar](100) NULL,
- [LyncUserPlanId] [int] NOT NULL,
- [LyncUserPlanName] [nvarchar] (300) NOT NULL,
+ [LyncUserPlanId] [int] NOT NULL,
+ [LyncUserPlanName] [nvarchar] (300) NOT NULL,
)
DECLARE @condition nvarchar(700)
@@ -9355,9 +9628,9 @@ END
DECLARE @sql nvarchar(3500)
set @sql = '
- INSERT INTO
- #TempLyncUsers
- SELECT
+ INSERT INTO
+ #TempLyncUsers
+ SELECT
ea.AccountID,
ea.ItemID,
ea.AccountName,
@@ -9366,29 +9639,29 @@ set @sql = '
ou.SipAddress,
ea.SamAccountName,
ou.LyncUserPlanId,
- lp.LyncUserPlanName
- FROM
- ExchangeAccounts ea
- INNER JOIN
+ lp.LyncUserPlanName
+ FROM
+ ExchangeAccounts ea
+ INNER JOIN
LyncUsers ou
INNER JOIN
- LyncUserPlans lp
- ON
- ou.LyncUserPlanId = lp.LyncUserPlanId
+ LyncUserPlans lp
ON
+ ou.LyncUserPlanId = lp.LyncUserPlanId
+ ON
ea.AccountID = ou.AccountID
- WHERE
+ WHERE
ea.ItemID = @ItemID ' + @condition
exec sp_executesql @sql, N'@ItemID int',@ItemID
DECLARE @RetCount int
-SELECT @RetCount = COUNT(ID) FROM #TempLyncUsers
+SELECT @RetCount = COUNT(ID) FROM #TempLyncUsers
IF (@SortDirection = 'ASC')
BEGIN
- SELECT * FROM #TempLyncUsers
- WHERE ID > @StartRow AND ID <= (@StartRow + @Count)
+ SELECT * FROM #TempLyncUsers
+ WHERE ID > @StartRow AND ID <= (@StartRow + @Count)
END
ELSE
BEGIN
@@ -9396,32 +9669,32 @@ BEGIN
BEGIN
IF (@SortColumn = 'DisplayName')
BEGIN
- SELECT * FROM #TempLyncUsers
+ SELECT * FROM #TempLyncUsers
WHERE ID >@RetCount - @Count - @StartRow AND ID <= @RetCount- @StartRow ORDER BY DisplayName DESC
END
IF (@SortColumn = 'UserPrincipalName')
BEGIN
- SELECT * FROM #TempLyncUsers
+ SELECT * FROM #TempLyncUsers
WHERE ID >@RetCount - @Count - @StartRow AND ID <= @RetCount- @StartRow ORDER BY UserPrincipalName DESC
END
IF (@SortColumn = 'SipAddress')
BEGIN
- SELECT * FROM #TempLyncUsers
+ SELECT * FROM #TempLyncUsers
WHERE ID >@RetCount - @Count - @StartRow AND ID <= @RetCount- @StartRow ORDER BY SipAddress DESC
END
IF (@SortColumn = 'LyncUserPlanName')
BEGIN
- SELECT * FROM #TempLyncUsers
+ SELECT * FROM #TempLyncUsers
WHERE ID >@RetCount - @Count - @StartRow AND ID <= @RetCount- @StartRow ORDER BY LyncUserPlanName DESC
END
END
ELSE
BEGIN
- SELECT * FROM #TempLyncUsers
+ SELECT * FROM #TempLyncUsers
WHERE ID >@RetCount - @Count - @StartRow AND ID <= @RetCount- @StartRow ORDER BY UserPrincipalName DESC
- END
+ END
END
DROP TABLE #TempLyncUsers
@@ -9488,10 +9761,10 @@ WHERE ' + @condition
print @sql
-exec sp_executesql @sql, N'@ItemID int, @IncludeMailboxes bit',
+exec sp_executesql @sql, N'@ItemID int, @IncludeMailboxes bit',
@ItemID, @IncludeMailboxes
-RETURN
+RETURN
GO
@@ -9506,7 +9779,7 @@ CREATE TABLE [dbo].[RDSServerSettings](
[PropertyValue] [ntext] COLLATE Latin1_General_CI_AS NULL,
[ApplyUsers] [BIT] NOT NULL,
[ApplyAdministrators] [BIT] NOT NULL
- CONSTRAINT [PK_RDSServerSettings] PRIMARY KEY CLUSTERED
+ CONSTRAINT [PK_RDSServerSettings] PRIMARY KEY CLUSTERED
(
[RdsServerId] ASC,
[SettingsName] ASC,
@@ -9528,7 +9801,7 @@ CREATE PROCEDURE GetRDSServerSettings
AS
SELECT RDSServerId, PropertyName, PropertyValue, ApplyUsers, ApplyAdministrators
FROM RDSServerSettings
- WHERE RDSServerId = @ServerId AND SettingsName = @SettingsName
+ WHERE RDSServerId = @ServerId AND SettingsName = @SettingsName
GO
IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'DeleteRDSServerSettings')
@@ -9568,7 +9841,7 @@ INSERT INTO RDSServerSettings
ApplyUsers,
ApplyAdministrators,
PropertyName,
- PropertyValue
+ PropertyValue
)
SELECT
@ServerId,
@@ -9577,7 +9850,7 @@ SELECT
ApplyAdministrators,
PropertyName,
PropertyValue
-FROM OPENXML(@idoc, '/properties/property',1) WITH
+FROM OPENXML(@idoc, '/properties/property',1) WITH
(
PropertyName nvarchar(50) '@name',
PropertyValue ntext '@value',
@@ -9589,7 +9862,7 @@ exec sp_xml_removedocument @idoc
COMMIT TRAN
-RETURN
+RETURN
GO
@@ -9608,24 +9881,27 @@ BEGIN
DELETE FROM Providers WHERE GroupID = @group_id
DELETE FROM Quotas WHERE GroupID = @group_id
DELETE FROM VirtualGroups WHERE GroupID = @group_id
- DELETE FROM ServiceItemTypes WHERE GroupID = @group_id
+ DELETE FROM ServiceItemTypes WHERE GroupID = @group_id
DELETE FROM ResourceGroups WHERE GroupID = @group_id
END
GO
IF NOT EXISTS (SELECT * FROM [dbo].[ServiceItemTypes] WHERE DisplayName = 'SharePointFoundationSiteCollection')
-BEGIN
+BEGIN
DECLARE @group_id AS INT
DECLARE @item_type_id INT
SELECT TOP 1 @item_type_id = ItemTypeId + 1 FROM [dbo].[ServiceItemTypes] ORDER BY ItemTypeId DESC
UPDATE [dbo].[ServiceItemTypes] SET DisplayName = 'SharePointFoundationSiteCollection' WHERE DisplayName = 'SharePointSiteCollection'
- SELECT @group_id = GroupId FROM [dbo].[ResourceGroups] WHERE GroupName = 'Sharepoint Server'
+ SELECT @group_id = GroupId FROM [dbo].[ResourceGroups] WHERE GroupName = 'Sharepoint Server'
- INSERT INTO [dbo].[ServiceItemTypes] (ItemTypeId, GroupId, DisplayName, TypeName, TypeOrder, CalculateDiskSpace, CalculateBandwidth, Suspendable, Disposable, Searchable, Importable, Backupable)
+ INSERT INTO [dbo].[ServiceItemTypes] (ItemTypeId, GroupId, DisplayName, TypeName, TypeOrder, CalculateDiskSpace, CalculateBandwidth, Suspendable, Disposable, Searchable, Importable, Backupable)
(SELECT TOP 1 @item_type_id, @group_id, 'SharePointSiteCollection', TypeName, 100, CalculateDiskSpace, CalculateBandwidth, Suspendable, Disposable, Searchable, Importable, Backupable FROM [dbo].[ServiceItemTypes] WHERE DisplayName = 'SharePointFoundationSiteCollection')
END
+
+
+
GO
UPDATE [dbo].[Quotas] SET GroupID = 45 WHERE QuotaName = 'EnterpriseStorage.DriveMaps'
@@ -9671,7 +9947,7 @@ END
GO
-
+
ALTER PROCEDURE [dbo].[AddServiceItem]
(
@ActorID int,
@@ -9710,9 +9986,9 @@ BEGIN
BEGIN
INSERT INTO ServiceItems (PackageID, ItemTypeID,ServiceID,ItemName,CreatedDate)
VALUES(1, @ItemTypeID, @ServiceID, 'System', @CreatedDate)
-
+
DECLARE @TempItemID int
-
+
SET @TempItemID = SCOPE_IDENTITY()
INSERT INTO ExchangeOrganizations (ItemID, OrganizationID)
VALUES(@TempItemID, 'System')
@@ -9720,7 +9996,7 @@ BEGIN
END
-
+
-- add item
INSERT INTO ServiceItems
(
@@ -9759,7 +10035,7 @@ SELECT
@ItemID,
PropertyName,
PropertyValue
-FROM OPENXML(@idoc, '/properties/property',1) WITH
+FROM OPENXML(@idoc, '/properties/property',1) WITH
(
PropertyName nvarchar(50) '@name',
PropertyValue nvarchar(3000) '@value'
@@ -9772,9 +10048,9 @@ INSERT INTO ServiceItemProperties
PropertyName,
PropertyValue
)
-SELECT
- ItemID,
- PropertyName,
+SELECT
+ ItemID,
+ PropertyName,
PropertyValue
FROM #TempTable
@@ -9784,7 +10060,7 @@ DROP TABLE #TempTable
exec sp_xml_removedocument @idoc
COMMIT TRAN
-RETURN
+RETURN
GO
UPDATE [dbo].[ServiceItemTypes] SET TypeName ='WebsitePanel.Providers.SharePoint.SharePointEnterpriseSiteCollection, WebsitePanel.Providers.Base' WHERE DisplayName = 'SharePointEnterpriseSiteCollection'
@@ -9830,7 +10106,7 @@ Set @UserPasswordExpirationLetterHtmlBody = N'
+
+ Password request notification
+
+
+
+
+
+
+
+
Password request notification
+
+
+
+Hello #user.FirstName#,
+
+
+
+
+Your account have been created. In order to create a password for your account, please follow next link:
+
@@ -10267,7 +10647,7 @@ Set @ExchangeMailboxSetupLetterHtmlBody = N'
@@ -10306,38 +10686,38 @@ Set @ExchangeMailboxSetupLetterHtmlBody = N'https://mail.virtuworks.net/owa
+
Outlook (Windows Clients)
- To configure Outlook 2013 to work with the VirtuWorks servers, please reference:
+ To configure Outlook 2013 to work with the servers, please reference:
@@ -10358,17 +10738,17 @@ Set @ExchangeMailboxSetupLetterHtmlBody = N'Control Panel.
+ Passwords can be changed at any time using Webmail or the Control Panel.
Control Panel
- If you need to change the details of your account, you can easily do this using Control Panel.
+ If you need to change the details of your account, you can easily do this using Control Panel.