public ActionResult List() { //Инициализируем базу данных MysqlDatabase database = new MysqlDatabase(WebConfigurationManager.AppSettings["ConnectionString"]); //Получаем список шаблонов для текущего пользователя Template[] templates = database.GetTemplates(((User)Session["User"]).UserId); //Рендерим String data = Render.RenderView(this, "List", templates); //Отправляем ответ return Json(new { result = true, data = data }, JsonRequestBehavior.AllowGet); }
/// <summary> /// Функция авторизации пользователя /// При успешной проверке пароля, авторизирует пользователя в системе /// </summary> /// <param name="password">Пароль пользователя</param> /// <returns>Результат авторизации</returns> public bool Authorize(String password) { if (this._AuthState) return true; MysqlDatabase database = new MysqlDatabase(WebConfigurationManager.AppSettings["ConnectionString"]); List<Object[]> result = database.GetUserByCredentials(this.Email, password); if (result.Count != 1) return false; this._UserId = (int)result[0][0]; this._WorkGroupId = (int)result[0][3]; this._AuthState = true; return true; }
/// <summary> /// Проверить имеет ли текущий пользователь права на данный шаблон /// </summary> /// <param name="templateID">ID шаблона</param> /// <returns>Результат проверки</returns> public bool CheckRights(int templateID) { //Инициализируем базу данных MysqlDatabase database = new MysqlDatabase(WebConfigurationManager.AppSettings["ConnectionString"]); return database.CheckRights(templateID, this._UserId); }
/// <summary> /// Удалить шаблон /// </summary> /// <param name="templateID">ID шаблона</param> /// <returns>Успешно ли удаление</returns> public static bool DeleteTemplate(int templateID) { //Удаляем данные шаблона string filePath = WebConfigurationManager.AppSettings["TemplateFolder"] + "\\" + templateID + ".xml"; if (File.Exists(filePath)) File.Delete(filePath); //Инициализируем базу данных MysqlDatabase database = new MysqlDatabase(WebConfigurationManager.AppSettings["ConnectionString"]); bool result = database.DeleteTemplate(templateID); //Возвращаем результат return result; }
/// <summary> /// Создать новый шаблон, вернуть свежесозданную сущность /// </summary> /// <param name="ownerId">ID пользователя, создающего шаблон</param> /// <param name="name">Имя шаблона</param> /// <param name="website">Вебсайт к которому применяется шаблон</param> /// <param name="templateData">Исходник шаблона</param> public static Template CreateTemplate(int ownerId, string name, string website, string templateData) { //Инициализируем базу данных MysqlDatabase database = new MysqlDatabase(WebConfigurationManager.AppSettings["ConnectionString"]); //Создаём шаблон в базе данных Template result = database.CreateNewTemplate(ownerId, name, "http://"+website); //Если есть чего записывать в шаблон, записываем if (templateData != null) { FileInfo template = new FileInfo(WebConfigurationManager.AppSettings["TemplateFolder"] + "\\" + result.Id + ".xml"); using (StreamWriter writer = template.CreateText()) { writer.Write(templateData); } } return result; }