Added check "Enterprise Voice Allowed" quota.
In page "Add/Edit Phone numbers" shows only the servers that have a lync service configured. Fix to set focus on the search box when you go to the home page of the panel.
This commit is contained in:
parent
f11d00d4fa
commit
6f67c2b52b
8 changed files with 98 additions and 55 deletions
|
@ -42,12 +42,10 @@ namespace WebsitePanel.Portal.Lync
|
|||
{
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
PackageContext cntx = null;
|
||||
PackageContext cntx = PackagesHelper.GetCachedPackageContext(PanelSecurity.PackageId);
|
||||
|
||||
if (!IsPostBack)
|
||||
{
|
||||
cntx = ES.Services.Packages.GetPackageContext(PanelSecurity.PackageId);
|
||||
|
||||
string[] archivePolicy = ES.Services.Lync.GetPolicyList(PanelRequest.ItemID, LyncPolicyType.Archiving, null);
|
||||
if (archivePolicy != null)
|
||||
{
|
||||
|
@ -95,22 +93,15 @@ namespace WebsitePanel.Portal.Lync
|
|||
*/
|
||||
|
||||
chkRemoteUserAccess.Checked = plan.RemoteUserAccess;
|
||||
|
||||
chkAllowOrganizeMeetingsWithExternalAnonymous.Checked = plan.AllowOrganizeMeetingsWithExternalAnonymous;
|
||||
|
||||
ddTelephony.SelectedIndex = plan.Telephony;
|
||||
Utils.SelectListItem(ddTelephony, plan.Telephony);
|
||||
|
||||
tbServerURI.Text = plan.ServerURI;
|
||||
|
||||
locTitle.Text = plan.LyncUserPlanName;
|
||||
this.DisableControls = true;
|
||||
|
||||
string planArchivePolicy = "";
|
||||
if (plan.ArchivePolicy != null) planArchivePolicy = plan.ArchivePolicy;
|
||||
string planTelephonyDialPlanPolicy = "";
|
||||
if (plan.TelephonyDialPlanPolicy != null) planTelephonyDialPlanPolicy = plan.TelephonyDialPlanPolicy;
|
||||
string planTelephonyVoicePolicy = "";
|
||||
if (plan.TelephonyVoicePolicy != null) planTelephonyVoicePolicy = plan.TelephonyVoicePolicy;
|
||||
string planArchivePolicy = ""; if (plan.ArchivePolicy != null) planArchivePolicy = plan.ArchivePolicy;
|
||||
string planTelephonyDialPlanPolicy = ""; if (plan.TelephonyDialPlanPolicy != null) planTelephonyDialPlanPolicy = plan.TelephonyDialPlanPolicy;
|
||||
string planTelephonyVoicePolicy = ""; if (plan.TelephonyVoicePolicy != null) planTelephonyVoicePolicy = plan.TelephonyVoicePolicy;
|
||||
|
||||
ddArchivingPolicy.Items.Clear();
|
||||
ddArchivingPolicy.Items.Add(new System.Web.UI.WebControls.ListItem(planArchivePolicy.Replace("Tag:", ""), planArchivePolicy));
|
||||
|
@ -119,12 +110,16 @@ namespace WebsitePanel.Portal.Lync
|
|||
ddTelephonyVoicePolicy.Items.Clear();
|
||||
ddTelephonyVoicePolicy.Items.Add(new System.Web.UI.WebControls.ListItem(planTelephonyVoicePolicy.Replace("Tag:", ""), planTelephonyVoicePolicy));
|
||||
|
||||
locTitle.Text = plan.LyncUserPlanName;
|
||||
this.DisableControls = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
chkIM.Checked = true;
|
||||
chkIM.Enabled = false;
|
||||
|
||||
// chkNone.Checked = true; because not used
|
||||
|
||||
if (cntx != null)
|
||||
{
|
||||
foreach (QuotaValueInfo quota in cntx.QuotasArray)
|
||||
|
@ -139,10 +134,6 @@ namespace WebsitePanel.Portal.Lync
|
|||
chkConferencing.Checked = Convert.ToBoolean(quota.QuotaAllocatedValue);
|
||||
chkConferencing.Enabled = Convert.ToBoolean(quota.QuotaAllocatedValue);
|
||||
break;
|
||||
case 375:
|
||||
chkEnterpriseVoice.Checked = Convert.ToBoolean(quota.QuotaAllocatedValue);
|
||||
chkEnterpriseVoice.Enabled = Convert.ToBoolean(quota.QuotaAllocatedValue);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -151,32 +142,29 @@ namespace WebsitePanel.Portal.Lync
|
|||
}
|
||||
}
|
||||
|
||||
bool enterpriseVoiceQuota = Utils.CheckQouta(Quotas.LYNC_ENTERPRISEVOICE, cntx);
|
||||
|
||||
PlanFeaturesTelephony.Visible = enterpriseVoiceQuota;
|
||||
secPlanFeaturesTelephony.Visible = enterpriseVoiceQuota;
|
||||
if (!enterpriseVoiceQuota) Utils.SelectListItem(ddTelephony, "0");
|
||||
|
||||
bool enterpriseVoice = enterpriseVoiceQuota && (ddTelephony.SelectedValue == "2");
|
||||
|
||||
chkEnterpriseVoice.Enabled = false;
|
||||
chkEnterpriseVoice.Checked = false;
|
||||
chkEnterpriseVoice.Checked = enterpriseVoice;
|
||||
pnEnterpriseVoice.Visible = enterpriseVoice;
|
||||
|
||||
pnEnterpriseVoice.Visible = false;
|
||||
pnServerURI.Visible = false;
|
||||
|
||||
switch (ddTelephony.SelectedIndex)
|
||||
switch (ddTelephony.SelectedValue)
|
||||
{
|
||||
case 1:
|
||||
break;
|
||||
case 2:
|
||||
pnEnterpriseVoice.Visible = true;
|
||||
chkEnterpriseVoice.Checked = true;
|
||||
break;
|
||||
case 3:
|
||||
case "3":
|
||||
case "4":
|
||||
pnServerURI.Visible = true;
|
||||
break;
|
||||
case 4:
|
||||
pnServerURI.Visible = true;
|
||||
default:
|
||||
pnServerURI.Visible = false;
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
cntx = PackagesHelper.GetCachedPackageContext(PanelSecurity.PackageId);
|
||||
PlanFeaturesTelephony.Visible = Utils.CheckQouta(Quotas.LYNC_ENTERPRISEVOICE, cntx);
|
||||
secPlanFeaturesTelephony.Visible = PlanFeaturesTelephony.Visible;
|
||||
|
||||
}
|
||||
|
||||
|
@ -220,6 +208,8 @@ namespace WebsitePanel.Portal.Lync
|
|||
{
|
||||
try
|
||||
{
|
||||
PackageContext cntx = PackagesHelper.GetCachedPackageContext(PanelSecurity.PackageId);
|
||||
|
||||
Providers.HostedSolution.LyncUserPlan plan = new Providers.HostedSolution.LyncUserPlan();
|
||||
plan.LyncUserPlanName = txtPlan.Text;
|
||||
plan.IsDefault = false;
|
||||
|
@ -229,8 +219,10 @@ namespace WebsitePanel.Portal.Lync
|
|||
plan.Federation = chkFederation.Checked;
|
||||
plan.Conferencing = chkConferencing.Checked;
|
||||
|
||||
bool enterpriseVoiceQuota = Utils.CheckQouta(Quotas.LYNC_ENTERPRISEVOICE, cntx);
|
||||
bool enterpriseVoice = enterpriseVoiceQuota && (ddTelephony.SelectedValue == "2");
|
||||
|
||||
plan.EnterpriseVoice = chkEnterpriseVoice.Checked;
|
||||
plan.EnterpriseVoice = enterpriseVoice;
|
||||
|
||||
plan.VoicePolicy = LyncVoicePolicyType.None;
|
||||
|
||||
|
@ -259,7 +251,9 @@ namespace WebsitePanel.Portal.Lync
|
|||
|
||||
plan.AllowOrganizeMeetingsWithExternalAnonymous = chkAllowOrganizeMeetingsWithExternalAnonymous.Checked;
|
||||
|
||||
plan.Telephony = ddTelephony.SelectedIndex;
|
||||
int telephonyId = -1;
|
||||
int.TryParse(ddTelephony.SelectedValue, out telephonyId);
|
||||
plan.Telephony = telephonyId;
|
||||
|
||||
plan.ServerURI = tbServerURI.Text;
|
||||
|
||||
|
|
|
@ -75,21 +75,24 @@ namespace WebsitePanel.Portal.Lync
|
|||
|
||||
protected void Page_PreRender(object sender, EventArgs e)
|
||||
{
|
||||
bool EnterpriseVoice = false;
|
||||
PackageContext cntx = PackagesHelper.GetCachedPackageContext(PanelSecurity.PackageId);
|
||||
bool enterpriseVoiceQuota = Utils.CheckQouta(Quotas.LYNC_ENTERPRISEVOICE, cntx);
|
||||
|
||||
bool enterpriseVoice = false;
|
||||
|
||||
WebsitePanel.Providers.HostedSolution.LyncUserPlan plan = planSelector.plan;
|
||||
if (plan != null)
|
||||
EnterpriseVoice = plan.EnterpriseVoice;
|
||||
enterpriseVoice = plan.EnterpriseVoice && enterpriseVoiceQuota && (ddlPhoneNumber.Items.Count > 0);
|
||||
|
||||
pnEnterpriseVoice.Visible = EnterpriseVoice && (ddlPhoneNumber.Items.Count>0);
|
||||
pnEnterpriseVoice.Visible = enterpriseVoice;
|
||||
|
||||
if (!EnterpriseVoice)
|
||||
if (!enterpriseVoice)
|
||||
{
|
||||
ddlPhoneNumber.Text = "";
|
||||
tbPin.Text = "";
|
||||
}
|
||||
|
||||
if (EnterpriseVoice)
|
||||
if (enterpriseVoice)
|
||||
{
|
||||
string[] pinPolicy = ES.Services.Lync.GetPolicyList(PanelRequest.ItemID, LyncPolicyType.Pin, "MinPasswordLength");
|
||||
if (pinPolicy != null)
|
||||
|
@ -115,9 +118,15 @@ namespace WebsitePanel.Portal.Lync
|
|||
if (res.IsSuccess && res.ErrorCodes.Count == 0)
|
||||
{
|
||||
|
||||
PackageContext cntx = PackagesHelper.GetCachedPackageContext(PanelSecurity.PackageId);
|
||||
bool enterpriseVoiceQuota = Utils.CheckQouta(Quotas.LYNC_ENTERPRISEVOICE, cntx);
|
||||
|
||||
string lineUri = "";
|
||||
if (enterpriseVoiceQuota) lineUri = ddlPhoneNumber.SelectedItem.Text + ":" + tbPin.Text;
|
||||
|
||||
//#1
|
||||
LyncUser lyncUser = ES.Services.Lync.GetLyncUserGeneralSettings(PanelRequest.ItemID, accountId);
|
||||
ES.Services.Lync.SetLyncUserGeneralSettings(PanelRequest.ItemID, accountId, lyncUser.SipAddress, ddlPhoneNumber.SelectedItem.Text + ":" + tbPin.Text);
|
||||
ES.Services.Lync.SetLyncUserGeneralSettings(PanelRequest.ItemID, accountId, lyncUser.SipAddress, lineUri);
|
||||
|
||||
Response.Redirect(EditUrl("AccountID", accountId.ToString(), "edit_lync_user",
|
||||
"SpaceID=" + PanelSecurity.PackageId,
|
||||
|
|
|
@ -70,21 +70,24 @@ namespace WebsitePanel.Portal.Lync
|
|||
|
||||
protected void Page_PreRender(object sender, EventArgs e)
|
||||
{
|
||||
bool EnterpriseVoice = false;
|
||||
PackageContext cntx = PackagesHelper.GetCachedPackageContext(PanelSecurity.PackageId);
|
||||
bool enterpriseVoiceQuota = Utils.CheckQouta(Quotas.LYNC_ENTERPRISEVOICE, cntx);
|
||||
|
||||
bool enterpriseVoice = false;
|
||||
|
||||
WebsitePanel.Providers.HostedSolution.LyncUserPlan plan = planSelector.plan;
|
||||
if (plan != null)
|
||||
EnterpriseVoice = plan.EnterpriseVoice;
|
||||
enterpriseVoice = plan.EnterpriseVoice && enterpriseVoiceQuota && (ddlPhoneNumber.Items.Count > 0);
|
||||
|
||||
pnEnterpriseVoice.Visible = EnterpriseVoice && (ddlPhoneNumber.Items.Count>0);
|
||||
pnEnterpriseVoice.Visible = enterpriseVoice;
|
||||
|
||||
if (!EnterpriseVoice)
|
||||
if (!enterpriseVoice)
|
||||
{
|
||||
ddlPhoneNumber.Text = "";
|
||||
tbPin.Text = "";
|
||||
}
|
||||
|
||||
if (EnterpriseVoice)
|
||||
if (enterpriseVoice)
|
||||
{
|
||||
string[] pinPolicy = ES.Services.Lync.GetPolicyList(PanelRequest.ItemID, LyncPolicyType.Pin, "MinPasswordLength");
|
||||
if (pinPolicy != null)
|
||||
|
@ -123,10 +126,16 @@ namespace WebsitePanel.Portal.Lync
|
|||
return;
|
||||
try
|
||||
{
|
||||
PackageContext cntx = PackagesHelper.GetCachedPackageContext(PanelSecurity.PackageId);
|
||||
bool enterpriseVoiceQuota = Utils.CheckQouta(Quotas.LYNC_ENTERPRISEVOICE, cntx);
|
||||
|
||||
string lineUri = "";
|
||||
if (enterpriseVoiceQuota) lineUri = ddlPhoneNumber.SelectedItem.Text + ":" + tbPin.Text;
|
||||
|
||||
LyncUserResult res = ES.Services.Lync.SetUserLyncPlan(PanelRequest.ItemID, PanelRequest.AccountID, Convert.ToInt32(planSelector.planId));
|
||||
if (res.IsSuccess && res.ErrorCodes.Count == 0)
|
||||
{
|
||||
res = ES.Services.Lync.SetLyncUserGeneralSettings(PanelRequest.ItemID, PanelRequest.AccountID, lyncUserSettings.sipAddress, ddlPhoneNumber.SelectedItem.Text + ":" + tbPin.Text);
|
||||
res = ES.Services.Lync.SetLyncUserGeneralSettings(PanelRequest.ItemID, PanelRequest.AccountID, lyncUserSettings.sipAddress, lineUri);
|
||||
}
|
||||
|
||||
if (res.IsSuccess && res.ErrorCodes.Count == 0)
|
||||
|
|
|
@ -30,6 +30,7 @@ using System;
|
|||
using System.Data;
|
||||
using System.Configuration;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Web;
|
||||
using System.Web.Security;
|
||||
using System.Web.UI;
|
||||
|
@ -73,7 +74,15 @@ namespace WebsitePanel.Portal
|
|||
{
|
||||
try
|
||||
{
|
||||
ddlServer.DataSource = ES.Services.Servers.GetServers();
|
||||
ServerInfo[] allServers = ES.Services.Servers.GetServers();
|
||||
List<ServerInfo> servers = new List<ServerInfo>();
|
||||
foreach(ServerInfo server in allServers)
|
||||
{
|
||||
ServiceInfo[] service = ES.Services.Servers.GetServicesByServerIdGroupName(server.ServerId, ResourceGroups.Lync);
|
||||
if (service.Length>0) servers.Add(server);
|
||||
}
|
||||
|
||||
ddlServer.DataSource = servers;
|
||||
ddlServer.DataBind();
|
||||
}
|
||||
catch (Exception ex)
|
||||
|
|
|
@ -30,6 +30,7 @@ using System;
|
|||
using System.Data;
|
||||
using System.Configuration;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Web;
|
||||
using System.Web.Security;
|
||||
using System.Web.UI;
|
||||
|
@ -96,7 +97,16 @@ namespace WebsitePanel.Portal
|
|||
|
||||
private void BindServers()
|
||||
{
|
||||
ddlServer.DataSource = ES.Services.Servers.GetServers();
|
||||
ServerInfo[] allServers = ES.Services.Servers.GetServers();
|
||||
List<ServerInfo> servers = new List<ServerInfo>();
|
||||
foreach (ServerInfo server in allServers)
|
||||
{
|
||||
ServiceInfo[] service = ES.Services.Servers.GetServicesByServerIdGroupName(server.ServerId, ResourceGroups.Lync);
|
||||
if (service.Length > 0) servers.Add(server);
|
||||
}
|
||||
|
||||
ddlServer.DataSource = servers;
|
||||
|
||||
ddlServer.DataBind();
|
||||
ddlServer.Items.Insert(0, new ListItem(GetLocalizedString("Text.NotAssigned"), ""));
|
||||
}
|
||||
|
|
|
@ -79,5 +79,11 @@ namespace WebsitePanel.Portal
|
|||
{
|
||||
ddlFilterColumn.Items.Add(new ListItem(columnTitle, columnName));
|
||||
}
|
||||
|
||||
public override void Focus()
|
||||
{
|
||||
base.Focus();
|
||||
txtFilterValue.Focus();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -67,7 +67,10 @@ namespace WebsitePanel.Portal
|
|||
|
||||
|
||||
gvUsers.Sort("Username", System.Web.UI.WebControls.SortDirection.Ascending);
|
||||
|
||||
}
|
||||
|
||||
searchBox.Focus();
|
||||
}
|
||||
|
||||
public string GetUserHomePageUrl(int userId)
|
||||
|
|
|
@ -44,6 +44,9 @@ namespace WebsitePanel.Portal
|
|||
this.ContainerControl.Visible = (PanelSecurity.SelectedUser.Role != UserRole.User);
|
||||
lnkAllCustomers.NavigateUrl = NavigatePageURL(PortalUtils.GetUserCustomersPageId(),
|
||||
PortalUtils.USER_ID_PARAM, PanelSecurity.SelectedUserId.ToString());
|
||||
|
||||
if (!IsPostBack)
|
||||
txtFilterValue.Focus();
|
||||
}
|
||||
|
||||
private void BindGroupings()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue