示例#1
0
        public ActionResult SaveEditProject(EditModalView viewModel)
        {
            ProjectsManager pm = new ProjectsManager();

            if (!ModelState.IsValid)
            {
                viewModel.Types         = pm.getProjectTypesOptions();
                viewModel.Statuses      = pm.getProjectStatusOptions();
                viewModel.BackUpOptions = pm.getBackUpPlanOptions();
                viewModel.PMs           = pm.getPMOptions();
                viewModel.Devs          = pm.getDevsOptions();
                viewModel.Desgns        = pm.getDesgnsOptions();

                return(Json(new { isValid = false, view = RenderViewAsString("_EditPartial", viewModel) }));
            }

            string _checkMessage = "";

            //storing in DB
            _checkMessage   = pm.SaveEditProject(viewModel);
            ViewBag.Message = _checkMessage;

            ProjectsModel pmd = Refresh(viewModel.userId);

            return(Json(new { isValid = true, view = RenderViewAsString("_tablePartial", pmd) }));
        }
示例#2
0
        public JsonResult GetProjects()
        {
            ProjectsManager projectsManager = new ProjectsManager();
            var             result          = projectsManager.GetProjects();

            return(Json(result, JsonRequestBehavior.AllowGet));
        }
示例#3
0
        public JsonResult UpdateProject(Projects projects)
        {
            ProjectsManager projectsManager = new ProjectsManager();

            projectsManager.Update(projects);
            return(Json(true, JsonRequestBehavior.AllowGet));
        }
示例#4
0
        public void Add()
        {
            var worker = new Worker("ln3", "fn3", "md3", "em3");

            var added = WorkersManager.Add(worker);

            Assert.IsNotNull(added);

            added = WorkersManager.Find(added.Id);
            Assert.IsNotNull(added);

            Assert.AreEqual(added.FirstName, worker.FirstName);
            Assert.AreEqual(added.LastName, worker.LastName);
            Assert.AreEqual(added.MiddleName, worker.MiddleName);
            Assert.AreEqual(added.Email, worker.Email);

            AssertCount(3, WorkersManager.GetAll());

            var project = new Project("name", "c", "cons")
            {
                Leader   = Worker1,
                Employee = added,
                Workers  = new List <Worker>()
                {
                    added, Worker1, Worker2
                }
            };

            ProjectsManager.Add(project);

            AssertCount(3, WorkersManager.GetAll());
            AssertCount(3, ProjectsManager.GetAll());
        }
示例#5
0
        public JsonResult AddProject(Projects projects)
        {
            ProjectsManager projectsManager = new ProjectsManager();
            var             result          = projectsManager.Add(projects);

            return(Json(result, JsonRequestBehavior.AllowGet));
        }
示例#6
0
        public ActionResult LoadAddViewListboxes(Guid userId)
        {
            using (PureSurveyProjectTrackerEntities psdb = new PureSurveyProjectTrackerEntities())
            {
                AddModalView pmd = new AddModalView();
                if (userId != null)
                {
                    ProjectsManager pm = new ProjectsManager();
                    //Obtaining values
                    List <string> _TypesOptions    = pm.getProjectTypesOptions();
                    List <string> _StatusesOptions = pm.getProjectStatusOptions();
                    List <string> _BakupOptions    = pm.getBackUpPlanOptions();
                    List <string> _PMOptions       = pm.getPMOptions();
                    List <string> _DevOptions      = pm.getDevsOptions();
                    List <string> _DesgnsOptions   = pm.getDesgnsOptions();

                    pmd = new AddModalView
                    {
                        UserId        = userId,
                        Types         = _TypesOptions,
                        Statuses      = _StatusesOptions,
                        BackUpOptions = _BakupOptions,
                        PMs           = _PMOptions,
                        Devs          = _DevOptions,
                        Desgns        = _DesgnsOptions
                    };
                }
                return(PartialView("_AddPartial", pmd));
            }
        }
示例#7
0
        private IEnumerable <ProjectsModel> GetProjectsFromDb(Guid userId)
        {
            ProjectsManager pm         = new ProjectsManager();
            int             _projectNo = pm.getProjectNo();
            var             prjcts     = _manager.GetUserProjectsByUserId(userId).Select(x => new ProjectsModel
            {
                UserId         = userId,
                projectNo      = _projectNo,
                _projectId     = x.Project_ID,
                ProjectName    = x.ProjectName,
                ClientName     = x.ClientName,
                ProjectManager = x.ProjectManager,
                Developer      = x.Developer,
                Designer       = x.Designer,
                ProjectType    = x.ProjectTypeDescription,
                Status         = x.Status,
                URL            = x.URL,
                ProjectDB      = x.ProjectDB,
                ProjectServer  = x.ProjectServer,
                BackUp         = x.BackUpPlan,
                ProjectValue   = x.ProjectCost
            }).Where(x => x.ProjectName != null);

            return(prjcts);
        }
示例#8
0
        public JsonResult DeleteProject(int Id)
        {
            ProjectsManager projectsManager = new ProjectsManager();

            projectsManager.Delete(Id);
            return(Json(true, JsonRequestBehavior.AllowGet));
        }
示例#9
0
        public void Update()
        {
            var worker = new Worker("ln3", "fn3", "md3", "em3");

            worker = WorkersManager.Add(worker);

            Project1.Name       = "name2";
            Project1.EmployeeId = worker.Id;
            Project1.LeaderId   = worker.Id;

            Project1.WorkerIds = Project1.Workers.Select(p => p.Id).ToList();
            Project1.WorkerIds.Add(worker.Id);

            ProjectsManager.Update(Project1);

            AssertCount(2, ProjectsManager.GetAll());

            var element = ProjectsManager.Find(Project1.Id);

            Assert.AreEqual(Project1.Name, element.Name);
            Assert.AreEqual(Project1.EmployeeId, element.EmployeeId);
            Assert.AreEqual(Project1.LeaderId, element.LeaderId);
            AssertCount(Project1.WorkerIds.Count(), element.Workers);

            Project1.WorkerIds.RemoveAt(0);
            ProjectsManager.Update(Project1);
            element = ProjectsManager.Find(Project1.Id);

            AssertCount(Project1.WorkerIds.Count(), element.Workers);
        }
示例#10
0
 public AdminController()
 {
     projectsManager  = new ProjectsManager();
     usersManager     = new UsersManager();
     ideationsManager = new IdeationsManager();
     surveysManager   = new SurveysManager();
 }
示例#11
0
        public void GetAll()
        {
            var all = ProjectsManager.GetAll();

            Assert.IsNotNull(all);
            AssertCount(2, all);
        }
        private void newProjButton_Click(object sender, EventArgs e)
        {
            NewProjectForm createForm = new NewProjectForm();
            DialogResult   dr         = createForm.ShowDialog();

            if (dr == DialogResult.OK)
            {
                string projName = createForm.ProjectName;
                string tempName = createForm.TemplateName;
                //Create project
                if (projName.Length > 3)
                {
                    if (ProjectsManager.CreateNewProject(projName, tempName) == "done")
                    {
                        projectListCombo.Text = projName;
                        LoadProject();
                        MessageBox.Show("Project Created", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    else
                    {
                        MessageBox.Show("Unable to Create Project", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }

                AddComboboxItems();
                Console.WriteLine("ok message");
            }
            else
            {
                Console.WriteLine("cancelled");
            }
        }
示例#13
0
        public void Remove()
        {
            var project = ProjectsManager.Remove(Project1.Id);

            Assert.IsNotNull(project);

            project = ProjectsManager.Find(Project1.Id);
            Assert.IsNull(project);
        }
示例#14
0
        protected virtual void InitializeServers()
        {
            ProjectsManager.LoggerServer     = LoggerTab.Server;
            ProjectsManager.SerialPortServer = SerialTab.Server;

            if (Properties.Settings.Default.Logger_OpenLastProject)
            {
                if (ProjectsManager.LoadLastLoggerProject())
                {
                    AppendMessage(
                        string.Format("Loaded from \"{0}\"", Properties.Settings.Default.Logger_LastProject),
                        "Logger");
                }
                else
                {
                    Properties.Settings.Default.Logger_LastProject = string.Empty;
                    Properties.Settings.Default.Save();
                }
            }

            if (Properties.Settings.Default.SerialPort_OpenLastProject)
            {
                if (ProjectsManager.LoadLastSerialPortProject())
                {
                    AppendMessage(
                        string.Format("Loaded from \"{0}\"", Properties.Settings.Default.SerialPort_LastProject),
                        "SerialPort");
                }
                else
                {
                    Properties.Settings.Default.SerialPort_LastProject = string.Empty;
                    Properties.Settings.Default.Save();
                }
            }

            if (string.IsNullOrWhiteSpace(Properties.Settings.Default.Logger_LogPath) == true)
            {
                string documents    = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
                string loggerOutput = Path.Combine(Path.Combine(documents, "Afterburner Data Handler"), "Logger Output");

                Properties.Settings.Default.Logger_LogPath = loggerOutput;
                Properties.Settings.Default.Save();
            }

            if (Properties.Settings.Default.Logger_Autorun)
            {
                ProjectsManager.LoggerServer.Begin();
            }

            if (Properties.Settings.Default.SerialPort_Autorun)
            {
                ProjectsManager.SerialPortServer.Begin();
            }
        }
        private bool HasPermission(Guid Id, string permissionname)
        {
            ProjectsManager _manager = new ProjectsManager();
            var             roles    = _manager.GetUserRolesByUserId(Id);

            if (roles.Select(m => m.RoleName).Contains(permissionname))
            {
                return(true);
            }
            return(false);
        }
        private void AddComboboxItems()
        {
            List <String> allProjects = ProjectsManager.GetProjects();

            projectListCombo.Items.Clear();
            projectListCombo.Text = "";
            foreach (String project in allProjects)
            {
                projectListCombo.Items.Add(project);
            }
        }
示例#17
0
        public void Find()
        {
            var project = ProjectsManager.Find(100);

            Assert.IsNull(project);

            project = ProjectsManager.Find(Project1.Id);

            Assert.IsNotNull(project);
            Assert.IsNotNull(project.Employee);
            Assert.IsNotNull(project.Leader);
            Assert.IsNotNull(project.Workers);
        }
示例#18
0
        public sealed override async Task ComputeRefactoringsAsync(CodeRefactoringContext context)
        {
            //If the documents project has no localizer settings dont give the option
            if (!ProjectsManager.ProjectHasLocalizerSettings(context.Document.Project.Name))
            {
                return;
            }

            //Need to make sure a file is configured before here too!!!!

            //Get the doc we need to work with
            var root = await context.Document.GetSyntaxRootAsync(context.CancellationToken).ConfigureAwait(false);

            // Find the node at the selection.
            var node = root.FindNode(context.Span);

            // Only offer a refactoring if the selected node is a string literal - be it an argument, standalone or attirbute value.
            var argument = node as ArgumentSyntax;

            if (argument != null)
            {
                node = argument.Expression;
            }
            else
            {
                var attributeArgument = node as AttributeArgumentSyntax;
                if (attributeArgument != null)
                {
                    node = attributeArgument.Expression;
                }
            }

            var typeDecl = node as LiteralExpressionSyntax;

            if (typeDecl == null)
            {
                return;
            }

            // Create the action if we are all good
            var action = RefactoringCodeAction.Create("Replace String with KSP Localizer Tag Only", c => ReplaceStringWithAutoLOC(context.Document, typeDecl, c));

            action.OnChangesWithNoPreview += Action_OnDocumentChanged;

            // Register this code action.
            context.RegisterRefactoring(action);
        }
示例#19
0
        //internal static IVsOutputWindow outputWindow;
        //internal static IVsOutputWindowPane generalPane;
        void InitializeExtensibility()
        {
            OutputManager.Initialize(this);
            OutputManager.WriteLine("Extensions Global Initialized.");

            dte = base.GetService(typeof(DTE)) as DTE;
            ProjectsManager.Initialize(dte);

            OutputManager.WriteLine("Projects Manager Running.");


            //ErrorsManager.Initialize(this);

            //outputWindow = base.GetService(typeof(SVsOutputWindow)) as IVsOutputWindow;
            //Guid generalPaneGuid = VSConstants.GUID_OutWindowGeneralPane;
            //outputWindow.GetPane(ref generalPaneGuid, out generalPane);
        }
 /* [Timestamp]
  * public Byte[] RowVersion { get; set; }*/
 public void ImportFromModel(ProjectNews md)
 {
     try
     {
         if (md != null && CommonTools.isEmpty(md.Author) == false
             )
         {
             base.ImportFromModel(md);
             ProjectsManager mng = new ProjectsManager();
             Project = mng.GetProjectById(md.Project);
         }
     }
     catch (Exception ex)
     {
         CommonTools.ErrorReporting(ex);
     }
 }
        public static void Init(UnityUser user, IUpdateDelegate updater, IProjectProvider client) // TODO Rename or move into a ProjectLister manager class
        {
            if (s_ProjectLister != null || s_ProjectsManager != null)
            {
                Dispose();
            }

            // ProjectLister
            s_ProjectLister = new ProjectsLister(client);
            s_ProjectLister.projectListingCompleted += OnProjectListingCompleted;
            s_ProjectLister.projectListingException += OnProjectListingException;

            s_ProjectLister.SetUpdateDelegate(updater);

            s_ProjectsManager = new ProjectsManager(updater, user, Storage.main);
            s_ProjectsManager.projectStatusChanged           += OnProjectStatusChanged;
            s_ProjectsManager.projectDownloadProgressChanged += OnProjectDownloadProgressChanged;
            s_ProjectsManager.projectDeleteProgressChanged   += OnProjectDeleteProgressChanged;
        }
示例#22
0
        public ActionResult EditProjectView(Guid _projectId, Guid _userId)
        {
            using (PureSurveyProjectTrackerEntities psdb = new PureSurveyProjectTrackerEntities())
            {
                Project pjcs = psdb.Projects.FirstOrDefault(x => x.Project_ID == _projectId);

                ProjectsManager pm = new ProjectsManager();
                //Obtaining values
                List <string> _TypesOptions    = pm.getProjectTypesOptions();
                List <string> _StatusesOptions = pm.getProjectStatusOptions();
                List <string> _BakupOptions    = pm.getBackUpPlanOptions();
                List <string> _PMOptions       = pm.getPMOptions();
                List <string> _DevOptions      = pm.getDevsOptions();
                List <string> _DesgnsOptions   = pm.getDesgnsOptions();

                EditModalView pmd = new EditModalView();
                pmd = new EditModalView
                {
                    userId         = _userId,
                    _projectId     = _projectId,
                    ProjectName    = pjcs.ProjectName,
                    ClientName     = pjcs.ClientName,
                    ProjectManager = pjcs.ProjectManager,
                    PMs            = _PMOptions,
                    Developer      = pjcs.Developer,
                    Devs           = _DevOptions,
                    Designer       = pjcs.Designer,
                    Desgns         = _DesgnsOptions,
                    ProjectType    = pjcs.ProjectTypeDescription,
                    Types          = _TypesOptions,
                    Status         = pjcs.Status,
                    Statuses       = _StatusesOptions,
                    URL            = pjcs.URL,
                    ProjectDB      = pjcs.ProjectDB,
                    ProjectServer  = pjcs.ProjectServer,
                    BackUp         = pjcs.BackUpPlan,
                    BackUpOptions  = _BakupOptions,
                    Project_Value  = pjcs.ProjectCost
                };
                return(PartialView("_EditPartial", pmd));
            }
        }
示例#23
0
        public ProjectsModel Refresh(Guid Id, ProjectsModel projectsMod)
        {
            if (projectsMod == null)
            {
                projectsMod = new ProjectsModel();
            }

            ProjectsManager pm = new ProjectsManager();
            //Obtaining values
            List <string> _TypesOptions    = pm.getProjectTypesOptions();
            List <string> _StatusesOptions = pm.getProjectStatusOptions();
            List <string> _BakupOptions    = pm.getBackUpPlanOptions();
            List <string> _PMOptions       = pm.getPMOptions();
            List <string> _DevOptions      = pm.getDevsOptions();
            List <string> _DesgnsOptions   = pm.getDesgnsOptions();
            int           _projectNo       = pm.getProjectNo();

            projectsMod.ItemsPerPage = projectsMod.ItemsPerPage != 0 ? projectsMod.ItemsPerPage : 10;
            var prjcts = GetProjectsFromDb(Id).OrderBy(x => x.ProjectName).ToList();

            projectsMod = new ProjectsModel
            {
                UserId        = Id,
                CampaignItems =
                    prjcts
                    .OrderBy(p => p.ProjectName)
                    .Skip(((projectsMod.PageNo == 0 ? 1 : projectsMod.PageNo) - 1) * (projectsMod.ItemsPerPage == 0 ? 10 : projectsMod.ItemsPerPage))
                    .Take(projectsMod.ItemsPerPage == 0 ? 10 : projectsMod.ItemsPerPage).ToList(),
                Devs          = _DevOptions,
                Desgns        = _DesgnsOptions,
                PMs           = _PMOptions,
                Types         = _TypesOptions,
                Statuses      = _StatusesOptions,
                BackUpOptions = _BakupOptions,
                projectNo     = prjcts.Count,
                PageNo        = 1,
                ItemsPerPage  = 10,
                NoPages       = prjcts.Distinct().Count() / (projectsMod.ItemsPerPage == 0 ? 10 : projectsMod.ItemsPerPage) + (prjcts.Distinct().Count() % (projectsMod.ItemsPerPage == 0 ? 10 : projectsMod.ItemsPerPage) > 0 ? 1 : 0)
            };

            return(projectsMod);
        }
        public static void Dispose()
        {
            if (s_ProjectLister != null)
            {
                s_ProjectLister.projectListingCompleted -= OnProjectListingCompleted;

                s_ProjectLister.Dispose();
                s_ProjectLister = null;
            }

            if (s_ProjectsManager != null)
            {
                s_ProjectsManager.projectStatusChanged           -= OnProjectStatusChanged;
                s_ProjectsManager.projectDownloadProgressChanged -= OnProjectDownloadProgressChanged;
                s_ProjectsManager.projectDeleteProgressChanged   -= OnProjectDeleteProgressChanged;

                s_ProjectsManager.Dispose();
                s_ProjectsManager = null;
            }
        }
示例#25
0
        public void Add()
        {
            var project = new Project("n3", "c3", "c3")
            {
                Workers = new List <Worker>()
                {
                    Worker1, Worker2
                }
            };

            var added = ProjectsManager.Add(project);

            Assert.IsNotNull(added);

            added = ProjectsManager.Find(added.Id);
            Assert.IsNotNull(added);

            Assert.AreEqual(added.Name, project.Name);
            Assert.AreEqual(added.CustomerCompany, project.CustomerCompany);
            Assert.AreEqual(added.ConstractorCompany, project.ConstractorCompany);
            AssertCount(added.Workers.Count(), project.Workers);
        }
        // Constructor
        //----------------------------------------------------------------------------------------
        public ProjectOverview(Project newProject)
        {
            InitializeComponent();

            DateTime s = DateTime.Now;

            Log.System(string.Format("Loading project: {0}", newProject.ProjectName));
            _ProjectIndexer = new Dictionary <int, string>();
            _ProjectManager = new ProjectsManager(newProject);
            _ProjectManager.ProjectsHasChanged += ProjectHasChanged;
            _ProjectManager.TimesHasChanged    += TimesHasChanged;
            _ProjectManager.FileListChanged    += FileListChanged;
            LoadOverview();
            this.Text                = tbProjectName.Text = newProject.ProjectName;
            tbProjectPath.Text       = newProject.ProjectCompletePath;
            tbNotes.Text             = newProject.Notes;
            cbPriority.SelectedIndex = newProject.CurretPriority;
            tbID.Text                = newProject.ID.ToString();
            tsDone.Checked           = newProject.projectDone;
            Log.System("Done - in : " + Log.LapsTime(s, DateTime.Now, string.Format("Loading Project : {0}", newProject.ProjectName)));
            Log.Spacer();
        }
示例#27
0
        private ActionResult GetSortedProjectsModel(Guid _UserId, SortDirections _sortValue, SortItems _element, int pageNumber, int itemsPerPage)
        {
            ProjectsManager pm = new ProjectsManager();
            //Obtaining values
            List <string> _TypesOptions    = pm.getProjectTypesOptions();
            List <string> _StatusesOptions = pm.getProjectStatusOptions();
            List <string> _BakupOptions    = pm.getBackUpPlanOptions();
            List <string> _PMOptions       = pm.getPMOptions();
            List <string> _DevOptions      = pm.getDevsOptions();
            List <string> _DesgnsOptions   = pm.getDesgnsOptions();

            var prjcts = GetProjectsFromDb(_UserId);

            List <ProjectsModel> OrderedProjects = SortAndOrderProjects(_element, _sortValue, prjcts);

            var pmd = new ProjectsModel
            {
                SortItem      = _element,
                SortDirection = _sortValue,
                UserId        = _UserId,
                CampaignItems =
                    OrderedProjects
                    .Skip(((pageNumber == 0 ? 1 : pageNumber) - 1) * (itemsPerPage == 0 ? 10 : itemsPerPage))
                    .Take(itemsPerPage == 0 ? 10 : itemsPerPage).ToList(),
                Devs          = _DevOptions,
                Desgns        = _DesgnsOptions,
                PMs           = _PMOptions,
                Types         = _TypesOptions,
                Statuses      = _StatusesOptions,
                BackUpOptions = _BakupOptions,
                projectNo     = prjcts.Count(),
                PageNo        = (pageNumber == 0 ? 1 : pageNumber),
                NoPages       = prjcts.Distinct().Count() / (itemsPerPage == 0 ? 10 : itemsPerPage) + (prjcts.Distinct().Count() % (itemsPerPage == 0 ? 10 : itemsPerPage) > 0 ? 1 : 0)
            };

            return(PartialView("_tablePartial", pmd));
        }
示例#28
0
        public ActionResult searchTable(Guid userId, string _searchValue)
        {
            ProjectsModel pmd = new ProjectsModel();

            if (!string.IsNullOrEmpty(_searchValue))
            {
                using (PureSurveyProjectTrackerEntities psdb = new PureSurveyProjectTrackerEntities())
                {
                    ProjectsManager pm = new ProjectsManager();
                    //Obtaining values
                    List <string> _TypesOptions    = pm.getProjectTypesOptions();
                    List <string> _StatusesOptions = pm.getProjectStatusOptions();
                    List <string> _BakupOptions    = pm.getBackUpPlanOptions();
                    List <string> _PMOptions       = pm.getPMOptions();
                    List <string> _DevOptions      = pm.getDevsOptions();
                    List <string> _DesgnsOptions   = pm.getDesgnsOptions();

                    string searValue = _searchValue.ToUpper();

                    var prjcts = _manager.GetUserProjectsByUserId(userId).Select(x => new ProjectsModel
                    {
                        _projectId     = x.Project_ID,
                        ProjectName    = x.ProjectName,
                        ClientName     = x.ClientName,
                        ProjectManager = x.ProjectManager,
                        PMs            = _PMOptions,
                        Developer      = x.Developer,
                        Devs           = _DevOptions,
                        Designer       = x.Designer,
                        Desgns         = _DesgnsOptions,
                        ProjectType    = x.ProjectTypeDescription,
                        Types          = _TypesOptions,
                        Status         = x.Status,
                        Statuses       = _StatusesOptions,
                        URL            = x.URL,
                        ProjectDB      = x.ProjectDB,
                        ProjectServer  = x.ProjectServer,
                        BackUp         = x.BackUpPlan,
                        BackUpOptions  = _BakupOptions,
                        ProjectValue   = x.ProjectCost
                    }).Where(x => x.ProjectName.ToUpper().Contains(searValue)).OrderBy(x => x.ProjectName).ToList();

                    pmd = new ProjectsModel
                    {
                        UserId        = userId,
                        PMs           = _PMOptions,
                        Devs          = _DevOptions,
                        Desgns        = _DesgnsOptions,
                        Types         = _TypesOptions,
                        Statuses      = _StatusesOptions,
                        BackUpOptions = _BakupOptions,
                        CampaignItems = prjcts,
                        PageNo        = 1,
                        ItemsPerPage  = 10,
                        projectNo     = prjcts.Count
                    };
                }
            }
            else
            {
                pmd = Refresh(userId);
            }
            return(PartialView("_tablePartial", pmd));
        }
示例#29
0
 public HomeController()
 {
     _authHelper = new AuthorisationHelper();
     _manager    = new ProjectsManager();
 }
示例#30
0
        public ActionResult itemsperpage(int newitemsperpage, Guid _UserId)
        {
            ProjectsModel projectsMod = new ProjectsModel();

            using (PureSurveyProjectTrackerEntities psdb = new PureSurveyProjectTrackerEntities())
            {
                ProjectsManager pm = new ProjectsManager();
                //Obtaining values
                List <string> _TypesOptions    = pm.getProjectTypesOptions();
                List <string> _StatusesOptions = pm.getProjectStatusOptions();
                List <string> _BakupOptions    = pm.getBackUpPlanOptions();
                List <string> _PMOptions       = pm.getPMOptions();
                List <string> _DevOptions      = pm.getDevsOptions();
                List <string> _DesgnsOptions   = pm.getDesgnsOptions();
                int           _projectNo       = pm.getProjectNo();
                projectsMod.ItemsPerPage = newitemsperpage;
                var prjcts = _manager.GetUserProjectsByUserId(_UserId).Select(x => new ProjectsModel
                {
                    projectNo      = _projectNo,
                    _projectId     = x.Project_ID,
                    ProjectName    = x.ProjectName,
                    ClientName     = x.ClientName,
                    ProjectManager = x.ProjectManager,
                    PMs            = _PMOptions,
                    Developer      = x.Developer,
                    Devs           = _DevOptions,
                    Designer       = x.Designer,
                    Desgns         = _DesgnsOptions,
                    ProjectType    = x.ProjectTypeDescription,
                    Types          = _TypesOptions,
                    Status         = x.Status,
                    Statuses       = _StatusesOptions,
                    URL            = x.URL,
                    ProjectDB      = x.ProjectDB,
                    ProjectServer  = x.ProjectServer,
                    BackUp         = x.BackUpPlan,
                    BackUpOptions  = _BakupOptions,
                    ProjectValue   = x.ProjectCost
                }).Where(x => x.ProjectName != null).OrderBy(x => x.ProjectName).ToList();

                projectsMod = new ProjectsModel
                {
                    CampaignItems =
                        prjcts
                        .OrderBy(p => p.ProjectName)
                        .Skip(((projectsMod.PageNo == 0 ? 1 : projectsMod.PageNo) - 1) * (projectsMod.ItemsPerPage == 0 ? 10 : projectsMod.ItemsPerPage))
                        .Take(projectsMod.ItemsPerPage == 0 ? 10 : projectsMod.ItemsPerPage).ToList(),
                    PMs           = _PMOptions,
                    Devs          = _DevOptions,
                    Desgns        = _DesgnsOptions,
                    Types         = _TypesOptions,
                    Statuses      = _StatusesOptions,
                    BackUpOptions = _BakupOptions,

                    projectNo    = prjcts.Count,
                    PageNo       = 1,
                    ItemsPerPage = 10,
                    NoPages      = prjcts.Distinct().Count() / (projectsMod.ItemsPerPage == 0 ? 10 : projectsMod.ItemsPerPage) + (prjcts.Distinct().Count() % (projectsMod.ItemsPerPage == 0 ? 10 : projectsMod.ItemsPerPage) > 0 ? 1 : 0)
                };
            }

            return(PartialView("_tablePartial", projectsMod));
        }