/// <summary> /// Конструктор. /// </summary> /// <param name="resourceType">Тип внутреннего ресурса janus://</param> /// <param name="parameters">Необработанный параметр запроса.</param> /// <param name="url">Строка запроса.</param> public JanusProtocolInfo(JanusProtocolResourceType resourceType, string parameters, string url) { _originalUrl = url; _resourceType = resourceType; _parameters = parameters ?? string.Empty; _isId = int.TryParse(parameters, out _id); switch (resourceType) { case JanusProtocolResourceType.Message: LinkType = _isId ? LinkType.Local : LinkType.External; break; case JanusProtocolResourceType.MessageAbsent: LinkType = _isId ? LinkType.Absent : LinkType.External; break; case JanusProtocolResourceType.Faq: LinkType = LinkType.Local; break; default: LinkType = LinkType.External; break; } }
/// <summary> /// Возвращает путь к иконке, ассоциированной с ресурсом. /// </summary> /// <param name="provider"></param> /// <param name="resourceType">Тип ресурса.</param> /// <returns>Путь к иконке, которая ассоциирована с ресурсом.</returns> public static string GetResourceImagePath( IServiceProvider provider, JanusProtocolResourceType resourceType) { string name; switch (resourceType) { case JanusProtocolResourceType.FaqList: name = "faqall"; break; case JanusProtocolResourceType.ArticleList: name = "articleall"; break; case JanusProtocolResourceType.UserInfo: name = "ExtBrowser"; break; case JanusProtocolResourceType.UserRating: name = "userratein"; break; case JanusProtocolResourceType.UserOutrating: name = "userrateout"; break; case JanusProtocolResourceType.UserMessages: name = "ShowAllMsgs"; break; case JanusProtocolResourceType.UserMessagesStat: name = "sh_all_msgs"; break; case JanusProtocolResourceType.TeamList: name = "admin"; break; case JanusProtocolResourceType.MessageRate: return(GetImageUri(provider, "RateGroup", StyleImageType.ConstSize)); default: return(GetImageUri(provider, @"ForumImages\webref", StyleImageType.ConstSize)); } return(GetImageUri(provider, name, StyleImageType.Small)); }
/// <summary> /// Возвращает внутреннее строковое имя ресурса для указанного типа. /// </summary> /// <param name="resourceType">Тип ресурса.</param> /// <returns>Строковое имя ресурса.</returns> public static string GetResourceName(JanusProtocolResourceType resourceType) { string resourceName; return(_resourceNames.TryGetValue(resourceType, out resourceName) ? resourceName : string.Empty); }
private static bool Make( JanusProtocolResourceType resourceType, string parameters, string url, out JanusProtocolInfo protocolInfo) { protocolInfo = new JanusProtocolInfo(resourceType, parameters, url); return(true); }
/// <summary> /// Получить внешний формат ссылки для соответствующего ресурса. /// <seealso cref="SiteUrlHelper"/> /// </summary> /// <param name="resourceType">Тип ресурса.</param> /// <param name="parameters">Параметр ссылки.</param> /// <returns>Внешний формат ссылки на ресурс.</returns> public static string FormatExternalURI( JanusProtocolResourceType resourceType, string parameters) { string format; switch (resourceType) { case JanusProtocolResourceType.Faq: format = _externalFaq; break; case JanusProtocolResourceType.FaqList: format = _externalFaqList; break; case JanusProtocolResourceType.Message: format = _externalMessage; break; case JanusProtocolResourceType.UserInfo: format = _externalUserInfo; break; case JanusProtocolResourceType.UserRating: format = _externalUserRating; break; case JanusProtocolResourceType.UserMessages: format = _externalUserMessages; break; case JanusProtocolResourceType.ArticleList: format = _externalArticleList; break; case JanusProtocolResourceType.UserOutrating: format = _externalUserOutrating; break; default: return(string.Empty); } return(string.Format(format, Config.Instance.SiteUrl, parameters)); }
private static bool Make( JanusProtocolResourceType resourceType, string parameters, string url, out JanusProtocolInfo protocolInfo) { protocolInfo = new JanusProtocolInfo(resourceType, parameters, url); return true; }
/// <summary> /// Возвращает внутреннее строковое имя ресурса для указанного типа. /// </summary> /// <param name="resourceType">Тип ресурса.</param> /// <returns>Строковое имя ресурса.</returns> public static string GetResourceName(JanusProtocolResourceType resourceType) { string resourceName; return _resourceNames.TryGetValue(resourceType, out resourceName) ? resourceName : string.Empty; }
/// <summary> /// Получить внутренний формат ссылки для соответствующего <paramref name="resourceType"/>. /// </summary> /// <param name="resourceType">Тип ресурса.</param> /// <param name="parameters">Параметр ссылки.</param> /// <returns>Внутренний формат ссылки.</returns> public static string FormatURI(JanusProtocolResourceType resourceType, string parameters) { return string.Format(_janusProtocolTemplate, _janusProtocolPrefix, GetResourceName(resourceType), _janusProtocolSeparator, parameters); }
/// <summary> /// Получить внешний формат ссылки для соответствующего ресурса. /// <seealso cref="SiteUrlHelper"/> /// </summary> /// <param name="resourceType">Тип ресурса.</param> /// <param name="parameters">Параметр ссылки.</param> /// <returns>Внешний формат ссылки на ресурс.</returns> public static string FormatExternalURI( JanusProtocolResourceType resourceType, string parameters) { string format; switch (resourceType) { case JanusProtocolResourceType.Faq: format = _externalFaq; break; case JanusProtocolResourceType.FaqList: format = _externalFaqList; break; case JanusProtocolResourceType.Message: format = _externalMessage; break; case JanusProtocolResourceType.UserInfo: format = _externalUserInfo; break; case JanusProtocolResourceType.UserRating: format = _externalUserRating; break; case JanusProtocolResourceType.UserMessages: format = _externalUserMessages; break; case JanusProtocolResourceType.ArticleList: format = _externalArticleList; break; case JanusProtocolResourceType.UserOutrating: format = _externalUserOutrating; break; default: return string.Empty; } return string.Format(format, Config.Instance.SiteUrl, parameters); }
private static string FormatURI( JanusProtocolResourceType resourceType, string parameters) { return JanusProtocolDispatcher.FormatURI(resourceType, parameters); }
/// <summary> /// Возвращает путь к иконке, ассоциированной с ресурсом. /// </summary> /// <param name="provider"></param> /// <param name="resourceType">Тип ресурса.</param> /// <returns>Путь к иконке, которая ассоциирована с ресурсом.</returns> public static string GetResourceImagePath( IServiceProvider provider, JanusProtocolResourceType resourceType) { string name; switch (resourceType) { case JanusProtocolResourceType.FaqList : name = "faqall"; break; case JanusProtocolResourceType.ArticleList : name = "articleall"; break; case JanusProtocolResourceType.UserInfo : name = "ExtBrowser"; break; case JanusProtocolResourceType.UserRating : name = "userratein"; break; case JanusProtocolResourceType.UserOutrating : name = "userrateout"; break; case JanusProtocolResourceType.UserMessages : name = "ShowAllMsgs"; break; case JanusProtocolResourceType.UserMessagesStat: name = "sh_all_msgs"; break; case JanusProtocolResourceType.TeamList : name = "admin"; break; case JanusProtocolResourceType.MessageRate: return GetImageUri(provider, "RateGroup", StyleImageType.ConstSize); default: return GetImageUri(provider, @"ForumImages\webref", StyleImageType.ConstSize); } return GetImageUri(provider, name, StyleImageType.Small); }
/// <summary> /// Получить внешний формат ссылки для соответствующего ресурса. /// <seealso cref="SiteUrlHelper"/> /// </summary> /// <param name="resourceType">Тип ресурса.</param> /// <param name="parameters">Параметр ссылки.</param> /// <returns>Внешний формат ссылки на ресурс.</returns> public static string FormatExternalURI(JanusProtocolResourceType resourceType, string parameters) { return(JanusProtocolInfo .FormatExternalURI(resourceType, parameters)); }
/// <summary> /// Получить внутренний формат ссылки для соответствующего <paramref name="resourceType"/>. /// </summary> /// <param name="resourceType">Тип ресурса.</param> /// <param name="parameters">Параметр ссылки.</param> /// <returns>Внутренний формат ссылки.</returns> public static string FormatURI(JanusProtocolResourceType resourceType, string parameters) { return(string.Format(_janusProtocolTemplate, _janusProtocolPrefix, GetResourceName(resourceType), _janusProtocolSeparator, parameters)); }
/// <summary> /// Получить внешний формат ссылки для соответствующего ресурса. /// <seealso cref="SiteUrlHelper"/> /// </summary> /// <param name="resourceType">Тип ресурса.</param> /// <param name="parameters">Параметр ссылки.</param> /// <returns>Внешний формат ссылки на ресурс.</returns> private static string FormatExternalUri(JanusProtocolResourceType resourceType, string parameters) { return(JanusProtocolDispatcher.FormatExternalURI(resourceType, parameters)); }
/// <summary> /// Получить внешний формат ссылки для соответствующего ресурса. /// <seealso cref="SiteUrlHelper"/> /// </summary> /// <param name="resourceType">Тип ресурса.</param> /// <param name="parameters">Параметр ссылки.</param> /// <returns>Внешний формат ссылки на ресурс.</returns> public static string FormatExternalURI(JanusProtocolResourceType resourceType, string parameters) { return JanusProtocolInfo .FormatExternalURI(resourceType, parameters); }