Ejemplo n.º 1
0
        public override void Init(HttpListenerContext ctx = null)
        {
            HTMLFile baseFile  = FileManager.LoadFile("base.html");
            HTMLFile adminFile = FileManager.LoadFile("blocks/beheer.html");

            sales_catalog_car car = DB.GetModel("sales_catalog_car").Select("*").AddFieldToFilter("car_license_plate", new Tuple <string, Expression>("eq", new Expression(Url.Split('/')[3]))).Load().ToDataSet <sales_catalog_car>().First();

            int customerID = (from s in Sessions.sessions where s.Value.Item2 == ctx.Request.Cookies["guid"].Value select s.Key).First();

            core_customer customer = DB.GetModel("core_customer").Select("*").AddFieldToFilter("customer_id", new Tuple <string, Expression>("eq", new Expression(customerID.ToString()))).AddFieldToFilter("is_admin", new Tuple <string, Expression>("eq", new Expression("1"))).Load().ToDataSet <core_customer>().First();

            if (customer == null)
            {
                Location = "/index";
                return;
            }

            adminFile.AddData(new Dictionary <string, object>()
            {
                { "username", customer.customer_name }
            });

            adminFile.AddData(new Dictionary <string, object>()
            {
                { "content", DataSet.ToHTMLForm(typeof(sales_catalog_car), car, car.car_id, "PATCH", "http://localhost/admin/cars") }
            });

            baseFile.AddData(new Dictionary <string, object>()
            {
                { "register", GetUrl("register") },
                { "login", GetUrl("login") },
                { "content", adminFile.GetData() }
            });

            if (ctx.Request.Cookies["guid"] != null &&
                Sessions.sessions.ContainsKey(
                    (from s in Sessions.sessions where s.Value.Item2 == ctx.Request.Cookies["guid"].Value select s.Key)
                    .First()))
            {
                baseFile.AddData(new Dictionary <string, object>()
                {
                    { "account", GetUrl("myaccount") }
                });
            }

            LoadBootStrap();
            this.AddCss("styles.css");
            this.AddCss("datepicker.min.css");
            this.AddJs("datepicker.min.js");
            this.AddJs("custom.js");

            this.response    = baseFile.GetData();
            this.ContentType = Constants.CONTENT_HTML;
        }
Ejemplo n.º 2
0
        public override void Init(HttpListenerContext ctx = null)
        {
            HTMLFile baseFile    = FileManager.LoadFile("base.html");
            HTMLFile confirmFile = FileManager.LoadFile("blocks/confirm.html");

            if (ctx.Request.Cookies["guid"] != null &&
                Sessions.sessions.ContainsKey(
                    (from s in Sessions.sessions where s.Value.Item2 == ctx.Request.Cookies["guid"].Value select s.Key)
                    .First()))
            {
                baseFile.AddData(new Dictionary <string, object>()
                {
                    { "account", GetUrl("myaccount") }
                });
            }
            else
            {
                this.Location = "/register";
                return;
            }

            sales_catalog_car car = DB.GetModel("sales_catalog_car").Select("*").AddFieldToFilter("car_license_plate", new Tuple <string, Expression>("eq", new Expression(Url.Split('/')[1]))).Load().ToDataSet <sales_catalog_car>().First();

            int customerID = (from s in Sessions.sessions where s.Value.Item2 == ctx.Request.Cookies["guid"].Value select s.Key).First();

            core_customer customer = DB.GetModel("core_customer").Select("*").AddFieldToFilter("customer_id", new Tuple <string, Expression>("eq", new Expression(customerID.ToString()))).Load().ToDataSet <core_customer>().First();

            confirmFile.AddData(new Dictionary <string, object>()
            {
                { "car_name", car.car_type + " - " + car.car_brand },
                { "hired_from", _POST["date_1"] },
                { "hired_to", _POST["date_2"] },
                { "address", "<address><strong>" + customer.customer_name + "</strong>, " + customer.address_street + " " + customer.address_number + " <br>" + customer.address_postal + "</address>" },
                { "price", Convert.ToInt16((DateTime.ParseExact(_POST["date_2"], "yyyy/MM/dd", CultureInfo.InvariantCulture) - DateTime.ParseExact(_POST["date_1"], "yyyy/MM/dd", CultureInfo.InvariantCulture)).TotalDays) * car.car_day_price },
                { "license", car.car_license_plate }
            });

            baseFile.AddData(new Dictionary <string, object>()
            {
                { "register", GetUrl("register") },
                { "login", GetUrl("login") },
                { "content", confirmFile.GetData() }
            });

            LoadBootStrap();
            this.AddCss("styles.css");

            this.Location = "";

            this.response    = baseFile.GetData();
            this.ContentType = Constants.CONTENT_HTML;
        }
Ejemplo n.º 3
0
        public override void Init(HttpListenerContext ctx = null)
        {
            HTMLFile baseFile  = FileManager.LoadFile("base.html");
            HTMLFile panelFile = FileManager.LoadFile("blocks/panel.html");
            HTMLFile loginFile = FileManager.LoadFile("blocks/login.html");

            if (ctx.Request.Cookies["guid"] != null &&
                Sessions.sessions.ContainsKey(
                    (from s in Sessions.sessions where s.Value.Item2 == ctx.Request.Cookies["guid"].Value select s.Key)
                    .First()))
            {
                baseFile.AddData(new Dictionary <string, object>()
                {
                    { "account", GetUrl("myaccount") }
                });

                int customerID = (from s in Sessions.sessions where s.Value.Item2 == ctx.Request.Cookies["guid"].Value select s.Key).First();

                core_customer customer = DB.GetModel("core_customer").Select("*").AddFieldToFilter("customer_id", new Tuple <string, Expression>("eq", new Expression(customerID.ToString()))).AddFieldToFilter("is_admin", new Tuple <string, Expression>("eq", new Expression("1"))).Load().ToDataSet <core_customer>().First();

                if (customer != null)
                {
                    Location = "/admin/manage";
                    return;
                }
            }

            loginFile.AddData(new Dictionary <string, object>()
            {
                { "url", "/adminauth" },
                { "redirect", "/admin/manage" }
            });

            panelFile.AddData(new Dictionary <string, object>()
            {
                { "form", loginFile.GetData() },
                { "header", "Beheerders login" }
            });

            baseFile.AddData(new Dictionary <string, object>()
            {
                { "register", GetUrl("register") },
                { "login", GetUrl("login") },
                { "content", panelFile.GetData() }
            });

            LoadBootStrap();
            this.AddCss("styles.css");

            this.response    = baseFile.GetData();
            this.ContentType = Constants.CONTENT_HTML;
        }
Ejemplo n.º 4
0
        public override void Init(HttpListenerContext ctx = null)
        {
            HTMLFile baseFile    = FileManager.LoadFile("base.html");
            HTMLFile accountFile = FileManager.LoadFile("blocks/myaccount.html");

            if (ctx.Request.Cookies["guid"] != null &&
                Sessions.sessions.ContainsKey(
                    (from s in Sessions.sessions where s.Value.Item2 == ctx.Request.Cookies["guid"].Value select s.Key)
                    .First()))
            {
                baseFile.AddData(new Dictionary <string, object>()
                {
                    { "account", GetUrl("myaccount") }
                });
            }
            else
            {
                Location = "/index";
                return;
            }

            int customerID = (from s in Sessions.sessions where s.Value.Item2 == ctx.Request.Cookies["guid"].Value select s.Key).First();

            core_customer customer = DB.GetModel("core_customer").Select("*").AddFieldToFilter("customer_id", new Tuple <string, Expression>("eq", new Expression(customerID.ToString()))).Load().ToDataSet <core_customer>().First();

            accountFile.AddData(new Dictionary <string, object>()
            {
                { "username", customer.customer_name },
                { "content", DataSet.ToHTMLForm(typeof(core_customer), customer, customerID, "PATCH", "http://localhost/editaccount") }
            });

            baseFile.AddData(new Dictionary <string, object>()
            {
                { "register", GetUrl("register") },
                { "login", GetUrl("login") },
                { "content", accountFile.GetData() }
            });

            LoadBootStrap();
            this.AddCss("styles.css");

            this.Location = "";

            this.response    = baseFile.GetData();
            this.ContentType = Constants.CONTENT_HTML;
        }
Ejemplo n.º 5
0
        public override void Init(HttpListenerContext ctx = null)
        {
            if (ctx.Request.Cookies["guid"] != null &&
                Sessions.sessions.ContainsKey(
                    (from s in Sessions.sessions where s.Value.Item2 == ctx.Request.Cookies["guid"].Value select s.Key)
                    .First()))
            {
            }

            sales_catalog_car car = DB.GetModel("sales_catalog_car").Select("*").AddFieldToFilter("car_license_plate", new Tuple <string, Expression>("eq", new Expression(Url.Split('/')[1]))).Load().ToDataSet <sales_catalog_car>().First();

            int customerID = (from s in Sessions.sessions where s.Value.Item2 == ctx.Request.Cookies["guid"].Value select s.Key).First();

            core_customer customer = DB.GetModel("core_customer").Select("*").AddFieldToFilter("customer_id", new Tuple <string, Expression>("eq", new Expression(customerID.ToString()))).Load().ToDataSet <core_customer>().First();

            Model insertModel = DB.GetModel("sales_flat_order").Insert();

            insertModel
            .AddDataToInsert(new KeyValuePair <string, string>("customer_id", customer.customer_id.ToString()))
            .AddDataToInsert(new KeyValuePair <string, string>("treated_by", "PIET"));

            insertModel.Load();

            sales_flat_order order = DB.GetModel("sales_flat_order").Select("*").AddFieldToFilter("order_id", Tuple.Create <string, Expression>("eq", new Expression("LAST_INSERT_ID()", false))).Load().ToDataSet <sales_flat_order>().First();

            DB.GetModel("sales_flat_order")
            .Update()
            .AddKeyValueToUpdate(new KeyValuePair <string, string>("invoice_link",
                                                                   "pdf/1000" + order.order_id + ".pdf"))
            .AddFieldToFilter("order_id",
                              Tuple.Create <string, Expression>("eq", new Expression(order.order_id.ToString())))
            .Load();

            DB.GetModel("sales_order_item").Insert()
            .AddDataToInsert(new KeyValuePair <string, string>("order_id", order.order_id.ToString()))
            .AddDataToInsert(new KeyValuePair <string, string>("car_id", car.car_id.ToString()))
            .AddDataToInsert(new KeyValuePair <string, string>("hired_from", _POST["date_1"]))
            .AddDataToInsert(new KeyValuePair <string, string>("hired_to", _POST["date_2"]))
            .Load();

            int days =
                Convert.ToInt16(
                    (DateTime.ParseExact(_POST["date_2"], "yyyy/MM/dd", CultureInfo.InvariantCulture) -
                     DateTime.ParseExact(_POST["date_1"], "yyyy/MM/dd", CultureInfo.InvariantCulture)).TotalDays);

            new InvoicerApi(SizeOption.A4, OrientationOption.Landscape, "€")
            .TextColor("#0000CC")
            .BackColor("#87ceeb")
            .Title("Factuur")
            .BillingDate(DateTime.Now)
            .Reference("1000" + order.order_id)
            .Company(Address.Make("VAN", new string[] { "Rent-a-Car", "Almere" }))
            .Client(Address.Make("FACTUUR ADRES",
                                 new string[]
            {
                customer.customer_name, customer.address_street + " " + customer.address_number,
                customer.address_city, customer.address_postal
            }))
            .Items(new List <ItemRow>
            {
                ItemRow.Make(car.car_type + " - " + car.car_brand, "van: " + _POST["date_1"] + " tot: " + _POST["date_2"],
                             (decimal)days, days * decimal.Multiply(car.car_day_price, (decimal)0.25), (decimal)car.car_day_price,
                             decimal.Multiply(days, car.car_day_price)),
            })
            .Totals(new List <TotalRow>
            {
                TotalRow.Make("Subtotaal", days * decimal.Multiply(car.car_day_price, (decimal)0.75)),
                TotalRow.Make("BTW @ 25%", days * decimal.Multiply(car.car_day_price, (decimal)0.25)),
                TotalRow.Make("Totaal", decimal.Multiply(days, car.car_day_price), true),
            })
            .Details(new List <DetailRow>
            {
                DetailRow.Make("BETALINGS INFORMATIE",
                               "U kunt achteraf betalen bij de medewerker die uw order afhandeld.", "",
                               "Als u nog verdere vragen heeft kunt u mailen naar [email protected]", "",
                               "Bedankt voor uw bestelling",
                               "U kunt de auto ophalen op: " + _POST["date_1"],
                               "En de auto dient op zijn laatst om 17:00 op: " + _POST["date_2"] + " terug gebracht te worden.")
            })
            .Footer("http://www.rent-a-car.com")
            .Save(FileManager.BaseDir + "pdf/1000" + order.order_id + ".pdf");

            string path = FileManager.BaseDir + "pdf/1000" + order.order_id + ".pdf";

            Location = "/pdf/1000" + order.order_id + ".pdf";

            this.response    = "";
            this.ContentType = Constants.CONTENT_PDF;
        }
Ejemplo n.º 6
0
        public override void Init(HttpListenerContext ctx = null)
        {
            HTMLFile baseFile   = FileManager.LoadFile("base.html");
            HTMLFile beheerFile = FileManager.LoadFile("blocks/beheer.html");
            HTMLFile carsFile   = FileManager.LoadFile("blocks/day_cars.html");

            if (ctx.Request.Cookies["guid"] != null &&
                Sessions.sessions.ContainsKey(
                    (from s in Sessions.sessions where s.Value.Item2 == ctx.Request.Cookies["guid"].Value select s.Key)
                    .First()))
            {
                baseFile.AddData(new Dictionary <string, object>()
                {
                    { "account", GetUrl("myaccount") }
                });
            }
            else
            {
                Location = "/index";
                return;
            }

            string date = null;

            if (!_POST.ContainsKey("date"))
            {
                date = string.Format("{0:yyyy-MM-dd}", DateTime.Now);
            }
            else
            {
                date = _POST["date"];
            }

            int customerID = (from s in Sessions.sessions where s.Value.Item2 == ctx.Request.Cookies["guid"].Value select s.Key).First();

            core_customer customer = DB.GetModel("core_customer").Select("*").AddFieldToFilter("customer_id", new Tuple <string, Expression>("eq", new Expression(customerID.ToString()))).AddFieldToFilter("is_admin", new Tuple <string, Expression>("eq", new Expression("1"))).Load().ToDataSet <core_customer>().First();

            if (customer == null)
            {
                Location = "/index";
                return;
            }

            sales_order_item[] items = DB.GetModel("sales_order_item").Select("*").AddFieldToFilter("hired_from", new Tuple <string, Expression>("eq", new Expression(date))).Load().ToDataSet <sales_order_item>();

            List <string> cars = new List <string>();

            foreach (sales_order_item item in items)
            {
                HTMLFile carLine = FileManager.LoadFile("blocks/day_cars_line.html");

                sales_catalog_car car          = DB.GetModel("sales_catalog_car").Select("*").AddFieldToFilter("car_id", new Tuple <string, Expression>("eq", new Expression(item.car_id.ToString()))).Load().ToDataSet <sales_catalog_car>().First();
                core_customer     itemCustomer = DB.GetModel("core_customer").Select("*").AddFieldToFilter("customer_id", new Tuple <string, Expression>("eq", new Expression(DB.GetModel("sales_flat_order").Select("*").AddFieldToFilter("order_id", new Tuple <string, Expression>("eq", new Expression(item.order_id.ToString()))).Load().ToDataSet <sales_flat_order>().First().customer_id.ToString()))).Load().ToDataSet <core_customer>().First();

                carLine.AddData(new Dictionary <string, object>()
                {
                    { "license_plate", car.car_license_plate },
                    { "brand", car.car_brand + " - " + car.car_type },
                    { "customer", itemCustomer.customer_name }
                });

                cars.Add(carLine.GetData());
            }

            carsFile.AddData(new Dictionary <string, object>()
            {
                { "cars", cars.ToArray() },
                { "date", date }
            });

            beheerFile.AddData(new Dictionary <string, object>()
            {
                { "username", customer.customer_name },
                { "content", carsFile.GetData() }
            });

            baseFile.AddData(new Dictionary <string, object>()
            {
                { "register", GetUrl("register") },
                { "login", GetUrl("login") },
                { "content", beheerFile.GetData() }
            });

            LoadBootStrap();
            this.AddCss("styles.css");
            this.AddCss("datepicker.min.css");
            this.AddJs("datepicker.min.js");

            this.Location = "";

            this.response    = baseFile.GetData();
            this.ContentType = Constants.CONTENT_HTML;
        }
Ejemplo n.º 7
0
        public override void Init(HttpListenerContext ctx = null)
        {
            HTMLFile baseFile      = FileManager.LoadFile("base.html");
            HTMLFile myaccountFile = FileManager.LoadFile("blocks/myaccount.html");
            HTMLFile invoicesFile  = FileManager.LoadFile("blocks/invoices.html");

            if (ctx.Request.Cookies["guid"] != null &&
                Sessions.sessions.ContainsKey(
                    (from s in Sessions.sessions where s.Value.Item2 == ctx.Request.Cookies["guid"].Value select s.Key)
                    .First()))
            {
                baseFile.AddData(new Dictionary <string, object>()
                {
                    { "account", GetUrl("myaccount") }
                });
            }
            else
            {
                Location = "/index";
                return;
            }

            int customerID = (from s in Sessions.sessions where s.Value.Item2 == ctx.Request.Cookies["guid"].Value select s.Key).First();

            core_customer customer = DB.GetModel("core_customer").Select("*").AddFieldToFilter("customer_id", new Tuple <string, Expression>("eq", new Expression(customerID.ToString()))).Load().ToDataSet <core_customer>().First();

            sales_flat_order[] orders = DB.GetModel("sales_flat_order")
                                        .Select("*")
                                        .AddFieldToFilter("customer_id",
                                                          new Tuple <string, Expression>("eq", new Expression(customerID.ToString())))
                                        .Load()
                                        .ToDataSet <sales_flat_order>();

            List <string> invoices = new List <string>();

            foreach (sales_flat_order order in orders)
            {
                HTMLFile invoiceLine = FileManager.LoadFile("blocks/invoice_line.html");

                invoiceLine.AddData(new Dictionary <string, object>()
                {
                    { "invoice_no", "1000" + order.order_id },
                    { "invoice_link", order.invoice_link }
                });

                invoices.Add(invoiceLine.GetData());
            }

            invoicesFile.AddData(new Dictionary <string, object>()
            {
                { "invoices", invoices.ToArray() }
            });

            myaccountFile.AddData(new Dictionary <string, object>()
            {
                { "username", customer.customer_name },
                { "content", invoicesFile.GetData() }
            });

            baseFile.AddData(new Dictionary <string, object>()
            {
                { "register", GetUrl("register") },
                { "login", GetUrl("login") },
                { "content", myaccountFile.GetData() }
            });

            LoadBootStrap();
            this.AddCss("styles.css");

            this.Location = "";

            this.response    = baseFile.GetData();
            this.ContentType = Constants.CONTENT_HTML;
        }
Ejemplo n.º 8
0
        public override void Init(HttpListenerContext ctx = null)
        {
            HTMLFile baseFile    = FileManager.LoadFile("base.html");
            HTMLFile beheerFile  = FileManager.LoadFile("blocks/beheer.html");
            HTMLFile contactFile = FileManager.LoadFile("blocks/contacts.html");

            if (ctx.Request.Cookies["guid"] != null &&
                Sessions.sessions.ContainsKey(
                    (from s in Sessions.sessions where s.Value.Item2 == ctx.Request.Cookies["guid"].Value select s.Key)
                    .First()))
            {
                baseFile.AddData(new Dictionary <string, object>()
                {
                    { "account", GetUrl("myaccount") }
                });
            }
            else
            {
                Location = "/index";
                return;
            }

            int customerID = (from s in Sessions.sessions where s.Value.Item2 == ctx.Request.Cookies["guid"].Value select s.Key).First();

            core_customer customer = DB.GetModel("core_customer").Select("*").AddFieldToFilter("customer_id", new Tuple <string, Expression>("eq", new Expression(customerID.ToString()))).AddFieldToFilter("is_admin", new Tuple <string, Expression>("eq", new Expression("1"))).Load().ToDataSet <core_customer>().First();

            if (customer == null)
            {
                Location = "/index";
                return;
            }

            core_contact[] contacts = DB.GetModel("core_contact").Select("*").Load().ToDataSet <core_contact>();

            List <string> contactText = new List <string>();

            foreach (core_contact contact in contacts)
            {
                HTMLFile contactLine = FileManager.LoadFile("blocks/contact_line.html");

                contactLine.AddData(new Dictionary <string, object>()
                {
                    { "contact_name", contact.contact_name },
                    { "contact_email", contact.contact_email },
                    { "contact_message", contact.contact_message },
                    { "id", contact.contact_id }
                });

                contactText.Add(contactLine.GetData());
            }

            contactFile.AddData(new Dictionary <string, object>()
            {
                { "contacts", contactText.ToArray() }
            });

            beheerFile.AddData(new Dictionary <string, object>()
            {
                { "username", customer.customer_name },
                { "content", contactFile.GetData() }
            });

            baseFile.AddData(new Dictionary <string, object>()
            {
                { "register", GetUrl("register") },
                { "login", GetUrl("login") },
                { "content", beheerFile.GetData() }
            });

            LoadBootStrap();
            this.AddCss("styles.css");
            this.AddCss("datepicker.min.css");
            this.AddJs("datepicker.min.js");

            this.Location = "";

            this.response    = baseFile.GetData();
            this.ContentType = Constants.CONTENT_HTML;
        }
Ejemplo n.º 9
0
        public override void Init(HttpListenerContext ctx = null)
        {
            HTMLFile baseFile  = FileManager.LoadFile("base.html");
            HTMLFile adminFile = FileManager.LoadFile("blocks/beheer.html");

            if (ctx.Request.Cookies["guid"] != null &&
                Sessions.sessions.ContainsKey(
                    (from s in Sessions.sessions where s.Value.Item2 == ctx.Request.Cookies["guid"].Value select s.Key)
                    .First()))
            {
                baseFile.AddData(new Dictionary <string, object>()
                {
                    { "account", GetUrl("myaccount") }
                });
            }
            else
            {
                Location = "/index";
                return;
            }

            int customerID = (from s in Sessions.sessions where s.Value.Item2 == ctx.Request.Cookies["guid"].Value select s.Key).First();

            core_customer customer = DB.GetModel("core_customer").Select("*").AddFieldToFilter("customer_id", new Tuple <string, Expression>("eq", new Expression(customerID.ToString()))).AddFieldToFilter("is_admin", new Tuple <string, Expression>("eq", new Expression("1"))).Load().ToDataSet <core_customer>().First();

            if (customer == null)
            {
                Location = "/index";
                return;
            }

            adminFile.AddData(new Dictionary <string, object>()
            {
                { "username", customer.customer_name }
            });

            if (HTTPMethod == Constants.METHOD_POST)
            {
                adminFile.AddData(new Dictionary <string, object>()
                {
                    { "content", "<h3 class=\"green\">Bestand uploaden gelukt!</h3>" }
                });
            }
            else
            {
                adminFile.AddData(new Dictionary <string, object>()
                {
                    { "content", "<form method=\"post\" action=\"\\image\" enctype=\"multipart/form-data\"><div class=\"form-group\"><input type=\"file\" name=\"file\" /></div><div class=\"form-group\"> <input type=\"submit\" name=\"submit\" /></div></form>" }
                });
            }

            baseFile.AddData(new Dictionary <string, object>()
            {
                { "register", GetUrl("register") },
                { "login", GetUrl("login") },
                { "content", adminFile.GetData() }
            });

            LoadBootStrap();
            this.AddCss("styles.css");

            this.response    = baseFile.GetData();
            this.ContentType = Constants.CONTENT_HTML;
        }