using AvmWebServiceDemo.AvocetDataProxy;
using AvmWebServiceDemo.AvocetDataProxy.SLB.AvocetVM.Pune.Contracts;
using AvmWebServiceDemo.AvocetDataProxy.SLB.AvocetVMService.Contracts;
using AvmWebServiceDemo.AvocetDataProxy.SLB.AvocetVMService.Contracts.Request;
using AvmWebServiceDemo.Models;
using Kendo.Mvc.UI;
using SLB.AvocetVMService.SharedServiceInterfaces;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web.Mvc;
using WebMatrix.WebData;

using System.Data.SqlClient;
using System.Data.Linq;
using Kendo.Mvc.Extensions;

namespace AvmWebServiceDemo.Controllers
{
    [Authorize]
    public class HomeController : Controller
    {

        public ActionResult Index(FormCollection formData)
        {


            return View(new DataTable());
        }

         
        [HttpGet]
        public ActionResult Read([DataSourceRequest] DataSourceRequest request, string searchTerm)
        {

            DataTable data = XmlResponse();

            return Json(data.ToDataSourceResult(request), JsonRequestBehavior.AllowGet);
        }
        [HttpPost]
        public ActionResult Read([DataSourceRequest] DataSourceRequest request, FormCollection formData)
        {
            if (formData.Keys.Count == 5)
            {
                DataTable data = XmlResponse();

                return Json(data.ToDataSourceResult(request), JsonRequestBehavior.AllowGet);
            }
            return Json(new DataTable().ToDataSourceResult(request), JsonRequestBehavior.AllowGet);
        }

        private DataTable XmlResponse()
        {
            var dataTable = new DataTable();


            dataTable.Columns.Add(new DataColumn { ColumnName = "Temp" });
            dataTable.Columns.Add(new DataColumn { ColumnName = "Temp1" });
            dataTable.Columns.Add(new DataColumn { ColumnName = "Temp2" });
            dataTable.Columns.Add(new DataColumn { ColumnName = "Temp3" });

            for (int i = 0; i < 10; i++)
            {
                var dr = dataTable.NewRow();
                dr[0] = "Name";
                dr[1] = "Name1";
                dr[2] = "Name2";
                dr[3] = "Name3";
                dataTable.Rows.Add(dr);
            }

            return dataTable;

        }
    }
}
