Sunday, October 2, 2016

Wrintig the Custom CSS registration for multilingual Sites in SharePoint

Wrintig the Custom CSS registration for multilingual Sites in SharePoint 

From Layout forlder:
--------------------------
<SharePoint:CssRegistration ID="CssRegistration1" Name="Themable/CommonInitiative.css" runat="server" After="oslo.css"/>

From Style Library: if using the varistion in sharepoint
------------------------
<SharePointWebControls:CssRegistration ID="CssRegistration3" name="<% $SPUrl:~sitecollection/Style Library/~language/Themable/New_Css/CommonInitiative.css %>" runat="server"/>

Saturday, October 1, 2016

Binding DropDown with Ajax query from web service

Binding DropDown with Ajax query from web service 


$(document).ready(function () {

        var jobsVmDiv = new jobsVm();
        jobsVmDiv.init();
        ko.applyBindings(jobsVmDiv, $('#JobsDiv').get(0));

        $("#Job-selector option[value='-1']").attr("selected", true);
         $("#Job-selector").change(function () {
            var selector = document.getElementById("Job-selector");
            var ChangeText = $("#Job-selector option:selected").text();
            var completeUrl = selector.options[selector.selectedIndex].value;
            var indexOfComma = completeUrl.indexOf(',');
            window.location.href = window.location.origin + "/" + completeUrl;

        });

    })

    var jobsVm = function () {

        var self = this;

        self.JobsData = ko.observableArray(),

        self.language = function () {
            var lang = _spPageContextInfo.currentLanguage;
            if (lang == '1033') {
                return "English";
            }
            else {
                return "Arabic";
            }
        },
        self.init = function () {
            $.ajax({
                url: "/_vti_bin/JSONEServices/MoPWWebServices.svc/Vacancies/" + self.language(),
                type: "GET",
                async: false,
                headers: { "ACCEPT": "application/json;odata=verbose" },
                success: function (data) {
                    if (data.length > 0) {
                        for (var i = 0; i < data.length; i++) {
                            console.log(data);
                            $("#Job-selector").append($("<option></option>").val(data[i].Link).html(data[i].Title));
                        }
                    }
                },
                error:
                    function (data) {
                    },
            });
        }
    }
<html>
<select id="Job-selector" />
 <option value="-1"><asp:Literal ID="Literal1" runat="server" Text="<%$Resources:custom,PleaseSelect_Text%>"></asp:Literal></option>
</select>
</html>

Knockout Js Sample for Photo and Video

Knockout Js Sample for Photo and Video
------------------------------------------------------

<script type="text/javascript">

    var language;
    var languageText;
    var ajaxResult = new Array();
    var value = 1;
    var youtubeVideos = ko.observableArray();

    var myObj = function () {
        var content, id, link, status, openingDate
    }

    var viewModelPhotoGallery = function () {
        var self = this;

        self.video = ko.observable(),

self.photos = ko.observable(),

        self.language = ko.observable(language),

        self.init = function () {
            //GetFilteredTenders(self.tenders);
            //self.language(languageText);
            var uri = 'https://www.googleapis.com/youtube/v3/playlistItems?part=snippet&maxResults=50&playlistId=UUPO5AY4qU1s-HedJZ8T7xSw&key=AIzaSyB2uf8CU9re_74ybnPmnv4A--MpzfYWYME';
            $.ajax({
                url: uri,
                type: "GET",
                async: false,
                headers: { "ACCEPT": "application/json;odata=verbose" },
                success: function (data) {

                    self.video(data.items[0]);


                },
                error: function (request, textStatus, errorThrown) {

                }
            });


            var uri = '/_vti_bin/JSONEServices/MoPWWebServices.svc/GetTopTwoPhotos';
            $.ajax({
                url: uri,
                type: "GET",
                async: false,
                headers: { "ACCEPT": "application/json;odata=verbose" },
                success: function (data) {

                    self.photos(data);
               

                },
                error: function (request, textStatus, errorThrown) {

                }
            });
        }
    }


    $(document).ready(function () {
        var vmPG = new viewModelPhotoGallery();
        vmPG.init();
        ko.applyBindings(vmPG, $('#divPhotoVideos').get(0));


    })



    function CheckVideoLanguage(VideoTitle, Page) {

        if (Page.indexOf("en-us") > -1) {
            if (VideoTitle.match(/[a-z]/i)) {
                return true;
            } else {
                return false;
            }
        }
        else {
            if (!(VideoTitle.match(/[a-z]/i))) {
                return true;
            } else {
                return false;
            }
        }
    }
</script>

<div class="col-md-5 col-sm-12" id="divPhotoVideos">
    <header>
        <h2 class="full-caps text-left ">PHOTOS & VIDEOS <span class="pull-right view-all view-all-gallery">
            <a href="#">View Gallery
                <img src="/Style Library/en-us/Images/in-arrow.png" width="5" height="9" alt="" /></a>
        </span>
        </h2>
        <div class="border-3 Theme-border-color">
            <div class="border-left Theme-border-color-left"></div>
        </div>
    </header>
    <article>
        <!-- ko with: video() -->
        <div class="video-container col-md-12 col-sm-12 padding-right-none">
            <div>
                <iframe width="100%" height="234px" data-bind="attr: { 'src': 'http://www.youtube.com/embed/' + snippet.resourceId.videoId }" frameborder="0" allowfullscreen=""></iframe>

            </div>
            <div class="video-heading col-md-12 col-sm-12">
                <div class="videotittle" data-bind="text: snippet.title"> </div>
            </div>
        </div>
        <!-- /ko -->
<!-- ko foreach: photos -->

<div class="col-md-6 col-sm-6 col-xs-11 padding-right-none">
<img data-bind= "attr: { src: '/' + Url }" width="277px" height="182px">
</div>

<!-- /ko -->
    </article>
</div>

=======================================================================Another example=======================================================================




<script type="text/javascript" src="/SiteCollectionScripts/jquery.cssslider.js"></script>

<script type="text/javascript">

    var initiativeObj = function () {
        var Description,
ImageURL,
Title;
        var photos = [];
    }

    var photosClass = function () {
        var Title,
ImageURL,
CssString;
    }

    function AssignCssClassName(index) {

        switch (index) {
            case 0:
                return 'current_item';
                break;
            case 1:
                return 'previous_item';
                break;
            case 2:
                return 'next_item';
                break;
            case 3:
                return 'previous_item_2';
                break;
            case 4:
                return 'next_item_2';
                break;
        }
    }

    var vmInitiatativeDiv = function () {
        var self = this;

        self.initiatives = ko.observableArray([]),

        self.language = function () {
            var lang = _spPageContextInfo.currentLanguage;
            if (lang == '1033') {
                return "English";
            }
            else {
                return "Arabic";
            }
        },

        self.init = function () {

            $.ajax({
                url: 'http://vm.mopw.local/_vti_bin/JSONEServices/MoPWWebServices.svc/InitiativesWithNewsAndGallery/' + self.language() + '/',
                type: "GET",
                async: false,
                headers: { "ACCEPT": "application/json;odata=verbose" },
                success: function (data) {
                    console.log('length is : ' + data.length);
                    for (i = 0; i < data.length; i++) {
                        var obj = new initiativeObj();
                        obj.Description = data[i].Description;
                        obj.ImageURL = data[i].ImageURL;
                        obj.Title = data[i].Title;
                        obj.photos = new Array();

                        for (j = 0; j < data[i].PhotoGallery.length; j++) {
                            if (j == 5)
                                break;
                            var objPhoto = new photosClass();
                            objPhoto.Title = data[i].PhotoGallery[j].Title;
                            objPhoto.ImageURL = data[i].PhotoGallery[j].ImageURL;
                            objPhoto.CssString = AssignCssClassName(j);

                            obj.photos.push(objPhoto);
                        }
                        self.initiatives.push(obj);
                    }
                    console.log(self.initiatives());
                },
                error: function (request, textStatus, errorThrown) {

                }
            });
        }
    }

    $(document).ready(function () {

        var vmInitiatative = new vmInitiatativeDiv();

        vmInitiatative.init();
        ko.applyBindings(vmInitiatative, $('#InitiativeDiv').get(0));
    });

</script>
<div id="InitiativeDiv">

            <div class="col-md-7 col-sm-12 col-xs-12">
                <header>
                    <h2 class="full-caps text-left ">INITIATIVES<span class="pull-right view-all  view-all-initiatives">
                        <a href="#">View All Initiatives
                                    <img src="/Style Library/en-us/Images/in-arrow.png" width="5" height="9" alt="" />
                        </a>
                    </span>
                    </h2>
                    <div class="border-3 Theme-border-color">
                        <div class="border-left Theme-border-color-left"></div>
                    </div>
                </header>
                <article>

                    <article>

                        <!-- Initiative HTML -->

                        <div class="initiativeContainer">

                            <ul class="initiativeSlider">
                                <!-- ko foreach: initiatives -->
                                <li>
                                    <div class="choose_slider">
                                        <div class="choose_slider_items">
<ul id="mySlider1">
<!-- ko foreach: photos -->
                                           
                                                <li data-bind="attr: { class: CssString }">
                                                   <img data-bind="attr: { src: ImageURL }" width="226" height="152">
                                                </li>
                                           
<!-- /ko -->
</ul>
                                        </div>
                                    </div>
                                    <div class="col-md-12 initiative-content-container">
                                        <div class="col-md-3">
                                            <img data-bind="attr: { src: ImageURL }" alt="" />
                                        </div>
                                        <div class="col-md-9">
                                            <header class="">
                                                <div class="ReadingInitiative" data-bind="text: Title"></div>
                                            </header>
                                            <div class="border-btm-1 Theme-border-btm1-color" data-bind="html: Description"></div>
                                         
                                        </div>
                                    </div>

                                </li>
                                <!-- /ko-->
                           
                            </ul>

                            <!--header>
                                    <img alt="" class="initiatives-image" src="/Style Library/en-us/Images/initiatives-img.jpg">
                                </header-->

                            <script>

                                $(document).ready(function () {
                                    $('.initiativeSlider').bxSlider({
                                        auto: true,
                                        autoStart: true,
                                        pager: false,
                                        controls: true
                                    });
                                });


                                $(function () {
                                    $("#mySlider1").AnimatedSlider({
                                        //prevButton: "#btn_prev1",
                                        //nextButton: "#btn_next1",
                                        visibleItems: 5,
                                        infiniteScroll: true,
                                        willChangeCallback: function (obj, item) { $("#statusText").text("Will change to " + item); },
                                        changedCallback: function (obj, item) { $("#statusText").text("Changed to " + item); }
                                    });
                                    $("#mySlider2").AnimatedSlider({
                                        //prevButton: "#btn_prev1",
                                        //nextButton: "#btn_next1",
                                        visibleItems: 5,
                                        infiniteScroll: true,
                                        willChangeCallback: function (obj, item) { $("#statusText").text("Will change to " + item); },
                                        changedCallback: function (obj, item) { $("#statusText").text("Changed to " + item); }
                                    });


                                });

                            </script>


                        </div>
                    </article>



                </article>
            </div>
</div>




Knockout js binding Sample with ajax query

// Knockout  js binding Modal Sample with ajax query

-------------------------------------------------------------------

<link href="/Style Library/en-us/stylesheets/main.css" type="text/css" rel="stylesheet" />
<style>
.Theme-button-color {
    background-color: #a2821f !important;
    color: #fff !important;
}
</style>
<script type="text/javascript">

    var language;
    var languageText;
    var ajaxResult = new Array();
    var value = 1;
    var myObj = function() {
        var content, id, link, status, openingDate
    }

    var viewModel = function() {
        var self = this;

        self.tenders = ko.observableArray([]),

        self.language = ko.observable(language),

        self.init = function() {
            GetFilteredTenders(self.tenders);
            self.language(languageText);

        }
    }

    function daysInMonth(month, year) {
        return new Date(year, month, 0).getDate();
    }

    $(document).ready(function(){
        GetLanguage();
        //GetFilteredTenders();
        var vm = new viewModel();
        vm.init();
        ko.applyBindings(vm, $('#tendersDiv').get(0));
    });
    function GetLanguage() {

        var lang = _spPageContextInfo.currentLanguage;
        if (lang == '1033') {
            language = '/en-us/';
            languageText = "en";
        }
        else {
            language = '/ar-sa/';
            languageText = "ar";
        }
    }



    function GetFilteredTenders(tenders) {

        var currentYear = new Date().getFullYear();
        var month = "12";
        var status = "Open";
     
        var nbDays = new Date(currentYear, month, 0).getDate();
        var days = daysInMonth(12, currentYear);
        var d = new Date();
        var today = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
        var newsIndex = 0;
        var d = new Date();
        var formatedDate = d.format("yyyy-MM-ddTHH:mm:ssZ");
        // var  uri="https://services.moid.gov.ae/_api/lists/getbytitle('tenders')/items?$select=ID,TenderName_EN,TenderName_AR,TenderStatus,OpeningDate,SubmitDate&$filter=OpeningDate le datetime'" + formatedDate + "' and TenderStatus eq 'Approved' and SubmitDate le datetime'" + formatedDate + "'";
        var uri = "https://services.moid.gov.ae/_api/lists/getbytitle('tenders')/items?$select=ID,TenderName_EN,TenderName_AR,TenderStatus,OpeningDate,SubmitDate&$filter=OpeningDate ge datetime'" + formatedDate + "' and TenderStatus eq 'Approved' and SubmitDate le datetime'" + formatedDate + "'";
        $.ajax({
            url: uri,
            type: "GET",
            async: false,
            headers: { "ACCEPT": "application/json;odata=verbose" },
            success: function (data) {

                if(data.d.results.length>0)
                {
                    for(var i=0; i<data.d.results.length; i++)
                    {
                        if(i>3)
                        { break;}

                        if (language == '/en-us/') {
                            var cObj = new myObj();
                            cObj.content = data.d.results[i].TenderName_EN;
                        }
                        else{
                            cObj.content = data.d.results[i].TenderName_AR;
                        }
                        cObj.id = data.d.results[i].ID;
                        cObj.link = "https://services.moid.gov.ae" + language + "Competition/Pages/AvailableTenders.aspx?itemId=" + data.d.results[i].ID;
                        cObj.status = "open";
                        cObj.openingDate = moment(data.d.results[i].OpeningDate).format('MMMM DD, YYYY');
                        tenders.push(cObj);
                        //ajaxResult.push(cObj);


                    }
                }
                if(tenders().length < 4){
                    GetCloseTenders(tenders);
                }

            },
            error: function (request, textStatus, errorThrown) {

            }
     

        });

    }

    function GetCloseTenders(tenders)
    {
        var currentYear = new Date().getFullYear();
        var month = "12";
        var status = "Open";

        var value = 1;
        var nbDays = new Date(currentYear, month, 0).getDate();
        var days = daysInMonth(12, currentYear);
        var d = new Date();
        var today = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
        var newsIndex = 0;
   
        var d = new Date();
        var formatedDate = d.format("yyyy-MM-ddTHH:mm:ssZ");

        var  uri="https://services.moid.gov.ae/_api/lists/getbytitle('tenders')/items?$select=ID,TenderName_EN,TenderName_AR,TenderStatus,OpeningDate,SubmitDate&$filter=OpeningDate le datetime'" + formatedDate + "' and TenderStatus eq 'Approved' and SubmitDate le datetime'" + formatedDate + "'";

        $.ajax({
            url: uri,
            type: "GET",
            async: false,
            headers: { "ACCEPT": "application/json;odata=verbose" },
            success: function (data) {

                if(data.d.results.length>0)
                {
                    for(var i=0; i<data.d.results.length; i++)
                    {
                        if(tenders().length < 4){
                            if (language == '/en-us/') {
                                var cObj = new myObj();
                                cObj.content = data.d.results[i].TenderName_EN;
                            }
                            else{
                                cObj.content = data.d.results[i].TenderName_AR;
                            }
                            cObj.id = data.d.results[i].ID;
                            cObj.link = "https://services.moid.gov.ae" + language + "Competition/Pages/AvailableTenders.aspx?itemId=" + data.d.results[i].ID;

                            cObj.openingDate = moment(data.d.results[i].OpeningDate).format('MMMM DD, YYYY');
                            cObj.status="close";

                            tenders.push(cObj);
                            //ajaxResult.push(cObj);
                        }
                        else{
                            break;
                        }
 
                    }

                }
            },
            error: function (request, textStatus, errorThrown) {

            }

        });

    }

</script>

 <section id="tendersDiv" class="wrapper style1 special tender-bg">
        <div>
            <div class="inner">
                <header>
                    <h2 class="full-caps text-left tender-heding">Tenders <span class="pull-right view-all-tenders">
<!-- ko if: language() == "en" -->
<a href="/en-us/Competition/Pages/AvailableTenders.aspx">View All Tenders <i aria-hidden="true" class="fa fa-caret-right" style="font-size: 15px;"></i></a>
<!-- /ko -->
<!-- ko if: language() === 'ar' -->
<a href="/ar-sa/Competition/Pages/AvailableTenders.aspx">View All Tenders <i aria-hidden="true" class="fa fa-caret-right" style="font-size: 15px;"></i></a>
<!-- /ko -->
</span></h2>
                    <div class="border-3 Theme-border-color">
                        <div class="border-left Theme-border-color-left"></div>
                    </div>
                </header>
<!-- ko foreach: tenders -->
                <div class="col-md-3 col-sm-6 col-xs-12">

                    <div class="tender-box">
                        <div class="tender-text" >
                          <span data-bind="text: content"></span>
                            <div class="tender-datte" data-bind="text: openingDate"></div>
                            <div class="text-center margn-top-10">
<!-- ko if: status == 'open' -->
                                <a data-bind="attr : { href: link }" href="#" class="button special tendersbtn Theme-button-color">Participate </a>
<!-- /ko -->
<!-- ko if: status == 'close' -->
<span class="button special tendersbtn Theme-button-color" style="cursor: default;background-color: gray !important;">Closed </span>
<!-- /ko -->
                            </div>
                        </div>
                    </div>
                </div>
<!-- /ko -->
             
            </div>
        </div>
    </section>

Saturday, September 10, 2016

Configure FBA in SharePoint 2013

Configuring FBA in SharePoint 2013
--------------------------------------------------

1.  Run the  Aspnet_regsql. exe  from the following path for framwork 4.0

       Path:  %windir%\Microsoft.NET\Framework64\v4.0.30319

2. Default Database Will be created as aspnetdb

3. create a user in security/logins and give right to user as FBA_USER_ACCOUNT or any name.

4. After that you need to place membership and role provider to 3 Web config files.

   1. Central admin
   2. Web application
   3. STS service app
5. Open Central admin config file and place the below markup at specific place.

Find this:
--------------

<sessionState mode="InProc" timeout="20" cookieless="UseCookies" />

//******************************************* These markup ***********************************************************
    <membership>
      <providers>
          <add name="FBA_MEMBERSHIP" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" applicationName="/" connectionStringName="FBA_CON" enablePasswordReset="true" enablePasswordRetrieval="false" passwordFormat="Clear" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" />
      </providers>
    </membership>
    <roleManager>
      <providers>
          <add name="ROLE_PROVIDER" type="System.Web.Security.SqlRoleProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" applicationName="/" connectionStringName="FBA_CON" />
      </providers>
    </roleManager>

//**********************************************End Markup ****************************************************************
  </system.web>
  <system.webServer>

Now Find in the end:  </configuration> 
------------ 
//******************************************************************************************

 <connectionStrings>
        <add connectionString="Server=CLIENTVM01;Database=aspnetdb ;Uid=FBA_USER_ACCOUNT; Pwd=user@123" name="FBA_CON" />
    </connectionStrings>
//****************************************************************************************
</configuration>

6. Now Open the Web Application config file

Find: <machineKey validationKey and place this below this tag

//*****************************************************************************************************************
 <membership defaultProvider="i">
      <providers>
        <add name="i" type="Microsoft.SharePoint.Administration.Claims.SPClaimsAuthMembershipProvider, Microsoft.SharePoint, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
        <add name="FBA_MEMBERSHIP" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" applicationName="/" connectionStringName="FBA_CON" enablePasswordReset="true" enablePasswordRetrieval="false" passwordFormat="Clear" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" />
      </providers>
    </membership>
    <roleManager cacheRolesInCookie="false" defaultProvider="c" enabled="true">
      <providers>
        <add name="c" type="Microsoft.SharePoint.Administration.Claims.SPClaimsAuthRoleProvider, Microsoft.SharePoint, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
        <add name="ROLE_PROVIDER" type="System.Web.Security.SqlRoleProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" applicationName="/" connectionStringName="FBA_CON" />
      </providers>
    </roleManager>

//************************************************************************************************************************
  </system.web>
  <system.webServer>

7. Now open the STS config file:
    Find: </system.net>

Place this markup below this
//************************************************************************************************************************
<connectionStrings>
    <add connectionString="Server=CLIENTVM01;Database=aspnetdb ;Uid=FBA_USER_ACCOUNT; Pwd=user@123" name="FBA_CON" />
  </connectionStrings>
  <system.web>
    <roleManager>
      <providers>
        <add name="ROLE_PROVIDER" type="System.Web.Security.SqlRoleProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" applicationName="/" connectionStringName="FBA_CON" />
      </providers>
    </roleManager>
    <membership>
      <providers>
        <add name="FBA_MEMBERSHIP" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" applicationName="/" connectionStringName="FBA_CON" enablePasswordReset="true" enablePasswordRetrieval="false" passwordFormat="Clear" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" />
      </providers>
    </membership>
</system.web>

//*************************************************************************************************************************** 
</configuration>

8: Now Create users in IIS, Making Membership and Role manger as default which you created now.

9. After creating the users make Membership (i) and Role manager (c) as default, OOBs

10. add FBA users to site and login.





Saturday, September 3, 2016

How to write a log in txt File

How to write a log in txt File

Using System.Diagnostic;

 public void WriteLogg(string errorDescription)
        {
            System.IO.StreamWriter objWriteLog = System.IO.File.AppendText("C:\\temp" + "\\log.txt");
            try
            {
                FileInfo fileInfo = new FileInfo("C:\\temp\\log.txt");
                if (!fileInfo.Exists)
                {
                    File.Create("C:\\temp\\log.txt");
                }
                objWriteLog.WriteLine("Date and Time : " + DateTime.Now.ToString());
                objWriteLog.WriteLine("errorDescription : " + errorDescription);

            }
            catch (Exception ex)
            {
                EventLog eventLog = new EventLog();
                eventLog.Source = "DocEvent";
                eventLog.WriteEntry(errorDescription + "- er: " + ex, EventLogEntryType.Warning);
            }
            finally
            {
                objWriteLog.Close();
            }
        }

Thursday, August 11, 2016

VM Ware failed to open issues, Failed to lock the file! VMWare vietual disk (vmdk)

Source: http://www.networknet.nl/apps/wp/archives/396/comment-page-1
I copied one of my Windows XP virtual machine running on a VMWare Server 1.02 system locally to my workstation. After the files were copied I opened the vmx file with VMWare Workstation 6 and received the following error below after trying to start the virtual machine. The virrtual machine contained one snapshot on the VMWare Server.

Cannot open the disk ‘C:\VM-machines\Windows XP-001\Windows XP Professional-000001.vmdk’ or one of the snapshot disks it depends on. Reason: Failed to lock the file.

clip_image002
Locate the virtual machine in Windows Explorer and delete any .lck folders
image
Start the virtual machine. If boot process will fail, try to Map the virtual hard disk to Z:\ for example.
image
clip_image008
I then disconnect the virtual hard disk and tried again. The virtual machine boot without any problem and my snapshot was still valid. Deleting the .lck folder saved me a lot of work.

Tuesday, August 9, 2016

Resolution for [Update panel buttons not triggering in SharePoint 2013 web part.] Change in Master Page

Resolution for [Update panel button not working in web part.]

Replace your <body> content with  below content with in SharePoint 2013 master page
 ------------------------------------------------------------------------------------------------------------
 Master Page issue

<body>
        <SharePoint:ImageLink runat="server" />
        <SharePoint:SPNoScript runat="server" />
        <SharePoint:SPClientIDGenerator runat="server" ServerControlID="DeltaPlaceHolderMain;DeltaPlaceHolderPageTitleInTitleArea;DeltaPlaceHolderUtilityContent" />
        <SharePoint:SharePointForm runat="server" onsubmit="if (typeof(_spFormOnSubmitWrapper) != 'undefined') {return _spFormOnSubmitWrapper();} else {return true;}">
            <script type="text/javascript"> var submitHook = function () { return false; }; theForm._spOldSubmit = theForm.submit; theForm.submit = function () { if (!submitHook()) { this._spOldSubmit(); } }; </script>
            <SharePoint:AjaxDelta ID="DeltaSPWebPartManager" runat="server">
                <WebPartPages:SPWebPartManager runat="Server" />
            </SharePoint:AjaxDelta>
            <asp:ScriptManager ID="ScriptManager" runat="server" EnablePageMethods="false" EnablePartialRendering="true" EnableScriptGlobalization="false" EnableScriptLocalization="true" />
            <SharePoint:AjaxDelta ID="DeltaDelegateControls" runat="server">
                <SharePoint:DelegateControl runat="server" ControlId="GlobalNavigation" />
                <SharePoint:DelegateControl ControlId="GlobalSiteLink3" Scope="Farm" runat="server" Visible="false" />
            </SharePoint:AjaxDelta>
            <SharePoint:AjaxDelta ID="DeltaPlaceHolderPageTitleInTitleArea" runat="server">
                <asp:ContentPlaceHolder ID="PlaceHolderPageTitleInTitleArea" runat="server">
                </asp:ContentPlaceHolder>
            </SharePoint:AjaxDelta>
            <div id="sideNavBox" class="ms-dialogHidden ms-forceWrap ms-noList">
                <div class="ms-core-navigation">
                    <SharePoint:AjaxDelta ID="DeltaPlaceHolderLeftNavBar" BlockElement="true" CssClass="ms-core-navigation" role="navigation" runat="server">
                        <asp:ContentPlaceHolder ID="PlaceHolderLeftNavBar" runat="server">
                            <asp:ContentPlaceHolder ID="PlaceHolderLeftNavBarTop" Visible="false" runat="server">
                            </asp:ContentPlaceHolder>
                            <asp:ContentPlaceHolder ID="PlaceHolderQuickLaunchTop" Visible="false" runat="server" />
                            <asp:ContentPlaceHolder ID="PlaceHolderLeftNavBarDataSource" Visible="false" runat="server" />
                            <asp:ContentPlaceHolder ID="PlaceHolderCalendarNavigator" Visible="false" runat="server" />
                            <asp:ContentPlaceHolder ID="PlaceHolderLeftActions" Visible="false" runat="server" />
                            <asp:ContentPlaceHolder ID="PlaceHolderQuickLaunchBottom" Visible="false" runat="server" />
                        </asp:ContentPlaceHolder>
                    </SharePoint:AjaxDelta>
                </div>
            </div>
            <div id="TurnOnAccessibility" style="display: none" class="s4-notdlg noindex">
                <a id="linkTurnOnAcc" href="#" class="ms-accessible ms-acc-button" onclick="SetIsAccessibilityFeatureEnabled(true);UpdateAccessibilityUI();document.getElementById('linkTurnOffAcc').focus();return false;">
                    <SharePoint:EncodedLiteral runat="server" Text="<%$Resources:wss,master_turnonaccessibility%>" EncodeMethod="HtmlEncode" /></a>
            </div>
            <div id="TurnOffAccessibility" style="display: none" class="s4-notdlg noindex">
                <a id="linkTurnOffAcc" href="#" class="ms-accessible ms-acc-button" onclick="SetIsAccessibilityFeatureEnabled(false);UpdateAccessibilityUI();document.getElementById('linkTurnOnAcc').focus();return false;">
                    <SharePoint:EncodedLiteral runat="server" Text="<%$Resources:wss,master_turnoffaccessibility%>" EncodeMethod="HtmlEncode" /></a>
            </div>