?? buddymatchchannel.cs
字號:
?namespace Imps.Client.Pc.Channel
{
using Imps.Client;
using Imps.Client.Core;
using Imps.Client.Pc;
using Imps.Client.Utils;
using Imps.Common;
using System;
using System.Runtime.InteropServices;
using System.Security.Permissions;
using System.Text;
using System.Windows.Forms;
[ComVisible(true), PermissionSet(SecurityAction.Demand, Name="FullTrust")]
public class BuddyMatchChannel : WebPageChannel
{
public BuddyMatchChannel(IFrameworkWindow host) : base(host)
{
}
private byte[] CreatePostData(User user)
{
string s = this.getUrlArguments(user);
return Encoding.UTF8.GetBytes(s);
}
private string getUrlArguments(User user)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat("c={0}", user.SsicUrlEncoded);
builder.AppendFormat("&gender={0}", ((int) user.PersonalInfo.Gender.Value).ToString());
builder.AppendFormat("&province={0}", user.PersonalInfo.Province.Value);
builder.AppendFormat("&city={0}", user.PersonalInfo.City.Value);
builder.AppendFormat("&avatarUrlBase={0}", user.Configuration.SystemSetting.PortraitSetting.UriDownloadPortrait);
builder.AppendFormat("&t={0}", new Random().Next().ToString());
return builder.ToString();
}
public override bool Load(string strUri, string args)
{
string baseUrl = this.BaseUrl;
if (string.IsNullOrEmpty(baseUrl))
{
base.NavigateToBlankPage();
}
else
{
if (!string.IsNullOrEmpty(args))
{
baseUrl = baseUrl + "?" + args + "&";
}
else
{
baseUrl = baseUrl + "?";
}
base.InitUrl = baseUrl + "t=" + new Random().Next().ToString();
ClientLogger.WriteBizOperation("速配", baseUrl);
byte[] postData = this.CreatePostData(base.FrameworkWnd.AccountManager.CurrentUser);
base.InnerWebBrowser.ObjectForScripting = this;
base.InnerWebBrowser.Navigate(base.InitUrl, postData);
}
return true;
}
public void ShowAddBuddyWindow(string sidText)
{
long result = 0L;
long.TryParse(sidText, out result);
base.FrameworkWnd.ContactManager.ShowAddBuddyWindow(null, null, new long?(result), "", null, ContactType.ImpsContact);
}
public void ShowContactDetail(string contactUri)
{
base.FrameworkWnd.ContactManager.ShowContactDetail(contactUri);
}
public void StartConversation(string contactUri)
{
base.FrameworkWnd.ConversationManager.StartConversation(base.FrameworkWnd as Form, ConversationOperation.ImChat, new string[] { contactUri });
}
public void StartIVR(string contactUri)
{
base.FrameworkWnd.IVRManager.StartIVR(base.FrameworkWnd as Form, new string[] { contactUri });
}
private string BaseUrl
{
get
{
return base.FrameworkWnd.AccountManager.CurrentUser.Configuration.SystemSetting.ServerUriSetting.MatchingPortal;
}
}
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -