Example #1
0
        //does not remove component itself.
        public void RemoveFromDataPlan(SiteComponent site_component, int admin_id)
        {
            DataPlan admin_data_plan = _dbQuery.GetDataPlanByAdminId(admin_id);

            admin_data_plan.total_bytes -= site_component.FindCharLength();
            _dbQuery.UpdateDataPlan(admin_data_plan);
        }
Example #2
0
        public Entities.Site GetSite()
        {
            var component        = new SiteComponent(Context);
            var contentComponent = new ContentComponent(Context);
            var site             = component.GetSite();

            var contents = contentComponent.GetSiteContent(site);

            site.Contents = contents;

            return(site);
        }
Example #3
0
        public static string Build(SiteComponent component, string feature, params object[] parts)
        {
            var vars = new List <string> {
                component.ToString(), feature
            };

            foreach (var part in parts)
            {
                vars.Add(part.ToString());
            }

            return(string.Join(".", vars));
        }
Example #4
0
        //site components
        public DataPlan ValidateComponentAdditionForDataPlan(int admin_id, SiteComponent site_component)
        {
            DataPlan data_plan = _dbQuery.GetDataPlanByAdminId(admin_id);

            data_plan.total_bytes += site_component.FindCharLength();

            if (data_plan.total_bytes <= data_plan.max_bytes)
            {
                return(data_plan);
            }
            else
            {
                throw new System.ArgumentException($"New {site_component.GetType().Name.ToString()} exceeds data plan limits. Reduce data use by deleting sites and or components.");
            }
        }
Example #5
0
        public DataPlan ValidateDataPlanB(int admin_id, SiteComponent old_site_component, SiteComponent new_site_component)
        {
            DataPlan data_plan = _dbQuery.GetDataPlanByAdminId(admin_id);

            //remove current component byte cost
            data_plan.total_bytes -= old_site_component.FindCharLength();

            //calculate new cost
            data_plan.total_bytes += new_site_component.FindCharLength();

            //compare
            if (data_plan.total_bytes <= data_plan.max_bytes)
            {
                return(data_plan);
            }
            else
            {
                throw new System.ArgumentException("New component exceeds data plan limits.");
            }
        }
Example #6
0
        public List <string> ValidateIncomingComponent(SiteComponent sc)
        {
            List <string> errors = sc.GetFieldErrors(_fieldValidator);

            return(errors);
        }