Added global phone list

This commit is contained in:
dev_amdtel 2013-08-21 17:54:59 +04:00
parent f17301bfc1
commit 7e8b3cce52
46 changed files with 3667 additions and 169 deletions

View file

@ -52,9 +52,10 @@
<asp:Localize runat="server" ID="locPhoneNumber" meta:resourcekey="locPhoneNumber" Text="Phone Number:" />
</td>
<td>
<asp:TextBox runat="server" ID="tbPhoneNumber" />
<!-- <asp:TextBox runat="server" ID="tb_PhoneNumber" /> -->
<asp:dropdownlist id="ddlPhoneNumber" Runat="server" CssClass="NormalTextBox"></asp:dropdownlist>
<asp:RegularExpressionValidator ID="PhoneFormatValidator" runat="server"
ControlToValidate="tbPhoneNumber" Display="Dynamic" ValidationGroup="Validation1" SetFocusOnError="true"
ControlToValidate="ddlPhoneNumber" Display="Dynamic" ValidationGroup="Validation1" SetFocusOnError="true"
ValidationExpression="^([0-9])*$"
ErrorMessage="Must contain only numbers.">
</asp:RegularExpressionValidator>

View file

@ -32,6 +32,10 @@ using WebsitePanel.EnterpriseServer;
using WebsitePanel.Providers.HostedSolution;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
namespace WebsitePanel.Portal.Lync
{
@ -43,11 +47,27 @@ namespace WebsitePanel.Portal.Lync
{
WebsitePanel.Providers.HostedSolution.LyncUserPlan[] plans = ES.Services.Lync.GetLyncUserPlans(PanelRequest.ItemID);
BindPhoneNumbers();
if (plans.Length == 0)
btnCreate.Enabled = false;
}
}
private void BindPhoneNumbers()
{
ddlPhoneNumber.Items.Add(new ListItem("<Select Phone>", ""));
PackageIPAddress[] ips = ES.Services.Servers.GetPackageUnassignedIPAddresses(PanelSecurity.PackageId, IPAddressPool.PhoneNumbers);
foreach (PackageIPAddress ip in ips)
{
string phone = ip.ExternalIP;
ddlPhoneNumber.Items.Add(new ListItem(phone, ip.PackageAddressID.ToString()));
}
}
protected void Page_PreRender(object sender, EventArgs e)
{
@ -61,7 +81,7 @@ namespace WebsitePanel.Portal.Lync
if (!EnterpriseVoice)
{
tbPhoneNumber.Text = "";
ddlPhoneNumber.Text = "";
tbPin.Text = "";
}
@ -93,7 +113,7 @@ namespace WebsitePanel.Portal.Lync
//#1
LyncUser lyncUser = ES.Services.Lync.GetLyncUserGeneralSettings(PanelRequest.ItemID, accountId);
ES.Services.Lync.SetLyncUserGeneralSettings(PanelRequest.ItemID, accountId, lyncUser.SipAddress, tbPhoneNumber.Text + ":" + tbPin.Text);
ES.Services.Lync.SetLyncUserGeneralSettings(PanelRequest.ItemID, accountId, lyncUser.SipAddress, ddlPhoneNumber.SelectedItem.Text + ":" + tbPin.Text);
Response.Redirect(EditUrl("AccountID", accountId.ToString(), "edit_lync_user",
"SpaceID=" + PanelSecurity.PackageId,

View file

@ -3,9 +3,10 @@
// This code was generated by a tool.
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace WebsitePanel.Portal.Lync {
@ -15,8 +16,9 @@ namespace WebsitePanel.Portal.Lync {
/// asyncTasks control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::WebsitePanel.Portal.EnableAsyncTasksSupport asyncTasks;
@ -24,8 +26,9 @@ namespace WebsitePanel.Portal.Lync {
/// breadcrumb control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::WebsitePanel.Portal.ExchangeServer.UserControls.Breadcrumb breadcrumb;
@ -33,8 +36,9 @@ namespace WebsitePanel.Portal.Lync {
/// menu control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::WebsitePanel.Portal.ExchangeServer.UserControls.Menu menu;
@ -42,8 +46,9 @@ namespace WebsitePanel.Portal.Lync {
/// Image1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Image Image1;
@ -51,8 +56,9 @@ namespace WebsitePanel.Portal.Lync {
/// locTitle control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Localize locTitle;
@ -60,8 +66,9 @@ namespace WebsitePanel.Portal.Lync {
/// messageBox control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::WebsitePanel.Portal.UserControls.SimpleMessageBox messageBox;
@ -69,8 +76,9 @@ namespace WebsitePanel.Portal.Lync {
/// ExistingUserTable control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlTable ExistingUserTable;
@ -78,8 +86,9 @@ namespace WebsitePanel.Portal.Lync {
/// Localize1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Localize Localize1;
@ -87,8 +96,9 @@ namespace WebsitePanel.Portal.Lync {
/// userSelector control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::WebsitePanel.Portal.ExchangeServer.UserControls.UserSelector userSelector;
@ -96,8 +106,9 @@ namespace WebsitePanel.Portal.Lync {
/// locPlanName control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Localize locPlanName;
@ -105,8 +116,9 @@ namespace WebsitePanel.Portal.Lync {
/// planSelector control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::WebsitePanel.Portal.Lync.UserControls.LyncUserPlanSelector planSelector;
@ -114,8 +126,9 @@ namespace WebsitePanel.Portal.Lync {
/// pnEnterpriseVoice control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Panel pnEnterpriseVoice;
@ -123,26 +136,29 @@ namespace WebsitePanel.Portal.Lync {
/// locPhoneNumber control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Localize locPhoneNumber;
/// <summary>
/// tbPhoneNumber control.
/// ddlPhoneNumber control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox tbPhoneNumber;
protected global::System.Web.UI.WebControls.DropDownList ddlPhoneNumber;
/// <summary>
/// PhoneFormatValidator control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.RegularExpressionValidator PhoneFormatValidator;
@ -150,8 +166,9 @@ namespace WebsitePanel.Portal.Lync {
/// locLyncPin control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Localize locLyncPin;
@ -159,8 +176,9 @@ namespace WebsitePanel.Portal.Lync {
/// tbPin control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox tbPin;
@ -168,8 +186,9 @@ namespace WebsitePanel.Portal.Lync {
/// PinRegularExpressionValidator control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.RegularExpressionValidator PinRegularExpressionValidator;
@ -177,8 +196,9 @@ namespace WebsitePanel.Portal.Lync {
/// btnCreate control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Button btnCreate;
}

View file

@ -56,9 +56,10 @@
<asp:Localize runat="server" ID="locPhoneNumber" meta:resourcekey="locPhoneNumber" Text="Phone Number:" />
</td>
<td>
<asp:TextBox runat="server" ID="tbPhoneNumber" />
<!-- <asp:TextBox runat="server" ID="tb_PhoneNumber" /> -->
<asp:dropdownlist id="ddlPhoneNumber" Runat="server" CssClass="NormalTextBox"></asp:dropdownlist>
<asp:RegularExpressionValidator ID="PhoneFormatValidator" runat="server"
ControlToValidate="tbPhoneNumber" Display="Dynamic" ValidationGroup="Validation1" SetFocusOnError="true"
ControlToValidate="ddlPhoneNumber" Display="Dynamic" ValidationGroup="Validation1" SetFocusOnError="true"
ValidationExpression="^([0-9])*$"
ErrorMessage="Must contain only numbers.">
</asp:RegularExpressionValidator>

View file

@ -31,6 +31,11 @@ using WebsitePanel.EnterpriseServer;
using WebsitePanel.Providers.ResultObjects;
using WebsitePanel.Providers.HostedSolution;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
namespace WebsitePanel.Portal.Lync
{
public partial class EditLyncUser : WebsitePanelModuleBase
@ -39,9 +44,27 @@ namespace WebsitePanel.Portal.Lync
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindPhoneNumbers();
BindItems();
}
}
private void BindPhoneNumbers()
{
ddlPhoneNumber.Items.Add(new ListItem("<Select Phone>", ""));
PackageIPAddress[] ips = ES.Services.Servers.GetPackageUnassignedIPAddresses(PanelSecurity.PackageId, IPAddressPool.PhoneNumbers);
foreach (PackageIPAddress ip in ips)
{
string phone = ip.ExternalIP;
ddlPhoneNumber.Items.Add(new ListItem(phone, phone));
}
}
protected void Page_PreRender(object sender, EventArgs e)
{
bool EnterpriseVoice = false;
@ -54,7 +77,7 @@ namespace WebsitePanel.Portal.Lync
if (!EnterpriseVoice)
{
tbPhoneNumber.Text = "";
ddlPhoneNumber.Text = "";
tbPin.Text = "";
}
@ -88,7 +111,7 @@ namespace WebsitePanel.Portal.Lync
planSelector.planId = lyncUser.LyncUserPlanId.ToString();
lyncUserSettings.sipAddress = lyncUser.SipAddress;
tbPhoneNumber.Text = lyncUser.LineUri;
Utils.SelectListItem(ddlPhoneNumber, lyncUser.LineUri);
}
protected void btnSave_Click(object sender, EventArgs e)
@ -100,7 +123,7 @@ namespace WebsitePanel.Portal.Lync
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, tbPhoneNumber.Text + ":" + tbPin.Text);
res = ES.Services.Lync.SetLyncUserGeneralSettings(PanelRequest.ItemID, PanelRequest.AccountID, lyncUserSettings.sipAddress, ddlPhoneNumber.SelectedItem.Text + ":" + tbPin.Text);
}
if (res.IsSuccess && res.ErrorCodes.Count == 0)

View file

@ -3,9 +3,10 @@
// This code was generated by a tool.
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace WebsitePanel.Portal.Lync {
@ -15,8 +16,9 @@ namespace WebsitePanel.Portal.Lync {
/// asyncTasks control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::WebsitePanel.Portal.EnableAsyncTasksSupport asyncTasks;
@ -24,8 +26,9 @@ namespace WebsitePanel.Portal.Lync {
/// breadcrumb control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::WebsitePanel.Portal.ExchangeServer.UserControls.Breadcrumb breadcrumb;
@ -33,8 +36,9 @@ namespace WebsitePanel.Portal.Lync {
/// menu control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::WebsitePanel.Portal.ExchangeServer.UserControls.Menu menu;
@ -42,8 +46,9 @@ namespace WebsitePanel.Portal.Lync {
/// Image1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Image Image1;
@ -51,8 +56,9 @@ namespace WebsitePanel.Portal.Lync {
/// locTitle control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Localize locTitle;
@ -60,8 +66,9 @@ namespace WebsitePanel.Portal.Lync {
/// litDisplayName control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Literal litDisplayName;
@ -69,8 +76,9 @@ namespace WebsitePanel.Portal.Lync {
/// messageBox control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::WebsitePanel.Portal.UserControls.SimpleMessageBox messageBox;
@ -78,8 +86,9 @@ namespace WebsitePanel.Portal.Lync {
/// locPlanName control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Localize locPlanName;
@ -87,8 +96,9 @@ namespace WebsitePanel.Portal.Lync {
/// planSelector control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::WebsitePanel.Portal.Lync.UserControls.LyncUserPlanSelector planSelector;
@ -96,8 +106,9 @@ namespace WebsitePanel.Portal.Lync {
/// locSipAddress control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Localize locSipAddress;
@ -105,8 +116,9 @@ namespace WebsitePanel.Portal.Lync {
/// lyncUserSettings control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::WebsitePanel.Portal.Lync.UserControls.LyncUserSettings lyncUserSettings;
@ -114,8 +126,9 @@ namespace WebsitePanel.Portal.Lync {
/// pnEnterpriseVoice control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Panel pnEnterpriseVoice;
@ -123,26 +136,39 @@ namespace WebsitePanel.Portal.Lync {
/// locPhoneNumber control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Localize locPhoneNumber;
/// <summary>
/// tbPhoneNumber control.
/// tb_PhoneNumber control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox tbPhoneNumber;
protected global::System.Web.UI.WebControls.TextBox tb_PhoneNumber;
/// <summary>
/// ddlPhoneNumber control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.DropDownList ddlPhoneNumber;
/// <summary>
/// PhoneFormatValidator control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.RegularExpressionValidator PhoneFormatValidator;
@ -150,8 +176,9 @@ namespace WebsitePanel.Portal.Lync {
/// locLyncPin control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Localize locLyncPin;
@ -159,8 +186,9 @@ namespace WebsitePanel.Portal.Lync {
/// tbPin control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox tbPin;
@ -168,8 +196,9 @@ namespace WebsitePanel.Portal.Lync {
/// PinRegularExpressionValidator control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.RegularExpressionValidator PinRegularExpressionValidator;
@ -177,8 +206,9 @@ namespace WebsitePanel.Portal.Lync {
/// btnSave control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Button btnSave;
}