public override void Load() { var builder = new DbContextOptionsBuilder <StorageContext>(); OptionsAction(builder); using (var dbContext = new StorageContext(builder.Options)) { dbContext.Database.EnsureCreated(); Data = !dbContext.ConfigurationValues.Any() ? CreateAndSaveDefaultValues(dbContext) : dbContext.ConfigurationValues.ToDictionary(c => c.Name, c => c.Value); //create server drive ServerDrive drive = dbContext.ServerDrives.FirstOrDefault(); if (drive == null) { Organization organization = dbContext.Organizations.FirstOrDefault(); if (organization != null) { Guid?organizationId = organization.Id; dbContext.ServerDrives.Add(new ServerDrive { Id = new Guid("37a01356-7514-47a2-96ce-986faadd628e"), FileStorageAdapterType = AdapterType.LocalFileStorageAdapter.ToString(), Name = "ServerDrive", OrganizationId = organizationId, StorageSizeInBytes = 0, IsDeleted = false }); } } dbContext.SaveChanges(); } }
private void SaveItem() { bool success = false; try { if (PassedValidation()) { ServerDrive item = new ServerDrive(int.Parse(hfItemID.Value)); SPA.User user = new SPA.User(Context.User.Identity.Name); item.Name = txtName.Text.Trim().ToUpper(); item.Size = int.Parse(txtSize.Text.Trim()); item.Description = txtDescription.Text.Trim(); item.ServerID = ServerID; item.ModifiedBy = user.UserName; if (item.ID == 0) { item.CreatedBy = item.ModifiedBy; if (item.Insert()) { success = true; } } else { if (item.Update()) { success = true; } } if (success) { Fill(); } } else { // validation failed } } catch (Exception ex) { SPA.Error.WriteError(ex); if (ShowDebug) { lblErrorMessage.Text = ex.ToString(); } } Response.Redirect(string.Format("{0}/{1}?View=Edit&ID={2}&ServerID={2}&IsDlg=1Filter={3}", SPContext.Current.Web.Url, Pages.ServerItem.PAGE_URL, ServerID, Filter), false); }
public ServerDrive AddServerDrive(string driveName) { var serverDrive = new ServerDrive(); string adapter = GetAdapterType(driveName); if (adapter.Equals(AdapterType.LocalFileStorage.ToString())) { serverDrive = _localFileStorageAdapter.AddServerDrive(driveName); } else { throw new EntityOperationException("Configuration is not set up for local file storage"); } return(serverDrive); }
private void FillItem(string Mode, int ID) { tblList.Visible = false; tblItem.Visible = true; ServerDrive item = new ServerDrive(ID); try { bool isView = (Mode == "View"); bool isNew = (ID == 0); //lbtnEdit.Visible = isView; //lbtnView.Visible = !isView && ID != 0; btnDelete.Visible = !isView && ID != 0; //lblReqMsg.Visible = !isView; txtName.Text = item.Name; txtName.Visible = !isView; lblNameView.Text = item.Name; lblNameView.Visible = isView; lblNameRequired.Visible = !isView; txtSize.Text = item.Size.ToString(); txtSize.Visible = !isView; lblSizeView.Text = item.Size.ToString(); lblSizeView.Visible = isView; lblSizeRequired.Visible = !isView; txtDescription.Text = item.Description; txtDescription.Visible = !isView; lblDescriptionView.Text = item.Description; lblDescriptionView.Visible = isView; lblCreatedInfo.Text = string.Format("Created at {0} by {1}", SPA.Common.ConvertUTCToWebLocalTime(SPContext.Current.Web, item.CreatedOn), item.CreatedBy); lblCreatedInfo.Visible = (item.ID != 0); lblUpdatedInfo.Text = string.Format("Last modified at {0} by {1}", SPA.Common.ConvertUTCToWebLocalTime(SPContext.Current.Web, item.ModifiedOn), item.ModifiedBy); lblUpdatedInfo.Visible = (item.ID != 0); btnSave.Visible = !isView; btnCancel.Text = isView ? "Close" : "Cancel"; } catch (Exception ex) { SPA.Error.WriteError(ex); if (ShowDebug) { lblErrorMessage.Text = ex.ToString(); } } }
protected override void Fill() { try { tblList.Visible = true; tblItem.Visible = false; // determine the user identity SPA.User user = new SPA.User(Context.User.Identity.Name); UserID = user.ID; // determine user role if (user.InRole("Manager")) { // do something } // determine if new drive was clicked from server item ribbon if (Request["adddrive"] != null) { hfItemID.Value = "0"; btnDelete.Visible = false; FillItem("Edit", 0); } DataView dv = new DataView(ServerDrive.Items(ServerID).Tables[0]); gvData.EmptyDataText = "No drives to display"; gvData.DataSource = dv; gvData.DataBind(); gvData.Width = Unit.Percentage(50); } catch (Exception ex) { SPA.Error.WriteError(ex); if (ShowDebug) { lblErrorMessage.Text = ex.ToString(); } } }
private void DeleteItem() { bool success = false; try { ServerDrive item = new ServerDrive(int.Parse(hfItemID.Value)); if (item.Delete()) { success = true; hfItemID.Value = "0"; } if (success) { Fill(); } } catch (Exception ex) { SPA.Error.WriteError(ex); if (ShowDebug) { lblErrorMessage.Text = ex.ToString(); } } Response.Redirect(string.Format("{0}/{1}?View=Edit&ID={2}&ServerID={2}&IsDlg=1Filter={3}", SPContext.Current.Web.Url, Pages.ServerItem.PAGE_URL, ServerID, Filter), false); }
public void AddBytesToServerDrive(ServerDrive serverDrive, long size) { //add to SizeInBytes property in ServerDrive serverDrive.StorageSizeInBytes += size; serverDriveRepository.Update(serverDrive); }