/// <summary> /// Обновляется информация по сайту /// </summary> /// <param name="item">модель сайта</param> /// <returns></returns> public override bool updateSiteInfo(SitesModel item) { using (var db = new CMSdb(_context)) { db.cms_sitess .Set(u => u.c_name, item.Title) .Set(u => u.c_name_long, item.LongTitle) .Set(u => u.c_alias, item.Alias) .Set(s => s.c_phone, item.Phone) .Set(s => s.c_fax, item.Fax) .Set(s => s.c_email, item.Email) .Set(s => s.c_tech_email, item.TechEmail) .Set(s => s.c_order_email, item.OrderEmail) .Set(s => s.c_url, item.Site) .Set(s => s.c_worktime, item.Worktime) .Set(u => u.c_scripts, item.Scripts) .Set(u => u.c_facebook, item.Facebook) .Set(u => u.c_vk, item.Vk) .Set(u => u.c_instagramm, item.Instagramm) .Set(u => u.c_odnoklassniki, item.Odnoklassniki) .Set(u => u.c_twitter, item.Twitter) .Set(u => u.c_adress, item.Adress) .Set(s => s.d_coord_x, (decimal)item.CoordX) .Set(s => s.d_coord_y, (decimal)item.CoordY) .Update(); return(true); } }
/// <summary> /// добавление сайта /// </summary> /// <param name="site"></param> /// <returns></returns> public bool InsertSite(SitesModel site) { using (var db = new CMSdb(_context)) { using (var tr = db.BeginTransaction()) { InsertLog(new LogModel { PageId = site.Id, PageName = site.Title, Section = LogModule.Sites, Action = LogAction.insert }); bool result = db.core_sites .Insert( () => new core_sites { id = site.Id, c_name = site.Title, b_disabled = site.Disabled }) > 0; tr.Commit(); return(result); } } }
public ActionResult Update(SitesModel SitesObj) { //------------------------------------------ //Check ModelState //------------------------------------------ if (!ModelState.IsValid) { return(new HttpStatusCodeResult(HttpStatusCode.InternalServerError, "Invalid data")); } //------------------------------------------ try { bool result = SitesFactor.Update(SitesObj); if (result == true) { return(List(1, 25, null, null, null, null)); } else { return(new HttpStatusCodeResult(HttpStatusCode.InternalServerError, "Saving operation faild")); } } catch (Exception ex) { return(new HttpStatusCodeResult(HttpStatusCode.InternalServerError, ex.Message)); } }
//------------------------------------------------------------------------------------------------------ #endregion #region /*--------- Update ---------*\ //------------------------------------------------------------------------------------------------------ /// <summary> /// Converts the object properties to SQL paramters and executes the update procedure. /// </summary> /// <param name="SitesObj">Model object.</param> /// <returns>The result of update query.</returns> //-------------------------------------------------------------------- public bool Update(SitesModel SitesObj) { bool result = false; using (SqlConnection myConnection = GetSqlConnection()) { SqlCommand myCommand = new SqlCommand("[dbo].[Sites_Update]", myConnection); myCommand.CommandType = CommandType.StoredProcedure; //---------------------------------------------------------------------------------------------- // Set the parameters //---------------------------------------------------------------------------------------------- myCommand.Parameters.Add("@SiteID", SqlDbType.Int, 4).Value = SitesObj.SiteID; myCommand.Parameters.Add("@Name", SqlDbType.NVarChar, 128).Value = SitesObj.Name; myCommand.Parameters.Add("@Url", SqlDbType.NVarChar, 128).Value = SitesObj.Url; myCommand.Parameters.Add("@PhotoFile", SqlDbType.NVarChar, 128).Value = SitesObj.PhotoFile; myCommand.Parameters.Add("@LogoFile", SqlDbType.NVarChar, 128).Value = SitesObj.LogoFile; myCommand.Parameters.Add("@Brief", SqlDbType.NVarChar, 512).Value = SitesObj.Brief; myCommand.Parameters.Add("@Address", SqlDbType.NVarChar, 128).Value = SitesObj.Address; myCommand.Parameters.Add("@AgencyTypeID", SqlDbType.Int, 4).Value = SitesObj.AgencyTypeID; myCommand.Parameters.Add("@BusinessSectionID", SqlDbType.Int, 4).Value = SitesObj.BusinessSectionID; myCommand.Parameters.Add("@CountryID", SqlDbType.Int, 4).Value = SitesObj.CountryID; //---------------------------------------------------------------------------------------------- // Execute the command //---------------------------------------------------------------------------------------------- myConnection.Open(); if (myCommand.ExecuteNonQuery() > 0) { result = true; } myConnection.Close(); return result; //---------------------------------------------------------------------------------------------- } }
//------------------------------------------------------------------------------------------------------ #endregion #region --------------GetObject-------------- //------------------------------------------------------------------------------------------------------ /// <summary> /// Gets the spesific record. /// </summary> /// <param name="ID">The model id.</param> /// <returns>Model object.</returns> //-------------------------------------------------------------------- public static SitesModel GetObject(int SiteID) { SitesModel SitesObj = null; List <SitesModel> list = SitesSqlDataPrvider.Instance.Get(SiteID); if (list != null && list.Count > 0) { SitesObj = list[0]; } return(SitesObj); }
private void InitializeDemoData() { var site1 = new SitesModel() { Id = 1, Site = "IGMH" }; var site2 = new SitesModel() { Id = 2, Site = "FARUKOLHU" }; this.SiteList.Add(site1); this.SiteList.Add(site2); }
public SitesModel GetSites(NexposeManager manager) { try { string jsonResponse = manager.GetSites(); SitesModel sitesModel = new SitesModel(); sitesModel = JsonConvert.DeserializeObject <SitesModel>(jsonResponse); return(sitesModel); } catch (Exception ex) { Console.WriteLine("ScanController::GetSites \nException: " + ex.Message); return(null); } }
public ActionResult GetObject(int id) { try { SitesModel SitesObj = SitesFactor.GetObject(id); if (SitesObj == null) { SitesObj = new SitesModel(); } return(Json(SitesObj, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { return(new HttpStatusCodeResult(HttpStatusCode.InternalServerError, ex.Message)); } }
// GET: Sites public ActionResult Index(int page = 1) { int rowCount = 0; var model = new SitesModel { ListSites = new Sites().GetPage(0, CmsConstants.RowAmount20, page > 0 ? page - 1 : page, "SiteId Desc", "", "", ref rowCount), RowCount = rowCount, Pagination = new PaginationModel { TotalPage = rowCount, PageSize = CmsConstants.RowAmount20, LinkLimit = 5, PageIndex = page } }; return(View(model)); }
/// <summary> /// Обновление сайта /// </summary> /// <param name="id"></param> /// <param name="upd"></param> /// <returns></returns> public override bool updateSite(Guid id, SitesModel upd) { using (var db = new CMSdb(_context)) { using (var tran = db.BeginTransaction()) { var data = db.cms_sitess.Where(w => w.id == id); if (data.Any()) { data .Set(s => s.c_name, upd.Title) .Set(s => s.c_phone, upd.Phone) .Set(s => s.c_fax, upd.Fax) .Set(s => s.c_email, upd.Email) .Set(s => s.c_url, upd.Site) .Set(s => s.c_worktime, upd.Worktime) .Set(s => s.c_scripts, upd.Scripts) .Set(s => s.b_site_off, upd.SiteOff) .Update(); //Логирование var log = new LogModel() { Site = _domain, Section = LogSection.Sites, Action = LogAction.update, PageId = upd.Id, PageName = upd.Title, UserId = _currentUserId, IP = _ip, }; insertLog(log); tran.Commit(); return(true); } return(false); } } }
public async Task <Result> Handle(ListSiteQuery request, CancellationToken cancellationToken) { Result result; try { Expression <Func <Site, bool> > filter = _siteOdataProvider.GetFilterPredicate(request.Filter); int?skip = request.Skip.ToNullableInt(); int?top = request.Top.ToNullableInt(); var siteDomains = await _siteReadRepository.ListAsync(filter, skip, top); var siteModels = _mapper.Map <IEnumerable <SiteModel> >(siteDomains); var count = siteModels.Count(); var siteModel = new SitesModel { Value = siteModels, Count = count, NextLink = null }; result = Result.Ok(siteModel); } catch (FilterODataException) { result = Result.Fail(new System.Collections.Generic.List <Failure>() { new HandlerFault() { Code = HandlerFaultCode.InvalidQueryFilter.Name, Message = HandlerFailures.InvalidQueryFilter, Target = "$filter" } } ); } catch { result = Result.Fail(CustomFailures.ListSiteFailure); } return(result); }
public bool UpdateSite(SitesModel site) { using (var db = new CMSdb(_context)) { using (var tr = db.BeginTransaction()) { InsertLog(new LogModel { PageId = site.Id, PageName = site.Title, Section = LogModule.Sites, Action = LogAction.update }); bool result = db.core_sites .Where(w => w.id == site.Id) .Set(s => s.c_name, site.Title) .Set(s => s.b_disabled, site.Disabled) .Update() > 0; tr.Commit(); return(result); } } }
protected override void OnActionExecuting(ActionExecutingContext filterContext) { cmsRepository.DislyEvent += CmsRepository_DislyEvent; base.OnActionExecuting(filterContext); ControllerName = filterContext.RouteData.Values["Controller"].ToString().ToLower(); ActionName = filterContext.RouteData.Values["Action"].ToString().ToLower(); Guid _PageId; try { Domain = _cmsRepository.getSiteId(Request.Url.Host.ToLower().Replace("www.", "")); } catch (Exception ex) { if (Request.Url.Host.ToLower().Replace("www.", "") != ConfigurationManager.AppSettings["BaseURL"]) { filterContext.Result = Redirect("/Error/"); } else { Domain = String.Empty; } AppLogger.Debug("CoreController: Не получилось определить Domain", ex); } ViewBag.Domain = Domain; StartUrl = "/Admin/" + (String)RouteData.Values["controller"] + "/"; #region Настройки сайта //SettingsInfo = _cmsRepository.getCmsSettings(); // Сайт, на котором находимся //if (Domain != String.Empty) SettingsInfo.ThisSite = _cmsRepository.getSite(Domain); #endregion #region Данные об авторизованном пользователе Guid _userId = new Guid(); try { _userId = new Guid(System.Web.HttpContext.Current.User.Identity.Name); } catch { FormsAuthentication.SignOut(); } AccountInfo = _accountRepository.getCmsAccount(_userId); // Список доменов, доступных пользователю AccountInfo.Domains = _accountRepository.getUserDomains(_userId); #endregion #region Права пользователя UserResolutionInfo = _accountRepository.getCmsUserResolutioInfo(_userId, ControllerName); // Если нет прав на проссмотр, то направляем на главную try { if (!UserResolutionInfo.Read) { filterContext.Result = Redirect("/Admin/"); } } catch { } #endregion #region Ограничение пользователя (не администратора портала и не разработчика) на доступ только к своим сайтам (доменам) int IsRedirect = 0; SiteInfo = _cmsRepository.getSite(); // информация по сайту if (AccountInfo.Group.ToLower() != "developer" && AccountInfo.Group.ToLower() != "administrator") { if (AccountInfo.Domains != null) { foreach (DomainList domain in AccountInfo.Domains) { if (domain.SiteId == Domain) { IsRedirect++; } } } //перенаправляем на первый из своих доменов if (IsRedirect == 0) { string url = "http://" + AccountInfo.Domains[0].DomainName + "/Admin/"; Response.Redirect(url, true); } } #endregion #region Логи try { _PageId = Guid.Parse(filterContext.RouteData.Values["id"].ToString()); LogInfo = _cmsRepository.getCmsPageLog(_PageId); } catch { } #endregion }
// !!!! Далее для всех методов не нужно передавать Guid user, string ip пользователя, изменившего запись //public abstract bool updateSiteInfo(SitesModel item, Guid user, string ip); public abstract bool updateSiteInfo(SitesModel item);
public abstract bool insertSite(SitesModel ins);
protected override void OnActionExecuting(ActionExecutingContext filterContext) { base.OnActionExecuting(filterContext); Domain = "main"; #region Получаем данные из адресной строки //Частные случаи (model.CurrentPage = null) рассматриваем в самих контроллерах _alias = ""; _path = "/"; var url = HttpContext.Request.Url.AbsolutePath.ToLower(); //Сюда попадаем еще, если на странице есть картинки или файлы if (url.LastIndexOf(".") > -1) { return; } //Обрезаем query string (Все, что после ? ) if (url.LastIndexOf("?") > -1) { url = url.Substring(0, url.LastIndexOf("?")); } //Сегменты пути var segments = url.Split(new char[] { '/' }, StringSplitOptions.RemoveEmptyEntries); if (segments != null && segments.Count() > 0) { _alias = segments.Last(); if (segments.Count() > 1) { _path = string.Join("/", segments.Take(segments.Length - 1)); _path = string.Format("/{0}/", _path); } } currentPage = _repository.getSiteMap(_path, _alias); #endregion HttpCookie MyCookie = Request.Cookies["order-id"]; if (User.Identity.IsAuthenticated) { UserInfo = _repository.getCustomer(new Guid(User.Identity.Name)); if (UserInfo != null) { OrderId = _repository.getOrderId(UserInfo.Id); } } else { OrderId = (MyCookie != null) ? Guid.Parse(HttpUtility.UrlDecode(MyCookie.Value, Encoding.UTF8)) : Guid.Empty; if (MyCookie != null && !_repository.CheckOrder(OrderId)) { MyCookie.Expires = DateTime.Now.AddDays(-1); Response.Cookies.Add(MyCookie); } } ViewName = _repository.getView(filterContext.RouteData.Values["Controller"].ToString().ToLower()); siteModel = _repository.getSiteInfo(); }
/// <summary> /// Добавление сайта /// </summary> /// <param name="ins"></param> /// <returns></returns> public override bool insertSite(SitesModel ins) { using (var db = new CMSdb(_context)) { using (var tran = db.BeginTransaction()) { //проверка на существование строк с таким же алиасом if (!db.cms_sitess.Where(w => w.c_alias == ins.Alias).Any()) { db.cms_sitess .Value(v => v.id, ins.Id) .Value(v => v.c_alias, ins.Alias) .Value(v => v.c_name, ins.Title) .Value(v => v.c_name_long, ins.Title) .Value(v => v.c_content_type, ins.Type) .Value(v => v.f_content, ins.ContentId) .Value(v => v.c_theme, "blue") .Insert(); //добавление шаблонов к новому сайту var default_view = db.front_sections; if (default_view.Any()) { foreach (var item in default_view.ToArray()) { db.front_site_sections .Value(v => v.f_site, ins.Alias) .Value(v => v.f_front_section, item.c_alias) .Value(v => v.f_page_view, item.c_default_view) .Insert(); } } //назначение пользователям(разработчикам и администраторам портала) прав к созданному сайту var UserList = db.cms_users_groups.Where(w => (w.c_alias == "Developer" || w.c_alias == "administrator")) .Join(db.cms_userss, e => e.c_alias, o => o.f_group, (e, o) => o).Select(s => s.id).ToArray(); foreach (var item in UserList) { db.cms_user_site_links .Value(v => v.f_user, item) .Value(v => v.f_site, ins.Alias) .Insert(); } #region Значение по умолчанию string domain_source = "template-site"; switch (ins.Type)//по типу сайта определяется шаблон для дублирования информации { case "org": domain_source = "template-site"; break; case "spec": domain_source = "template-site-gs"; break; case "event": domain_source = "template-site-event"; break; } //db.dublicate_content_sitemap(domain_source, ins.Alias); var sitemap_val = db.content_sitemaps.Where(w => w.f_site == domain_source && w.uui_parent == null).ToArray(); #endregion #region Доменные имена if (ins.DomainListArray != null && ins.DomainListArray.Count() > 0) { foreach (var d in ins.DomainListArray) { db.cms_sites_domainss .Value(v => v.f_site, ins.Alias) .Value(v => v.c_domain, d) .Insert(); } } #endregion // логирование var log = new LogModel() { Site = _domain, Section = LogSection.Sites, Action = LogAction.insert, PageId = ins.Id, PageName = ins.Title, UserId = _currentUserId, IP = _ip, }; insertLog(log); tran.Commit(); return(true); } return(false); } } }
public abstract bool updateSite(Guid id, SitesModel ins);
/// <summary> /// Bu fonksiyon yeni bir Tarama oluşturur ve oluşturulan ID'yi ekrana yazar. /// This function creates a new Scan and created ID writes to the screen. /// </summary> /// <param name="manager"></param> public static void CreateScan(NexposeManager manager) { ScanController = new ScanController(); try { string selected = ""; do { Console.Write("Yeni Varlık Oluşturmak İstiyor musunuz? (E/H)"); selected = Console.ReadLine(); string responseId = ""; if (selected.ToUpper() == "E") { //Profile Name is scan settings namely it is policy. Profile Adı tarama ayarlarıdır yani policydir. Console.WriteLine("Varlık Adı Giriniz."); string siteName = Console.ReadLine(); string scanProfileName = ListAndSelectTemplate(manager); string targetURL = SelectTargetURL(); SiteCreateModel siteCreate = new SiteCreateModel(siteName, targetURL, scanProfileName); responseId = ScanController.CreateSite(manager, siteCreate); } else if (selected.ToUpper() == "H") { //Varlıkları Listele SitesModel sitesModel = ScanController.GetSites(manager); int counter = 1; if (sitesModel.Resources.Length == 0) { Console.WriteLine("Herhangi bir varlık bulunmamaktadır. Öncelikle yeni bir varlık oluşturunuz."); break; } foreach (var item in sitesModel.Resources) { Console.WriteLine(counter + ") " + item.Name); counter += 1; } Console.WriteLine("Site Numarasını giriniz: "); int id = Convert.ToInt32(Console.ReadLine()); ScanCreate scanCreate = new ScanCreate(null, sitesModel.Resources[id - 1].ScanTemplate); ScanCreateResponse scanCreateResponse = ScanController.CreateScan(manager, id.ToString(), scanCreate); if (scanCreateResponse.Id > 0) { Console.WriteLine("Tarama Oluşturuldu. Tarama ID: " + scanCreateResponse.Id); break; } } else { Console.WriteLine("Geçersiz Seçim"); } } while (selected != "E" & selected != "H"); //ScanCreate scanCreate = new ScanCreate(scanProfileName, targetURL); //string json = JsonConvert.SerializeObject(scanCreate); //if (responseJson == null) //{ // Console.WriteLine("Sistemde herhangi bir tarama mevcut ise öncelikle onu siliniz."); // return; //} //ScanCreateResponse scanCreateResponse = JsonConvert.DeserializeObject<ScanCreateResponse>(responseJson); //Console.WriteLine("Oluşturulan Tarama ID: " + scanCreateResponse.ID); } catch (Exception ex) { Console.WriteLine("ScanView::CreateScan Exception: " + ex.Message); } }
//------------------------------------------------------------------------------------------------------ #endregion #region --------------Update-------------- //------------------------------------------------------------------------------------------------------ /// <summary> /// Updates model object by calling sql data provider update method. /// </summary> /// <param name="SitesObj">The model object.</param> /// <returns>The result of update operation.</returns> //-------------------------------------------------------------------- public static bool Update(SitesModel SitesObj) { return(SitesSqlDataPrvider.Instance.Update(SitesObj)); }
//------------------------------------------------------------------------------------------------------ #endregion #region /*--------- PopulateModelFromIDataReader ---------*\ //------------------------------------------------------------------------------------------------------ /// <summary> /// Populates model from IDataReader . /// </summary> /// <param name="reader"></param> /// <returns>Model object.</returns> //-------------------------------------------------------------------- private SitesModel PopulateModelFromIDataReader(IDataReader reader) { //Create a new object SitesModel SitesObj = new SitesModel(); //Fill the object with data //------------------------------------------------ //[SiteID] //------------------------------------------------ if (reader["SiteID"] != DBNull.Value) SitesObj.SiteID = (int)reader["SiteID"]; //------------------------------------------------ //------------------------------------------------ //[Name] //------------------------------------------------ if (reader["Name"] != DBNull.Value) SitesObj.Name = (string)reader["Name"]; //------------------------------------------------ //------------------------------------------------ //[Url] //------------------------------------------------ if (reader["Url"] != DBNull.Value) SitesObj.Url = (string)reader["Url"]; //------------------------------------------------ //------------------------------------------------ //[PhotoFile] //------------------------------------------------ if (reader["PhotoFile"] != DBNull.Value) SitesObj.PhotoFile = (string)reader["PhotoFile"]; //------------------------------------------------ //------------------------------------------------ //[LogoFile] //------------------------------------------------ if (reader["LogoFile"] != DBNull.Value) SitesObj.LogoFile = (string)reader["LogoFile"]; //------------------------------------------------ //------------------------------------------------ //[Brief] //------------------------------------------------ if (reader["Brief"] != DBNull.Value) SitesObj.Brief = (string)reader["Brief"]; //------------------------------------------------ //------------------------------------------------ //[Address] //------------------------------------------------ if (reader["Address"] != DBNull.Value) SitesObj.Address = (string)reader["Address"]; //------------------------------------------------ //------------------------------------------------ //[AgencyTypeID] //------------------------------------------------ if (reader["AgencyTypeID"] != DBNull.Value) SitesObj.AgencyTypeID = (int)reader["AgencyTypeID"]; //------------------------------------------------ //------------------------------------------------ //[BusinessSectionID] //------------------------------------------------ if (reader["BusinessSectionID"] != DBNull.Value) SitesObj.BusinessSectionID = (int)reader["BusinessSectionID"]; //------------------------------------------------ //------------------------------------------------ //[CountryID] //------------------------------------------------ if (reader["CountryID"] != DBNull.Value) SitesObj.CountryID = (int)reader["CountryID"]; //------------------------------------------------ //Return the populated object return SitesObj; }