protected MvcHtmlString GetDependentsMvcHtml(HtmlHelper htmlHelper, string targetName, int id, ILayoutContentsIndexViewModel <int, Employee> vm, string returnUrl, string separator = " | ")
        {
            var mvcHtml = htmlHelper.ActionLink("Dependents", ActionNames.IndexWithParent,
                                                new
            {
                controller = ControllerNames.Dependent,
                parentId   = id,
                returnUrl  = Request?.Url?.AbsoluteUri
            });

            return(mvcHtml);
        }
        protected override EditDetailsDeleteViewModel GenerateEditDetailsDeleteLinks(HtmlHelper htmlHelper, string targetName, int id, ILayoutContentsIndexViewModel <int, Employee> vm, string returnUrl, string separator = " | ", bool allowDetails = false)
        {
            var editDetailsDeleteLinks = base.GenerateEditDetailsDeleteLinks(htmlHelper, targetName, id, vm, returnUrl, separator, true);
            var addressMvcHtml         = GetAddressMvcHtml(htmlHelper, targetName, id, vm, returnUrl, separator);
            var dependentsMvcHtml      = GetDependentsMvcHtml(htmlHelper, targetName, id, vm, returnUrl, separator);

            editDetailsDeleteLinks.MvcHtmlStrings.Add(addressMvcHtml);
            editDetailsDeleteLinks.MvcHtmlStrings.Add(dependentsMvcHtml);

            return(editDetailsDeleteLinks);
        }
        protected MvcHtmlString GetAddressMvcHtml(HtmlHelper htmlHelper, string targetName, int id, ILayoutContentsIndexViewModel <int, Dependent> vm, string returnUrl, string separator = " | ")
        {
            var mvcHtml = htmlHelper.ActionLink("Address", ActionNames.IndexWithParent,
                                                new
            {
                controller = ControllerNames.Address,
                parentId   = id,
                returnUrl  = Request?.Url?.AbsoluteUri,
                param      = eAddressOwnerType.Dependent
            });

            return(mvcHtml);
        }
        protected MvcHtmlString GetContractsMvcHtml(HtmlHelper htmlHelper, string targetName, int id, ILayoutContentsIndexViewModel <int, Company> vm, string url, string separator = " | ")
        {
            var mvcHtml = htmlHelper.ActionLink("Contracts", ActionNames.IndexWithParent,
                                                new
            {
                parentId   = id,
                controller = ControllerNames.Contract,
                returnUrl  = Request?.Url?.AbsoluteUri
            });

            return(mvcHtml);
        }
        protected override EditDetailsDeleteViewModel GenerateEditDetailsDeleteLinks(HtmlHelper htmlHelper, string targetName, int id, ILayoutContentsIndexViewModel <int, Company> vm, string returnUrl, string separator = " | ", bool allowDetails = false)
        {
            var editDetailsDeleteLinks = base.GenerateEditDetailsDeleteLinks(htmlHelper, targetName, id, vm, returnUrl, separator, allowDetails);
            var contractsMvcHtml       = GetContractsMvcHtml(htmlHelper, targetName, id, vm, returnUrl, separator);
            var employeesMvcHtml       = GetEmployeesMvcHtml(htmlHelper, targetName, id, vm, returnUrl, separator);

            editDetailsDeleteLinks.MvcHtmlStrings.Add(contractsMvcHtml);
            editDetailsDeleteLinks.MvcHtmlStrings.Add(employeesMvcHtml);

            return(editDetailsDeleteLinks);
        }
        protected override EditDetailsDeleteViewModel GenerateEditDetailsDeleteLinks(HtmlHelper htmlHelper, string targetName, string id, ILayoutContentsIndexViewModel <string, AspNetUserRole> vm, string returnUrl, string separator = " | ", bool allowDetails = false)
        {
            var mvcHtmlStrings = new List <MvcHtmlString>();
            var deleteMvcHtml  = GetDeleteMvcHtml(htmlHelper, vm, id, targetName, vm.DeleteActionName, returnUrl, vm.ControllerName);

            mvcHtmlStrings.Add(deleteMvcHtml);

            return(new EditDetailsDeleteViewModel(mvcHtmlStrings, separator));
        }