using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Web;
using CP.Cache;
using CP.Common;
using CP.Model;
namespace CP.Business
{
public class Oauth
{
static WMCache cache = WMCache.GetCacheService();
///
/// 生成第三方登录数据.
///
///
///
public static int CreateOauthInfo(OauthInfo info)
{
return OauthData.CreateOauthInfo(info);
}
///
/// 删除某个绑定数据
///
///
public static void DeleteUserOauthInfo(int id, long uid)
{
OauthData.DeleteUserOauthInfo(id, uid);
}
///
/// 某个用户的所有绑定信息
///
///
///
public static List GetUserOauthList(long uid)
{
return OauthData.GetUserOauthList(uid);
}
///
/// 用户第三方登录..
///
///
///
///
///
public static UserInfo UserOauthLogin(string appuid, string access_token, int oauthtype)
{
string ip = Utils.GetRealIP();
return OauthData.UserOauthLogin(appuid, access_token, ip, oauthtype);
}
///
/// 读取QQ互联配置数据
///
///
public static QzoneConfigInfo GetQzoneConfigInfo()
{
string key = CacheKeys.SYSTEM_OAUTH_QQ;
QzoneConfigInfo info = cache.GetObject(key) as QzoneConfigInfo;
if (info == null)
{
try
{
string json = File.ReadAllText(HttpContext.Current.Server.MapPath("~/_data/config/oauth_tencent.conf"));
info = JSONUtil.ParseFormByJson(json);
}
catch (Exception ex)
{
HttpContext.Current.Response.Write(ex.Message);
}
cache.AddObject(key, info, (int)CacheTime.System);
}
return info;
}
///
/// 读取Sina互联配置数据
///
///
public static SinaConfigInfo GetSinaConfigInfo()
{
string key = CacheKeys.SYSTEM_OAUTH_SINA;
SinaConfigInfo info = cache.GetObject(key) as SinaConfigInfo;
if (info == null)
{
try
{
string json = File.ReadAllText(HttpContext.Current.Server.MapPath("~/_data/config/oauth_sina.conf"));
info = JSONUtil.ParseFormByJson(json);
}
catch
{
}
cache.AddObject(key, info, (int)CacheTime.System);
}
return info;
}
}
}