Index: branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Controllers/AdminController.cs
===================================================================
--- branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Controllers/AdminController.cs	(revision 6050)
+++ branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Controllers/AdminController.cs	(revision 6050)
@@ -0,0 +1,76 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+using System.Web.Mvc;
+using System.Web.Security;
+using System.ServiceModel.Security;
+//using HLWebPluginHost.OKBService;
+using System.Diagnostics;
+using HLWebOKBAdminPlugin.OKBAdministrationService;
+using HLWebOKBAdminPlugin.Helpers;
+using HLWebOKBAdminPlugin.Models;
+
+namespace HLWebOKBAdminPlugin.Controllers
+{
+    public class AdminController : Controller
+    {
+        private AdministrationServiceClient CertificateValidator() {
+            AdministrationServiceClient asc = new AdministrationServiceClient();
+
+            asc.ClientCredentials.UserName.UserName = HttpContext.Session["Username"].ToString();
+            asc.ClientCredentials.UserName.Password = HttpContext.Session["Password"].ToString();
+            asc.ClientCredentials.ServiceCertificate.Authentication.CertificateValidationMode = X509CertificateValidationMode.None;
+
+            return asc;
+        }//CertificateValidator 
+
+        public ActionResult Index() {
+            return View();
+        }// ActionResult Index
+
+        public ActionResult Menu() {
+            return View();
+        }//ActionResult Men
+
+        public ActionResult AlgorithmClass() {
+            AdministrationServiceClient adminCLient = Admin.GetClientFactory();
+
+            AdminModel am = new AdminModel();
+            Session["SelectedSubMenu"] = "AlgorithmClass";
+            var algorithmClasses = am.AlgorithmClassGetAll();
+            
+            return View(algorithmClasses);
+        }//ActionResult AlgorithmClass
+
+        public ActionResult Algorithm() {
+            AdministrationServiceClient adminCLient = Admin.GetClientFactory();
+
+            AdminModel am = new AdminModel();
+            Session["SelectedSubMenu"] = "Algorithm";
+            var algorithm = am.AlgorithmsGetAll();
+
+            return View(algorithm);
+        }//Algorithm
+
+        public ActionResult ProblemClass() {
+            AdministrationServiceClient adminCLient = Admin.GetClientFactory();
+
+            AdminModel am = new AdminModel();
+            Session["SelectedSubMenu"] = "ProblemClass";
+            var problemClasses = am.ProblemClassGetAll();
+
+            return View(problemClasses);
+        }//ProblemClass
+
+        public ActionResult Problem() {
+            AdministrationServiceClient adminCLient = Admin.GetClientFactory();
+
+            AdminModel am = new AdminModel();
+            Session["SelectedSubMenu"] = "Problem";
+            var problem = am.ProblemsGetAll();
+
+            return View(problem);
+        }//Problem
+    }
+}
Index: branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Controllers/AlgorithmClassController.cs
===================================================================
--- branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Controllers/AlgorithmClassController.cs	(revision 5764)
+++ 	(revision )
@@ -1,266 +1,0 @@
-﻿using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Web;
-using System.Web.Mvc;
-using HLWebOKBAdminPlugin.ViewModels;
-using System.Web.Security;
-using System.ServiceModel.Security;
-//using HLWebPluginHost.OKBService;
-using System.Diagnostics;
-using HLWebOKBAdminPlugin.OKBAdministrationService;
-
-namespace HLWebOKBAdminPlugin.Controllers
-{
-    public class AlgorithmClassController : Controller
-    {
-        //BASICS: controllers respond to input from the browser, decide what to do and return
-        //        response to the user (Views)
-
-        // for edit form 2 controller actions are needed
-        // first controller action if form is first loaded to display algorithm class data
-        // second controller handles the post action
-
-        //returns a certificated service client for current user .... call this function in every method
-                         
-        //private OKBService.OKBServiceClient CertificateValidator() {
-        //    OKBService.OKBServiceClient sc = new OKBService.OKBServiceClient();
-        //    sc.ClientCredentials.UserName.UserName = Membership.GetUser().UserName;
-        //    //sc.ClientCredentials.UserName.Password = HttpContext.Session["pwd"].ToString();
-        //    sc.ClientCredentials.UserName.Password = "Gerhard";
-        //    sc.ClientCredentials.ServiceCertificate.Authentication.CertificateValidationMode = X509CertificateValidationMode.None;
-
-        //    return sc;
-        //}//CertificateValidator   
-
-        private AdministrationServiceClient CertificateValidator() {
-            AdministrationServiceClient asc = new AdministrationServiceClient();
-
-            asc.ClientCredentials.UserName.UserName = Membership.GetUser().UserName;
-            asc.ClientCredentials.UserName.Password = HttpContext.Session["pwd"].ToString();
-            //asc.ClientCredentials.UserName.Password = "Gerhard";
-            asc.ClientCredentials.ServiceCertificate.Authentication.CertificateValidationMode = X509CertificateValidationMode.None;
-
-            return asc;
-        }//CertificateValidator 
-
-        //
-        // GET: /AlgorithmClass/
-
-        public ActionResult Index() {
-            //the index action is the homepage of the site (AlgorithmClass)  
-            //what happens: generate list of AlgorithmClass and commit the list to the index view
-
-            
-
-            //get certificated service client
-            AdministrationServiceClient asc = CertificateValidator();                        
-
-            var tstModel = new AlgorithmClassViewModel {
-                AlgorithmClass = new AlgorithmClass()
-            };
-
-            Debug.WriteLine("tstModel created");
-
-            //get list of Algorithm Classes
-            var algorithmClasses = new List<AlgorithmClass>();
-            AlgorithmClass[] ac = asc.GetAlgorithmClasses();
-            foreach (AlgorithmClass a in ac) {
-                algorithmClasses.Add(a);
-            }//foreach            
-
-            //return Index View that contains a list of all AlgorithmClasses (Views/Index.aspx)
-            return View(algorithmClasses);
-        }//Index
-
-        //
-        // GET: /AlgorithmClass/Details/5
-
-        public ActionResult Details(int id) {
-            //what happens: get AlgorithmClass object , create a viewmodel which contains the data
-            //              for the view and commit the viewmodel to the view
-            //              => correlates to a HTTP GET request
-
-            //get certificated service client
-            AdministrationServiceClient asc = CertificateValidator();
-
-            //the viewmodel contains data for the view
-            var viewModel = new AlgorithmClassViewModel {
-                AlgorithmClass = asc.GetAlgorithmClass(id)
-            };
-
-            ViewData["AlgorithmClass"] = viewModel;
-
-            return View();
-        }//Details
-
-        //
-        // GET: /AlgorithmClass/Create
-
-        public ActionResult Create() {
-            //what happens: create empty AlgorithmClass object , create a viewmodel which contains the data
-            //              for the view and commit the viewmodel to the view
-            //              this Create action is needed for first time call of the page to display content
-
-            //get certificated service client
-            AdministrationServiceClient asc = CertificateValidator();
-
-            //the viewmodel with empty AlgorithmClass object
-            var viewModel = new AlgorithmClassViewModel {
-                AlgorithmClass = new AlgorithmClass()
-            };
-
-            ViewData["AlgorithmClass"] = viewModel;
-
-            return View();
-        }//Create
-
-        //
-        // POST: /AlgorithmClass/Create
-
-        [HttpPost]
-        public ActionResult Create(AlgorithmClass algorithmClass) {
-            //what happens: the 2nd Create controller handles the POST action from the form
-            //              an AlgorithmClass object is passed from the Create view by submit
-
-            try {
-                //get certificated service client
-                AdministrationServiceClient asc = CertificateValidator();
-
-                //create new AlgorithmClass object
-                AlgorithmClass ac = new AlgorithmClass();
-                ac.Id = algorithmClass.Id;
-                ac.Name = algorithmClass.Name;
-                ac.Description = algorithmClass.Description;
-
-                //add new AlgorithmClass
-                asc.AddAlgorithmClass(ac);
-
-                //redirect to the home page
-                return RedirectToAction("Index");
-            }
-            catch {
-                //invalid - redisplay with errors
-                var viewModel = new AlgorithmClassViewModel {
-                    AlgorithmClass = algorithmClass
-                };
-
-                ViewData["AlgorithmClass"] = viewModel;
-
-                return View();
-            }
-        }//Create - post
-
-        //
-        // GET: /AlgorithmClass/Edit/5
-
-        public ActionResult Edit(int id) {
-            //what happens: get AlgorithmClass object , create a viewmodel which contains the data
-            //              for the view and commit the viewmodel to the view
-            //              => correlates to a HTTP GET request
-            
-            //get certificated service client
-            AdministrationServiceClient asc = CertificateValidator();
-
-            //the viewmodel contains data for the view
-            var viewModel = new AlgorithmClassViewModel {
-                AlgorithmClass = asc.GetAlgorithmClass(id)
-            };
-
-            ViewData["AlgorithmClass"] = viewModel;
-
-            return View();
-        }//Edit
-
-        //
-        // POST: /AlgorithmClass/Edit/5
-
-        [HttpPost]
-        public ActionResult Edit(int id, FormCollection collection) {
-            //what happens: the 2nd Edit controller handles the POST action from the form
-            //              an AlgorithmClass object is passed from the Edit view by submit
-
-            //get certificated service client
-            AdministrationServiceClient asc = CertificateValidator();
-
-            //get AlgorithmClass object from DB
-            var algorithmClass = asc.GetAlgorithmClass(id);
-
-            try {
-                // update AlgorithmClass
-                UpdateModel(algorithmClass, "AlgorithmClass");
-
-                AlgorithmClass ac = new AlgorithmClass();
-                ac.Id = algorithmClass.Id;
-                ac.Name = algorithmClass.Name;
-                ac.Description = algorithmClass.Description;
-
-                asc.UpdateAlgorithmClass(ac);
-
-                return RedirectToAction("Index");
-            }
-            catch {
-                var viewModel = new AlgorithmClassViewModel {
-                    AlgorithmClass = algorithmClass
-                };
-
-                ViewData["AlgorithmClass"] = viewModel;
-
-                return View();
-            }
-        }//Edit
-
-        //
-        // GET: /AlgorithmClass/Delete/5
-
-        public ActionResult Delete(int id) {
-            //what happens: get AlgorithmClass object , create a viewmodel which contains the data
-            //              for the view and commit the viewmodel to the view
-            //              => correlates to a HTTP GET request
-
-            //get certificated service client
-            AdministrationServiceClient asc = CertificateValidator();
-
-            //the viewmodel contains data for the view
-            var viewModel = new AlgorithmClassViewModel {
-                AlgorithmClass = asc.GetAlgorithmClass(id)
-            };
-
-            ViewData["AlgorithmClass"] = viewModel;
-
-            return View();
-        }//Delete
-
-        //
-        // POST: /AlgorithmClass/Delete/5
-
-        [HttpPost]
-        public ActionResult Delete(int id, FormCollection collection) {
-            //what happens: the 2nd Delete controller handles the POST action from the form
-            //              an AlgorithmClass object is passed from the Delete view by submit
-   
-            //get certificated service client
-            AdministrationServiceClient asc = CertificateValidator();
-
-            //load object from db
-            var algorithmClass = asc.GetAlgorithmClass(id);
-
-            try {
-                //delete object
-                asc.DeleteAlgorithmClass(id);
-
-                return RedirectToAction("Index");
-            }
-            catch {
-                var viewModel = new AlgorithmClassViewModel {
-                    AlgorithmClass = algorithmClass
-                };
-
-                ViewData["AlgorithmClass"] = viewModel;
-
-                return View();
-            }
-        }//Delete
-
-    }
-}
Index: branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Controllers/HomeController.cs
===================================================================
--- branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Controllers/HomeController.cs	(revision 6050)
+++ branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Controllers/HomeController.cs	(revision 6050)
@@ -0,0 +1,26 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+using System.Web.Mvc;
+
+namespace HLWebOKBAdminPlugin.Controllers
+{
+    [HandleError]
+    public class HomeController : Controller
+    {
+        //
+        // GET: /Home/
+
+        public ActionResult Index()
+        {
+            ViewData["Message"] = "Welcome to ASP.NET MVC!";
+            return View();
+        }
+
+        public ActionResult About() {
+            return View();
+        }
+
+    }
+}
Index: branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Controllers/ServiceTestController.cs
===================================================================
--- branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Controllers/ServiceTestController.cs	(revision 5764)
+++ 	(revision )
@@ -1,105 +1,0 @@
-﻿using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Web;
-using System.Web.Mvc;
-
-namespace HLWebServiceTestPlugin.Controllers
-{
-    public class ServiceTestController : Controller
-    {
-        //
-        // GET: /ServiceTest/
-
-        public ActionResult Index()
-        {
-            return View();
-        }
-
-        //
-        // GET: /ServiceTest/Details/5
-
-        public ActionResult Details(int id)
-        {
-            return View();
-        }
-
-        //
-        // GET: /ServiceTest/Create
-
-        public ActionResult Create()
-        {
-            return View();
-        } 
-
-        //
-        // POST: /ServiceTest/Create
-
-        [HttpPost]
-        public ActionResult Create(FormCollection collection)
-        {
-            try
-            {
-                // TODO: Add insert logic here
-
-                return RedirectToAction("Index");
-            }
-            catch
-            {
-                return View();
-            }
-        }
-        
-        //
-        // GET: /ServiceTest/Edit/5
- 
-        public ActionResult Edit(int id)
-        {
-            return View();
-        }
-
-        //
-        // POST: /ServiceTest/Edit/5
-
-        [HttpPost]
-        public ActionResult Edit(int id, FormCollection collection)
-        {
-            try
-            {
-                // TODO: Add update logic here
- 
-                return RedirectToAction("Index");
-            }
-            catch
-            {
-                return View();
-            }
-        }
-
-        //
-        // GET: /ServiceTest/Delete/5
- 
-        public ActionResult Delete(int id)
-        {
-            return View();
-        }
-
-        //
-        // POST: /ServiceTest/Delete/5
-
-        [HttpPost]
-        public ActionResult Delete(int id, FormCollection collection)
-        {
-            try
-            {
-                // TODO: Add delete logic here
- 
-                return RedirectToAction("Index");
-            }
-            catch
-            {
-                return View();
-            }
-        }
-    }
-}
Index: branches/WebApplication/MVC2/HLWebOKBAdminPlugin/HLWebOKBAdminPlugin.csproj
===================================================================
--- branches/WebApplication/MVC2/HLWebOKBAdminPlugin/HLWebOKBAdminPlugin.csproj	(revision 5764)
+++ branches/WebApplication/MVC2/HLWebOKBAdminPlugin/HLWebOKBAdminPlugin.csproj	(revision 6050)
@@ -88,11 +88,13 @@
   </ItemGroup>
   <ItemGroup>
-    <Compile Include="Controllers\AlgorithmClassController.cs" />
-    <Compile Include="Controllers\ServiceTestController.cs" />
+    <Compile Include="Controllers\AdminController.cs" />
+    <Compile Include="Controllers\HomeController.cs" />
     <Compile Include="Global.asax.cs">
       <DependentUpon>Global.asax</DependentUpon>
     </Compile>
+    <Compile Include="Helpers\Admin.cs" />
     <Compile Include="Helpers\HtmlHelpers.cs" />
     <Compile Include="Models\AccountModels.cs" />
+    <Compile Include="Models\AdminModel.cs" />
     <Compile Include="Models\AlgorithmClassModel.cs" />
     <Compile Include="Properties\AssemblyInfo.cs" />
@@ -102,5 +104,4 @@
       <DependentUpon>Reference.svcmap</DependentUpon>
     </Compile>
-    <Compile Include="ViewModels\AlgorithmClassViewModel.cs" />
   </ItemGroup>
   <ItemGroup>
@@ -133,9 +134,12 @@
       <LastGenOutput>Reference.cs</LastGenOutput>
     </None>
-    <Content Include="Views\AlgorithmClass\Create.aspx" />
-    <Content Include="Views\AlgorithmClass\Delete.aspx" />
-    <Content Include="Views\AlgorithmClass\Details.aspx" />
-    <Content Include="Views\AlgorithmClass\Edit.aspx" />
-    <Content Include="Views\AlgorithmClass\Index.aspx" />
+    <EmbeddedResource Include="Views\Admin\Menu.ascx" />
+    <Content Include="Views\Admin\Algorithm.aspx" />
+    <Content Include="Views\Admin\AlgorithmClass.aspx" />
+    <Content Include="Views\Admin\Index.aspx" />
+    <Content Include="Views\Admin\Problem.aspx" />
+    <Content Include="Views\Admin\ProblemClass.aspx" />
+    <Content Include="Views\Home\About.aspx" />
+    <Content Include="Views\Home\Index.aspx" />
     <Content Include="Views\ServiceTest\Index.aspx" />
     <Content Include="Web.config">
@@ -166,4 +170,7 @@
     <Content Include="Views\Web.config" />
     <None Include="Service References\OKBAdministrationService\AdministrationService.wsdl" />
+    <None Include="Service References\OKBAdministrationService\AdministrationService.xsd">
+      <SubType>Designer</SubType>
+    </None>
     <None Include="Service References\OKBAdministrationService\AdministrationService1.xsd">
       <SubType>Designer</SubType>
@@ -180,4 +187,5 @@
     <Folder Include="App_LocalResources\" />
     <Folder Include="Resources\" />
+    <Folder Include="ViewModels\" />
   </ItemGroup>
   <ItemGroup>
@@ -186,9 +194,4 @@
   <ItemGroup>
     <WCFMetadataStorage Include="Service References\OKBAdministrationService\" />
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="Service References\OKBAdministrationService\AdministrationService.xsd">
-      <SubType>Designer</SubType>
-    </None>
   </ItemGroup>
   <Choose>
Index: branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Helpers/Admin.cs
===================================================================
--- branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Helpers/Admin.cs	(revision 6050)
+++ branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Helpers/Admin.cs	(revision 6050)
@@ -0,0 +1,38 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+using HLWebOKBAdminPlugin.OKBAdministrationService;
+using System.ServiceModel.Security;
+
+namespace HLWebOKBAdminPlugin.Helpers {
+    public class Admin {
+
+        public static AdministrationServiceClient GetClientFactory() {
+            return GetClientFactory(GetSessionString("Username"), GetSessionString("Password"));
+        }
+
+        public static AdministrationServiceClient GetClientFactory(string username, string password) {
+            try {
+                AdministrationServiceClient adminClient = new AdministrationServiceClient();
+                adminClient.ClientCredentials.UserName.UserName = username;
+                adminClient.ClientCredentials.UserName.Password = password;
+                adminClient.ClientCredentials.ServiceCertificate.Authentication.CertificateValidationMode = X509CertificateValidationMode.None;
+                return adminClient;
+            }
+            catch {
+            }
+            return null;
+        }
+
+        public static string GetSessionString(string name) {
+            if (name != null) {
+                object o = HttpContext.Current.Session[name];
+                if (o != null) {
+                    return o.ToString();
+                }
+            }
+            return string.Empty;
+        }
+    }
+}
Index: branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Models/AdminModel.cs
===================================================================
--- branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Models/AdminModel.cs	(revision 6050)
+++ branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Models/AdminModel.cs	(revision 6050)
@@ -0,0 +1,81 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+using HLWebOKBAdminPlugin.OKBAdministrationService;
+using HLWebOKBAdminPlugin.Helpers;
+
+namespace HLWebOKBAdminPlugin.Models {
+    public class AdminModel {
+        //member var
+        private IList<AlgorithmClass> algorithmClassList;
+
+        public String SelectedSubMenu { get; set; }
+        public IList<AlgorithmClass> AlgorithmClassProp { get { return algorithmClassList; } set { ;} }
+
+        //get all algorithm classes
+        public IList<AlgorithmClass> AlgorithmClassGetAll() {
+            AdministrationServiceClient adminClient = Admin.GetClientFactory();
+
+            algorithmClassList = new List<AlgorithmClass>();
+
+            if (adminClient != null) {
+                AlgorithmClass[] algorithmClasses = adminClient.GetAlgorithmClasses();
+                foreach (AlgorithmClass ac in algorithmClasses) {
+                    algorithmClassList.Add(ac);
+
+                }
+            }//if (adminClient != null)
+
+            return algorithmClassList;
+        }//AlgorithmClassGetAll
+        
+        //get all algorithms
+        public IList<Algorithm> AlgorithmsGetAll() {
+            AdministrationServiceClient adminClient = Admin.GetClientFactory();
+
+            IList<Algorithm> algorithmList = new List<Algorithm>();
+
+            if (adminClient != null) {
+                Algorithm[] algorithm = adminClient.GetAlgorithms();
+                foreach (Algorithm al in algorithm) {
+                    algorithmList.Add(al);
+
+                }
+            }//if (adminClient != null)
+
+            return algorithmList;
+        }//AlgorithmsGetAll
+
+        public IList<ProblemClass> ProblemClassGetAll() {
+            AdministrationServiceClient adminClient = Admin.GetClientFactory();
+
+            IList<ProblemClass> problemClassList = new List<ProblemClass>();
+
+            if (adminClient != null) {
+                ProblemClass[] problemClasses = adminClient.GetProblemClasses();
+                foreach (ProblemClass pc in problemClasses) {
+                    problemClassList.Add(pc);
+                }
+            }//if (adminClient != null)
+
+            return problemClassList;
+        }//ProblemClassGetAll
+
+        public IList<Problem> ProblemsGetAll() {
+            AdministrationServiceClient adminClient = Admin.GetClientFactory();
+
+            IList<Problem> problemList = new List<Problem>();
+
+            if (adminClient != null) {
+                Problem[] problem = adminClient.GetProblems();
+                foreach (Problem pr in problem) {
+                    problemList.Add(pr);
+
+                }
+            }//if (adminClient != null)
+
+            return problemList;
+        }//ProblemsGetAll
+    }
+}
Index: branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Models/AlgorithmClass.cs
===================================================================
--- branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Models/AlgorithmClass.cs	(revision 5764)
+++ 	(revision )
@@ -1,28 +1,0 @@
-﻿using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Web;
-using System.ComponentModel.DataAnnotations;
-using System.Web.Mvc;
-using System.ComponentModel;
-
-namespace HLWebOKBAdminPlugin.Models {
-
-    [MetadataType(typeof(AlgorithmClassMetaData))]
-    public partial class AlgorithmClass {
-
-        [Bind(Exclude = "Id")]
-        public class AlgorithmClassMetaData {
-            [ScaffoldColumn(false)]
-            public object Id { get; set; }
-
-            [DisplayName("Description")]
-            public object Description { get; set; }
-
-            [Required(ErrorMessage = "An AlgorithmClass Name is required")]
-            public object Name { get; set; }
-
-        }
-
-    }
-}
Index: branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Properties/AssemblyInfo.cs
===================================================================
--- branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Properties/AssemblyInfo.cs	(revision 5764)
+++ branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Properties/AssemblyInfo.cs	(revision 6050)
@@ -41,8 +41,8 @@
 [assembly: WebResource("HLWebOKBAdminPlugin.Resources.Update.bmp", "image/bmp")]
 [assembly: HLWebPluginViewLocations(
-    new string[] { "~/Plugins/HLWebOKBAdminPlugin.dll/HLWebOKBAdminPlugin.Views.{1}.{0}.aspx" },
+    new string[] { "~/Plugins/HLWebOKBAdminPlugin.dll/HLWebOKBAdminPlugin.Views.{1}.{0}.aspx", "~/Plugins/HLWebOKBAdminPlugin.dll/HLWebOKBAdminPlugin.Views.{1}.{0}.ascx" },
     true,
     action = "index",
-    controller = "AlgorithmClass",
-    name = "OKB Administrator"
+    controller = "Admin",
+    name = "OKB Admin"
     )]
Index: branches/WebApplication/MVC2/HLWebOKBAdminPlugin/ViewModels/AlgorithmClassBrowseViewModel.cs
===================================================================
--- branches/WebApplication/MVC2/HLWebOKBAdminPlugin/ViewModels/AlgorithmClassBrowseViewModel.cs	(revision 5764)
+++ 	(revision )
@@ -1,12 +1,0 @@
-﻿using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Web;
-using HLWebPluginHost.OKBService;
-
-namespace HLWebOKBAdminPlugin.ViewModels {
-    public class AlgorithmClassBrowseViewModel {
-        public HLWebPluginHost.OKBService.AlgorithmClass AlgorithmClassModel { get; set; }
-        public ICollection<HLWebPluginHost.OKBService.AlgorithmClass> AlgorithmClasses { get; set; }
-    }
-}
Index: branches/WebApplication/MVC2/HLWebOKBAdminPlugin/ViewModels/AlgorithmClassIndexViewModel.cs
===================================================================
--- branches/WebApplication/MVC2/HLWebOKBAdminPlugin/ViewModels/AlgorithmClassIndexViewModel.cs	(revision 5764)
+++ 	(revision )
@@ -1,14 +1,0 @@
-﻿using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Web;
-
-namespace HLWebOKBAdminPlugin.ViewModels {
-    //view model for Algorithm Class Index page
-    //(passes information from the controller to the view)
-
-    public class AlgorithmClassIndexViewModel {
-        public int NumberOfAlgorithmClasses { get; set; }
-        public ICollection<HLWebPluginHost.OKBService.AlgorithmClass> AlgorithmClasses { get; set; }
-    }//AlgorithmClassIndexViewModel
-}
Index: branches/WebApplication/MVC2/HLWebOKBAdminPlugin/ViewModels/AlgorithmClassViewModel.cs
===================================================================
--- branches/WebApplication/MVC2/HLWebOKBAdminPlugin/ViewModels/AlgorithmClassViewModel.cs	(revision 5764)
+++ 	(revision )
@@ -1,15 +1,0 @@
-﻿using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Web;
-using HLWebOKBAdminPlugin.OKBAdministrationService;
-
-namespace HLWebOKBAdminPlugin.ViewModels {
-    public class AlgorithmClassViewModel {
-        //if required, add more properties to the managed object
-        //in this case the view model contains only a list of AlgorithmClass
-
-        public AlgorithmClass AlgorithmClass { get; set; }
-
-    }//AlgorithmClassViewModel
-}
Index: branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Admin/Algorithm.aspx
===================================================================
--- branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Admin/Algorithm.aspx	(revision 6050)
+++ branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Admin/Algorithm.aspx	(revision 6050)
@@ -0,0 +1,24 @@
+﻿<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %>
+
+<asp:Content ID="Content3" runat="server" ContentPlaceHolderID="SubMenuContent">
+   <% Html.RenderAction("Menu"); %>
+</asp:Content>
+
+<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
+	Algorithm
+</asp:Content>
+
+<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
+
+    <form id="formAlgorithm" runat="server">
+
+    <h2>Algorithm</h2>
+
+    <asp:ListBox ID="lbxAlgorithm" runat="server" DataSourceID="odsAlgorithm" 
+        DataTextField="Name" DataValueField="Id" Width="240px" Height="350px" style="margin-top: 0px"></asp:ListBox>
+    <asp:ObjectDataSource ID="odsAlgorithm" runat="server" 
+        SelectMethod="AlgorithmsGetAll" 
+        TypeName="HLWebOKBAdminPlugin.Models.AdminModel"></asp:ObjectDataSource>
+    </form>
+
+</asp:Content>
Index: branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Admin/AlgorithmClass.aspx
===================================================================
--- branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Admin/AlgorithmClass.aspx	(revision 6050)
+++ branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Admin/AlgorithmClass.aspx	(revision 6050)
@@ -0,0 +1,33 @@
+﻿<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %>
+
+<asp:Content ID="Content3" runat="server" ContentPlaceHolderID="SubMenuContent">
+   <% Html.RenderAction("Menu"); %>
+</asp:Content>
+
+<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
+	AlgorithmClass
+</asp:Content>
+
+<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
+
+    <form id="formAlgorithmClass" runat="server">
+
+    <h2>AlgorithmClass</h2>    
+
+     <asp:ListBox ID="lbxAlgorithmClasses" runat="server"  
+            DataTextField="Name" DataValueField="Id" Height="350px" style="margin-top: 0px" 
+            Width="240px" DataSourceID="odsAlgorithmClasses">
+        </asp:ListBox>
+    
+    <asp:ObjectDataSource ID="odsAlgorithmClasses" runat="server" 
+        SelectMethod="AlgorithmClassGetAll" 
+        TypeName="HLWebOKBAdminPlugin.Models.AdminModel"></asp:ObjectDataSource>
+    
+    <p>
+        <%: Html.ActionLink("Create New", "Create") %>
+    </p>
+
+    </form>
+
+</asp:Content>
+
Index: branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Admin/Index.aspx
===================================================================
--- branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Admin/Index.aspx	(revision 6050)
+++ branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Admin/Index.aspx	(revision 6050)
@@ -0,0 +1,15 @@
+﻿<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %>
+
+<asp:Content ID="Content3" runat="server" ContentPlaceHolderID="SubMenuContent">
+   <% Html.RenderAction("Menu"); %>
+</asp:Content>
+
+<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
+	Index
+</asp:Content>
+
+<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
+
+    <h2>Index</h2>
+
+</asp:Content>
Index: branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Admin/Menu.ascx
===================================================================
--- branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Admin/Menu.ascx	(revision 6050)
+++ branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Admin/Menu.ascx	(revision 6050)
@@ -0,0 +1,16 @@
+﻿<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>
+
+<ul>
+<li <% if(Session["SelectedSubMenu"] == "AlgorithmClass") {%> class="selected" <%}%>>
+    <%: Html.ActionLink("AlgorithmClass", "AlgorithmClass", "Admin")%>
+</li>
+<li <% if(Session["SelectedSubMenu"] == "Algorithm") {%> class="selected" <%}%>>
+    <%: Html.ActionLink("Algorithm", "Algorithm", "Admin") %>
+</li>
+<li <% if(Session["SelectedSubMenu"] == "ProblemClass") {%> class="selected" <%}%>>
+    <%: Html.ActionLink("ProblemClass", "ProblemClass", "Admin")%>
+</li>
+<li <% if(Session["SelectedSubMenu"] == "Problem") {%> class="selected" <%}%>>
+    <%: Html.ActionLink("Problem", "Problem", "Admin") %>
+</li>
+</ul>
Index: branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Admin/Problem.aspx
===================================================================
--- branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Admin/Problem.aspx	(revision 6050)
+++ branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Admin/Problem.aspx	(revision 6050)
@@ -0,0 +1,26 @@
+﻿<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %>
+
+
+<asp:Content ID="Content3" runat="server" ContentPlaceHolderID="SubMenuContent">
+   <% Html.RenderAction("Menu"); %>
+</asp:Content>
+
+<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
+	Problem
+</asp:Content>
+
+<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
+
+    <form id="formProblem" runat="server">
+
+        <h2>Problem</h2>
+
+        <asp:ListBox ID="lbxProblem" runat="server"
+                       Width="240px" Height="350px" style="margin-top: 0px" 
+            DataSourceID="odsProblem" DataTextField="Name" DataValueField="Id"></asp:ListBox>
+        <asp:ObjectDataSource ID="odsProblem" runat="server" 
+            SelectMethod="ProblemsGetAll" TypeName="HLWebOKBAdminPlugin.Models.AdminModel">
+        </asp:ObjectDataSource>
+    </form>
+
+</asp:Content>
Index: branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Admin/ProblemClass.aspx
===================================================================
--- branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Admin/ProblemClass.aspx	(revision 6050)
+++ branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Admin/ProblemClass.aspx	(revision 6050)
@@ -0,0 +1,22 @@
+﻿<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %>
+
+<asp:Content ID="Content3" runat="server" ContentPlaceHolderID="SubMenuContent">
+   <% Html.RenderAction("Menu"); %>
+</asp:Content>
+
+<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
+	ProblemClass
+</asp:Content>
+
+<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
+    <form id="formProblemClass" runat="server">
+
+        <h2>ProblemClass</h2>
+
+        <asp:ListBox ID="lbxProblemClasses" runat="server" DataSourceID="odsProblemClass" 
+            DataTextField="Name" DataValueField="Id" Width="240px" Height="350px" style="margin-top: 0px"></asp:ListBox>
+        <asp:ObjectDataSource ID="odsProblemClass" runat="server" 
+            SelectMethod="ProblemClassGetAll" 
+            TypeName="HLWebOKBAdminPlugin.Models.AdminModel"></asp:ObjectDataSource>
+    </form>
+</asp:Content>
Index: branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Home/About.aspx
===================================================================
--- branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Home/About.aspx	(revision 6050)
+++ branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Home/About.aspx	(revision 6050)
@@ -0,0 +1,12 @@
+﻿<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %>
+
+<asp:Content ID="aboutTitle" ContentPlaceHolderID="TitleContent" runat="server">
+	About
+</asp:Content>
+
+<asp:Content ID="aboutContent" ContentPlaceHolderID="MainContent" runat="server">
+<h2>About</h2>
+    <p>
+        Put content here.
+    </p>
+</asp:Content>
Index: branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Home/Index.aspx
===================================================================
--- branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Home/Index.aspx	(revision 6050)
+++ branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Views/Home/Index.aspx	(revision 6050)
@@ -0,0 +1,12 @@
+﻿<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %>
+
+<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
+	Home Page
+</asp:Content>
+
+<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
+ <h2><%: ViewData["Message"] %></h2>
+    <p>
+        To learn more about ASP.NET MVC visit <a href="http://asp.net/mvc" title="ASP.NET MVC Website">http://asp.net/mvc</a>.
+    </p>
+</asp:Content>
Index: branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Web.config
===================================================================
--- branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Web.config	(revision 5764)
+++ branches/WebApplication/MVC2/HLWebOKBAdminPlugin/Web.config	(revision 6050)
@@ -93,5 +93,21 @@
               algorithmSuite="Default" />
           </security>
-        </binding>        
+        </binding>
+        <binding name="AdministrationService1" closeTimeout="00:01:00"
+          openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
+          bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard"
+          maxBufferPoolSize="524288" maxReceivedMessageSize="65536" messageEncoding="Text"
+          textEncoding="utf-8" useDefaultWebProxy="true" allowCookies="false">
+          <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
+            maxBytesPerRead="4096" maxNameTableCharCount="16384" />
+          <reliableSession ordered="true" inactivityTimeout="00:10:00"
+            enabled="false" />
+          <security mode="Message">
+            <transport clientCredentialType="Windows" proxyCredentialType="None"
+              realm="" />
+            <message clientCredentialType="UserName" negotiateServiceCredential="true"
+              algorithmSuite="Default" />
+          </security>
+        </binding>
       </wsHttpBinding>
     </bindings>
@@ -103,5 +119,12 @@
           <certificate encodedValue="AwAAAAEAAAAUAAAAwK1+2oAmcy/mI2P2QjyiJRh0y60gAAAAAQAAACoCAAAwggImMIIBj6ADAgECAhAIkseQ2EEhgU720qJA61gqMA0GCSqGSIb3DQEBBAUAMCQxIjAgBgNVBAMTGXNlcnZpY2VzLmhldXJpc3RpY2xhYi5jb20wHhcNMTAwNTExMTExNDAyWhcNMzkxMjMxMjM1OTU5WjAkMSIwIAYDVQQDExlzZXJ2aWNlcy5oZXVyaXN0aWNsYWIuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCq26Bwmwc7k+4W30qLQ2j+FInEL5BuH6opDY6CSlrtt3xQS/anrhvpbf3QghLDVINzcHkzbPmm/SguG4F85QLB6xO+tJaOvRo0iEK5g3c307vMIru7FJwk/OhplEQ5J1hbDgL3zOJlrWlgtqRVxCtVdF3XroI9BctOt1NkeKv9ewIDAQABo1kwVzBVBgNVHQEETjBMgBCjbgdYd4j5JgUuJ1Wo/GxroSYwJDEiMCAGA1UEAxMZc2VydmljZXMuaGV1cmlzdGljbGFiLmNvbYIQCJLHkNhBIYFO9tKiQOtYKjANBgkqhkiG9w0BAQQFAAOBgQAb/2xk2uQad68shSPl/uixWgvFI8WkxOTBopOLaLtDxwCeZ3mWVHdV9VnixHtThubnEBXAhYOCQSIXWtQuXFWO+gH3YyjTRJY5kTmXyuvBRTn3/so5SrQ7Rdlm9hf6E5YVX3tCjAy7ybUyaDUkQfmH5vmvgvpMzRfsJ1qhnUpJiQ==" />
         </identity>
-      </endpoint>      
+      </endpoint>
+      <endpoint address="http://services.heuristiclab.com/OKB.SPR-3.3/AdministrationService.svc"
+        binding="wsHttpBinding" bindingConfiguration="AdministrationService1"
+        contract="OKBAdministrationService.IAdministrationService" name="AdministrationService1">
+        <identity>
+          <certificate encodedValue="AwAAAAEAAAAUAAAAwK1+2oAmcy/mI2P2QjyiJRh0y60gAAAAAQAAACoCAAAwggImMIIBj6ADAgECAhAIkseQ2EEhgU720qJA61gqMA0GCSqGSIb3DQEBBAUAMCQxIjAgBgNVBAMTGXNlcnZpY2VzLmhldXJpc3RpY2xhYi5jb20wHhcNMTAwNTExMTExNDAyWhcNMzkxMjMxMjM1OTU5WjAkMSIwIAYDVQQDExlzZXJ2aWNlcy5oZXVyaXN0aWNsYWIuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCq26Bwmwc7k+4W30qLQ2j+FInEL5BuH6opDY6CSlrtt3xQS/anrhvpbf3QghLDVINzcHkzbPmm/SguG4F85QLB6xO+tJaOvRo0iEK5g3c307vMIru7FJwk/OhplEQ5J1hbDgL3zOJlrWlgtqRVxCtVdF3XroI9BctOt1NkeKv9ewIDAQABo1kwVzBVBgNVHQEETjBMgBCjbgdYd4j5JgUuJ1Wo/GxroSYwJDEiMCAGA1UEAxMZc2VydmljZXMuaGV1cmlzdGljbGFiLmNvbYIQCJLHkNhBIYFO9tKiQOtYKjANBgkqhkiG9w0BAQQFAAOBgQAb/2xk2uQad68shSPl/uixWgvFI8WkxOTBopOLaLtDxwCeZ3mWVHdV9VnixHtThubnEBXAhYOCQSIXWtQuXFWO+gH3YyjTRJY5kTmXyuvBRTn3/so5SrQ7Rdlm9hf6E5YVX3tCjAy7ybUyaDUkQfmH5vmvgvpMzRfsJ1qhnUpJiQ==" />
+        </identity>
+      </endpoint>
     </client>
   </system.serviceModel>
