public ActionResult <TwoColumnBox> EditTwoColumnBoxMethod(TwoColumnBox tc_box, int admin_id, string admin_token, int site_id) { //check available (better way to do this?) TwoColumnBox queried_tc_box; try{ queried_tc_box = dbQuery.QueryTwoColumnBoxById(tc_box.two_column_box_id); }catch { JsonFailure f = new JsonFailure($"Two Column Box Id: {tc_box.two_column_box_id} not found."); return(StatusCode(400, f)); } if (authenticator.VerifyAdminForLeaf(admin_id, queried_tc_box.site_id, admin_token)) { DataPlan data_plan; try{ data_plan = _dataLimiter.ValidateDataPlanB(admin_id, queried_tc_box, tc_box); }catch (System.ArgumentException e) { return(StatusCode(400, e.Message)); } TwoColumnBox changed_tcb = dbQuery.EditTwoColumnBox(tc_box); _dataLimiter.UpdateDataPlan(data_plan); return(changed_tcb); } else { return(StatusCode(400, "Invalid credentials.")); } }
public ActionResult <JsonResponse> PostTwoColumnBoxMethod(TwoColumnBox NewTwoColumnBox, int admin_id, string admin_token) { if (authenticator.VerifyAdminForLeaf(admin_id, NewTwoColumnBox.site_id, admin_token)) { List <string> errors = authenticator.ValidateIncomingComponent(NewTwoColumnBox); if (errors.Count == 0) { DataPlan data_plan; try{ data_plan = _dataLimiter.ValidateComponentAdditionForDataPlan(admin_id, NewTwoColumnBox); }catch (System.ArgumentException e) { return(StatusCode(400, e.Message)); } NewTwoColumnBox.byte_size = NewTwoColumnBox.FindCharLength(); dbQuery.AddTwoColumnBox(NewTwoColumnBox); _dataLimiter.UpdateDataPlan(data_plan); JsonResponse r = new JsonSuccess("Two column box posted sucessfully!"); return(r); } else { return(StatusCode(400, errors)); } } else { return(StatusCode(400, "Invalid Token. Stranger Danger.")); } }
public ActionResult <TwoColumnBox> GetTwoColumnBoxMethod(int two_column_box_id) { try{ TwoColumnBox two_column_box = dbQuery.QueryTwoColumnBoxById(two_column_box_id); return(two_column_box); }catch { return(StatusCode(400, "Component Not Found")); } }
public ActionResult <JsonResponse> DeleteAuthenticatedSiteComponentMethod(ComponentReference Component) { if (Component.component_type == "p_box") { try{ ParagraphBox paragraph_box = dbQuery.DeleteParagraphBox(Component.component_id); Site parent_site = dbQuery.QueryFeaturelessSiteById(paragraph_box.site_id); _dataLimiter.RemoveFromDataPlan(paragraph_box, parent_site.admin_id); JsonResponse r = new JsonSuccess("Paragraph box deleted sucessfully!"); return(r); }catch { JsonFailure f = new JsonFailure($"Unable to find paragraph box id {Component.component_id}"); return(StatusCode(400, f)); } } else if (Component.component_type == "image") { try{ Image image = dbQuery.DeleteImage(Component.component_id); Site parent_site = dbQuery.QueryFeaturelessSiteById(image.site_id); _dataLimiter.RemoveFromDataPlan(image, parent_site.admin_id); JsonResponse r = new JsonSuccess("Image deleted sucessfully!"); return(r); }catch { JsonFailure f = new JsonFailure($"Unable to find image id {Component.component_id}"); return(StatusCode(400, f)); } } else if (Component.component_type == "portrait") { try{ Portrait portrait = dbQuery.DeletePortrait(Component.component_id); Site parent_site = dbQuery.QueryFeaturelessSiteById(portrait.site_id); _dataLimiter.RemoveFromDataPlan(portrait, parent_site.admin_id); JsonResponse r = new JsonSuccess("Portrait component deleted sucessfully!"); return(r); }catch { JsonFailure f = new JsonFailure($"Unable to find portrait id {Component.component_id}"); return(StatusCode(400, f)); } } else if (Component.component_type == "2c_box") { try{ TwoColumnBox two_column_box = dbQuery.DeleteTwoColumnBox(Component.component_id); Site parent_site = dbQuery.QueryFeaturelessSiteById(two_column_box.site_id); _dataLimiter.RemoveFromDataPlan(two_column_box, parent_site.admin_id); JsonResponse r = new JsonSuccess("Two Column Box component deleted sucessfully!"); return(r); }catch { JsonFailure f = new JsonFailure($"Unable to find two column box id {Component.component_id}"); return(StatusCode(400, f)); } } else if (Component.component_type == "link_box") { try{ LinkBox link_box = dbQuery.DeleteLinkBox(Component.component_id); Site parent_site = dbQuery.QueryFeaturelessSiteById(link_box.site_id); _dataLimiter.RemoveFromDataPlan(link_box, parent_site.admin_id); JsonResponse r = new JsonSuccess("Link Box component deleted sucessfully!"); return(r); }catch { JsonFailure f = new JsonFailure($"Unable to find link box id {Component.component_id}"); return(StatusCode(400, f)); } } else { JsonFailure f = new JsonFailure("Type mismatch. Type does not match any known components."); return(StatusCode(400, f)); } }
public ActionResult <TwoColumnBox> EditTwoColumnBox([FromBody] TwoColumnBox two_column_box, int admin_id, string admin_token, int site_id) { return(methods.EditTwoColumnBoxMethod(two_column_box, admin_id, admin_token, site_id)); }
public ActionResult <JsonResponse> PostTwoColumnBox([FromBody] string _two_column_box, int admin_id, string admin_token) { TwoColumnBox NewTwoColumnBox = JsonSerializer.Deserialize <TwoColumnBox>(_two_column_box); return(methods.PostTwoColumnBoxMethod(NewTwoColumnBox, admin_id, admin_token)); }