예제 #1
0
        //
        // GET: /Backend/EditRole?id={id}
        public ActionResult EditRole()
        {
            if (Request.Params.AllKeys.Contains("id"))
            {
                long id = 0;
                try
                {
                    id = long.Parse(Request.Params["id"]);
                }
                catch { }

                role r = this._app.roles().getById(id);

                if (r != null)
                {
                    Form_Role_Add form = new Form_Role_Add(0);
                    if (Request.HttpMethod.ToLower() == form.getMethod().ToString())
                    {
                        if (form.isValid(Request.Form))
                        {
                            if (this._app.roles().save(form, r))
                            {
                                _messages.addMessage("The role has been successfully saved");
                                if (r.parentid.HasValue)
                                {
                                    return Redirect("/backend/ListRoles?parent=" + r.parentid);
                                }
                                return Redirect("/backend/ListRoles?parent=" + r.id);
                            }
                        }
                    }

                    form.setEditData(r);

                    ViewData["form"] = form.render();

                    return View();
                }
            }

            _messages.addError("Undefined or wrong parameter ID");
            return RedirectToAction("listRoles", "backend");
        }
예제 #2
0
        //
        // GET+POST: /Backend/AddRole[?parent={id}]
        public ActionResult AddRole()
        {
            long parent = 0;
            if (Request.Params.AllKeys.Contains("parent"))
            {
                try
                {
                    parent = long.Parse(Request.Params["parent"]);
                }
                catch { }
            }

            string name = "root";

            if (parent > 0)
            {
                role r = this._app.roles().getById(parent);
                if (r != null)
                {
                    name = r.name;
                }
            }

            ViewData["name"] = name;

            Form_Role_Add form = new Form_Role_Add(parent);
            if (Request.HttpMethod.ToLower() == form.getMethod().ToString())
            {
                if (form.isValid(Request.Form))
                {
                    if (this._app.roles().add(parent, form))
                    {
                        _messages.addMessage("The role has been successfully added");
                        return Redirect("/backend/ListRoles?parent=" + parent.ToString());
                    }
                }
            }

            ViewData["form"] = form.render();

            return View();
        }