コード例 #1
0
ファイル: Kanban.cs プロジェクト: Datasilk/Kandu
        public override string Render(string body = "")
        {
            var html = new StringBuilder();

            if (PathParts.Length > 1)
            {
                //load kanban lists for board
                var view     = new View("Views/Board/Kanban/kanban.html");
                var htmlists = new StringBuilder();
                foreach (var list in board.lists)
                {
                    htmlists.Append(Common.List.Kanban.RenderList(this, list, list.cards) + "\n");
                }

                var colors = new Utility.Colors();

                view["name"] = board.name;
                try
                {
                    view["color-hover"] = colors.FromHexToRgba("#" + board.color, 1);
                }
                catch (Exception)
                {
                }
                view["lists"] = htmlists.ToString();
                html.Append(view.Render());
            }
            return(html.ToString());
        }
コード例 #2
0
        public override string Render(string[] path, string body = "", object metadata = null)
        {
            var html = new StringBuilder();

            if (path.Length > 1)
            {
                //load kanban lists for board
                var boardId  = int.Parse(path[1]);
                var scaffold = new Scaffold("Views/Board/Kanban/kanban.html");
                var htmlists = new StringBuilder();
                foreach (var list in board.lists)
                {
                    htmlists.Append(Common.Platform.List.Kanban.RenderList(list, list.cards) + "\n");
                }

                var colors = new Utility.Colors();

                scaffold.Data["name"] = board.name;
                try
                {
                    scaffold.Data["color-hover"] = colors.FromHexToRgba("#" + board.color, 1);
                }
                catch (Exception)
                {
                }
                scaffold.Data["lists"] = htmlists.ToString();
                html.Append(scaffold.Render());
            }

            return(html.ToString());
        }
コード例 #3
0
ファイル: Board.cs プロジェクト: rdelangelhmx/Kandu
        public override string Render(string body = "")
        {
            //check security
            if (PathParts.Length < 2)
            {
                return(Error());
            }
            var boardId = int.Parse(PathParts[1]);

            if (User.userId == 0)
            {
                return(AccessDenied <Login>());
            }
            if (!User.CheckSecurity(boardId))
            {
                return(AccessDenied <Login>());
            }

            //add client-side dependencies
            AddScript("/js/views/board/board.js?v=" + Server.Version);
            AddScript("/js/dashboard.js?v=" + Server.Version);
            AddCSS("/css/dashboard.css?v=" + Server.Version);

            var view = new View("/Views/Board/board.html");

            //load board details
            var       colors = new Utility.Colors();
            var       board  = Query.Boards.GetBoardAndLists(boardId);
            BoardPage page;

            //add custom javascript for User Settings & Board info
            Scripts.Append("<script language=\"javascript\">" +
                           "S.board.id=" + board.boardId + ";" +
                           (User.allColor ? "S.head.allColor();" : "") +
                           "</script>");

            //choose which Lists Type to render
            switch (board.type)
            {
            default:
            case Query.Models.Board.BoardType.kanban:     //kanban
                page = new Kanban();
                page.Init(Context, Parameters, Path, PathParts);
                break;
            }

            //dependancy injection
            page.board = board;

            //set background color of board
            view["color"]      = "#" + board.color;
            view["color-dark"] = colors.ChangeHexBrightness(board.color, (float)-0.3);

            //transfer resources from page
            Scripts.Append(page.Scripts.ToString());
            Css.Append(page.Css.ToString());

            //render board lists
            view["content"] = page.Render();

            //load header
            LoadHeader(ref view);


            return(base.Render(view.Render()));
        }
コード例 #4
0
ファイル: Board.cs プロジェクト: okamyuji/Kandu
        public override string Render(string[] path, string body = "", object metadata = null)
        {
            //check security
            if (path.Length < 2)
            {
                return(Error());
            }
            var boardId = int.Parse(path[1]);

            if (User.userId == 0)
            {
                return(AccessDenied(new Login(context, parameters)));
            }
            if (!User.CheckSecurity(boardId))
            {
                return(AccessDenied(new Login(context, parameters)));
            }

            //add client-side dependencies
            AddScript("/js/views/board/board.js");
            AddScript("/js/dashboard.js");
            AddCSS("/css/dashboard.css");

            var scaffold = new Scaffold("/Views/Board/board.html");

            //load board details
            var       colors = new Utility.Colors();
            var       board  = Query.Boards.GetBoardAndLists(boardId);
            BoardPage page;

            //add custom javascript for User Settings & Board info
            scripts.Append("<script language=\"javascript\">" +
                           "S.board.id=" + board.boardId + ";" +
                           (User.allColor ? "S.head.allColor();" : "") +
                           "</script>");

            //choose which Lists Type to render
            switch (board.type)
            {
            default:
            case Query.Models.Board.BoardType.kanban:     //kanban
                page = new Kanban(context, parameters);
                break;
            }

            //dependancy injection
            page.board = board;

            //set background color of board
            scaffold.Data["color"]      = "#" + board.color;
            scaffold.Data["color-dark"] = colors.ChangeHexBrightness(board.color, (float)-0.3);

            //transfer resources from page
            scripts.Append(page.scripts.ToString());
            css.Append(page.css.ToString());

            //render board lists
            scaffold.Data["content"] = page.Render(path);

            //load header
            LoadHeader(ref scaffold);


            return(base.Render(path, scaffold.Render()));
        }