Time Sheet Management using visualforce salesforce

Visualforce Page :
--------------------

<apex:page controller="shiftRosterController" tabStyle="Account" sidebar="false" action="{!onloadfunction}" showHeader="false">
    <style>
       .dropbtn {
            background-color: #4CAF50;
            color: white;
            padding: 16px;
            font-size: 16px;
            border: none;
            cursor: pointer;
        }      
        .dropdown {
            position: relative;
            display: inline-block;
        }
       
        .dropdown-content {
            display: none;
            position: absolute;
            background-color: #f9f9f9;
            min-width: 160px;
            box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
        }
       
        .dropdown-content a {
            color: black;
            padding: 12px 16px;
            text-decoration: none;
            display: block;
        }
       
        .dropdown-content a:hover {background-color: #f1f1f1}
       
        .dropdown:hover .dropdown-content {
            display: block;
        }
       
        .dropdown:hover .dropbtn {
            background-color: #3e8e41;
        }
                * {box-sizing:border-box;}
        ul {list-style-type: none;}
        body {font-family: Verdana,sans-serif;}
       
        .month {
            padding: 50px 15px;
            width: 100%;
            background: #1abc9c;
        }
       
        .month ul {
            margin: 0;
            padding: 0;
            margin-top: -10px;
        }
       
        .month ul li {
            color: white;
            font-size: 17px;
            text-transform: inherit;
            letter-spacing: 1px;
        }
       
        .month .prev {
            float: left;
            padding-top: 10px;
        }
       
        .month .next {
            float: right;
            padding-top: 10px;
        }
       
        .weekdays {
            margin: 0;
            padding: 10px 0;
            background-color: #ddd;
        }
       
        .weekdays li {
            display: inline-block;
            width: 10.6%;
            color: #666;
            text-align: center;
        }
       
        .days {
            padding: 10px 0;
            background: #eee;
            margin: 0;
        }
       
        .days li {
            list-style-type: none;
            display: inline-block;
            width: 13.6%;
            text-align: center;
            margin-bottom: 5px;
            font-size:12px;
            color: #777;
        }
       
        .days li .active {
            padding: 2px;
            background: #1abc9c;
            color: white !important
        }
       
        /* Add media queries for smaller screens */
        @media screen and (max-width:720px) {
            .weekdays li, .days li {width: 13.1%;}
        }
       
        @media screen and (max-width: 420px) {
            .weekdays li, .days li {width: 12.5%;}
            .days li .active {padding: 2px;}
        }
       
        @media screen and (max-width: 290px) {
            .weekdays li, .days li {width: 12.2%;}
        }
        </style>
<apex:form >
     <div class="month">
     <ul>
     <li style="text-align:center">
     <!--<img src="{!$Resource.AccentureWhiteLogo}" style="margin-left: 200px;margin-top: -20px;"/>-->
     <b>Week Selection</b>&nbsp;&nbsp;&nbsp;
      <apex:selectList value="{!weekselection}" size="1" id="weekselect" style="color: black;padding: 1px;color: black;padding: 1px;box-shadow: inset 0 0 5px rgba(000,000,000, 0.5);">
          <apex:actionSupport event="onchange" action="{!onloadfunction}" reRender="AllTables" status="status"/>
          <apex:selectOptions value="{!weekvalues}"/>
      </apex:selectList>
      </li>
      </ul>
      <ul style="margin-left: 1200px;list-style-type:disc;font-family: initial;font-size: 17px;">
      <li>Shift A :(07AM to 4:30PM)</li>
      <li>Shift G :(9AM to 6:30PM )</li>
      <li>Shift B :(12PM to 9:30PM)</li>
      <li>Shift C :(9PM to 6:30AM)</li>
      </ul>
      </div>
      <apex:outputpanel >
    <apex:actionstatus id="status">
        <apex:facet name="start">
            <div class="waitingSearchDiv" id="el_loading" style="background-color: #fbfbfb;height: 100%;opacity:0.65;width:100%;">
                <div class="waitingHolder" style="top: 115px; width: 50px;">
                    <img class="waitingImage" src="/img/loading.gif" title="Please Wait..." />
                    <span class="waitingDescription">Loading...</span>
                </div>
            </div>
        </apex:facet>
    </apex:actionstatus>
    </apex:outputpanel>
          <br/>
          <apex:outputPanel id="AllTables">
            <apex:tabPanel switchType="client" selectedTab="inceffort" id="theTabPanel" >              
                <apex:tab label="Resource Shift Roster" name="othereffort" id="tabTwo" style="font-weight:bold;width:200px;">  
                <apex:outputPanel id="otherentrytable">
                <apex:pagemessages />
                <apex:outputPanel rendered="{!sectionPageBlockShow}">
                <apex:dataTable cellspacing="10" value="{!otherentrylist}" var="acc" rendered="{!NOT(ISNULL(otherentrylist))}" width="100%" border="0">
                         <apex:column headervalue="Resource Name">
                             <apex:inputField value="{!acc.Account__c}"/>
                         </apex:column>                        
                         <apex:column headervalue="Application">
                             <apex:inputField value="{!acc.Application__c}" required="true"/>
                         </apex:column>
                         <apex:column >
                             <apex:facet name="header"><apex:outputText value="{0,date,d-MMMM (EEEE)}"><apex:param value="{!SelectedRowDate+0}" /></apex:outputText></apex:facet>
                             <apex:inputField value="{!acc.Monday_Shift__c}" required="true"/>                            
                         </apex:column>                        
                         <apex:column >
                             <apex:facet name="header"><apex:outputText value="{0,date,d-MMMM (EEEE)}"><apex:param value="{!SelectedRowDate+1}" /></apex:outputText></apex:facet>
                             <apex:inputField value="{!acc.Tuesday_Shift__c}" required="true"/>
                         </apex:column>
                         <apex:column >
                             <apex:facet name="header"><apex:outputText value="{0,date,d-MMMM (EEEE)}"><apex:param value="{!SelectedRowDate+2}" /></apex:outputText></apex:facet>
                             <apex:inputField value="{!acc.Wed_Shift__c}" required="true"/>
                         </apex:column>
                         <apex:column >
                             <apex:facet name="header"><apex:outputText value="{0,date,d-MMMM (EEEE)}"><apex:param value="{!SelectedRowDate+3}" /></apex:outputText></apex:facet>
                             <apex:inputField value="{!acc.Thurs_Shift__c}" required="true"/>
                         </apex:column>
                         <apex:column >
                             <apex:facet name="header"><apex:outputText value="{0,date,d-MMMM (EEEE)}"><apex:param value="{!SelectedRowDate+4}" /></apex:outputText></apex:facet>
                             <apex:inputField value="{!acc.Friday_Shift__c}" required="true"/>
                         </apex:column>
                         <apex:column >
                             <apex:facet name="header"><apex:outputText value="{0,date,d-MMMM (EEEE)}"><apex:param value="{!SelectedRowDate+5}" /></apex:outputText></apex:facet>
                             <apex:inputField value="{!acc.Saturday_Shift__c}"/>
                         </apex:column>
                         <apex:column >
                             <apex:facet name="header"><apex:outputText value="{0,date,d-MMMM (EEEE)}"><apex:param value="{!SelectedRowDate+6}" /></apex:outputText></apex:facet>
                             <apex:inputField value="{!acc.Sunday_Shift__c}" />
                         </apex:column>  
                     </apex:dataTable>
                     </apex:outputpanel>
                     </apex:outputpanel>
                     <br/> <br/>    
                     <apex:commandButton value="Save Roster" action="{!savetimesheet}" rendered="{!cmdSaveRosterShow}" style="margin-top: 22px;padding: 8px;margin-left: 10px;"/>            
                    <apex:commandButton value="Add another row" action="{!addrowothers}" reRender="AllTables" status="status" rendered="{!cmdAddRowRosterShow}" style="margin-top: 22px;padding: 8px;margin-left: 10px;"/>
                </apex:tab>
                <apex:tab label="Manager Console" name="othereffort1" id="tabTwo1" style="font-weight:bold;width:200px;">
                    <apex:pageMessage detail="Info: Working In progress" severity="Info"/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
                </apex:tab>
            </apex:tabPanel>
          </apex:outputPanel>
          <br/> <br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
</apex:form>      
</apex:page>

Apex Controller :
---------------------

public class shiftRosterController{
    public String weekselection{get; set;}
    public String incselection{get; set;}
    Public List<Employee_Shift_Roster__c> tentries;
    Public List<Employee_Shift_Roster__c> otherentries;
    Public Date SelectedWeek;
    Public Date SelectedRowDate{get;set;}
    public boolean cmdAddRowRosterShow {get;set;}
    public boolean cmdSaveRosterShow{get;set;}
    public Id oppId {get; set;}
    public boolean sectionPageBlockShow{get;set;}
    public void shiftRosterController(){
        cmdAddRowRosterShow = false;
        cmdSaveRosterShow = false;
        sectionPageBlockShow = false;
    }
    public void onloadfunction(){
        try{
            if(weekselection=='--None--'|| weekselection == null){
                ApexPages.addMessage(new ApexPages.Message(ApexPages.Severity.Confirm,'Please select week value from above picklist'));
                cmdAddRowRosterShow = false;
                cmdSaveRosterShow = false;
                sectionPageBlockShow = false;
            }else{
                if ( weekselection != null){
                    SelectedWeek = date.valueOf(weekselection);
                    system.debug('The Selected Week is'+SelectedWeek);
                    tentries = [select id,Account__c,Work_Week__c ,Application__c,Friday_Shift__c,Monday_Shift__c,Saturday_Shift__c,Sunday_Shift__c,Thurs_Shift__c,Tuesday_Shift__c,Wed_Shift__c from Employee_Shift_Roster__c where Work_Week__c=:SelectedWeek];
                    otherentries = [select id,Account__c,Application__c,Work_Week__c ,Friday_Shift__c,Monday_Shift__c,Saturday_Shift__c,Sunday_Shift__c,Thurs_Shift__c,Tuesday_Shift__c,Wed_Shift__c from Employee_Shift_Roster__c where Work_Week__c=:SelectedWeek];
                    SelectedRowDate = Date.valueOf(weekselection);
                    cmdAddRowRosterShow = true;
                    cmdSaveRosterShow = true;
                    sectionPageBlockShow = true;
                }else{
                    Date currentdate = date.today();
                    SelectedWeek = currentdate.toStartofWeek()+1;
                    system.debug('The Selected Week is'+SelectedWeek);
                    tentries = [select id,Account__c,Application__c,Work_Week__c ,Friday_Shift__c,Monday_Shift__c,Saturday_Shift__c,Sunday_Shift__c,Thurs_Shift__c,Tuesday_Shift__c,Wed_Shift__c from Employee_Shift_Roster__c where Work_Week__c=:SelectedWeek];
                    otherentries = [select id,Account__c,Application__c,Work_Week__c ,Friday_Shift__c,Monday_Shift__c,Saturday_Shift__c,Sunday_Shift__c,Thurs_Shift__c,Tuesday_Shift__c,Wed_Shift__c from Employee_Shift_Roster__c where Work_Week__c=:SelectedWeek];
                    SelectedRowDate = Date.valueOf(weekselection);
                    cmdAddRowRosterShow = true;
                    cmdSaveRosterShow = true;
                    sectionPageBlockShow = true;
                }
           }
        }catch(exception e){
           
        }          
    }      
    public List<Employee_Shift_Roster__c> getentrylist(){
        if (tentries!=NULL && tentries.size()>0)
        return tentries;
        else
    return null;  
    }
    public List<Employee_Shift_Roster__c> getotherentrylist(){
        if (otherentries!=NULL && otherentries.size()>0)
        return otherentries;
        else
    return null;  
    }
   
    public List<SelectOption> getweekvalues(){
        List<SelectOption> options = new List<SelectOption>();
        Date currentdate = date.today();
        Date currentweekstart = currentdate.toStartofWeek()+1;
        Date currentweekend = currentweekstart +6;
        Date oldestweekstart = currentweekstart - 7;
        Date oldestweekend;
        options.add(new SelectOption('--None--','--None--'));
        options.add(new SelectOption(currentweekstart+'',currentweekstart.format()+' to '+currentweekend.format()));
        for (Integer i =0; i<=10 ; i++){
        oldestweekend = oldestweekstart+6;
        options.add(new SelectOption(oldestweekstart+'',oldestweekstart.format()+' to '+oldestweekend.format()));
        oldestweekstart +=7;
        }
    return options;
    }
    public void addrowothers(){
        system.debug('The Selected Week is'+SelectedWeek);
        Employee_Shift_Roster__c newentry = new Employee_Shift_Roster__c(Work_Week__c=SelectedWeek);
    otherentries.add(newentry);
    }
    Public Pagereference canceltimesheet(){
        Pagereference p = Page.timesheetmanagement;
    return p;
    }
    public Pagereference savetimesheet(){
    try{
        upsert tentries;
        upsert otherentries;
        Pagereference p = Page.ShiftRosterController_Pge;
    return p;
    }catch(exception e){
        return null;
    }  
  }    
}

Screen Shot :
--------------

Pre Chat form for live agent using bootstrap salesforce

Visualforce Page :
---------------------

<apex:page standardStylesheets="false" sidebar="false" showHeader="false" contentType="html-5.0">  
     <script type='text/javascript'>
        (
            function(){
                function handlePageLoad() {
                    var endpointMatcher = new RegExp("[\\?\\&]endpoint=([^&#]*)");
                    document.getElementById('prechatForm').setAttribute('action',
                    decodeURIComponent(endpointMatcher.exec(document.location.search)[1]));
                }if(window.addEventListener){
                    window.addEventListener('load',handlePageLoad, false);
                }else{
                    window.attachEvent('onload',handlePageLoad, false);
                }
            }
        )();
    </script>
    <style type="text/css">
   body { background: darkturquoise!important; }
</style>  
<html lang="en">
  <head>    
     <link href="//netdna.bootstrapcdn.com/bootstrap/3.0.2/css/bootstrap.min.css" rel="stylesheet" media="screen"/>
     <link href="//getbootstrap.com/examples/signin/signin.css" rel="stylesheet" media="screen"/>
   </head>
 
<body>
<div class="container">
  <form method='post' id='prechatForm' class="form-horizontal" role="form">
    <img src="{!$Resource.AccentureWhiteLogo}" class="img-responsive"/><!--alt="Company Logo" width="180"; height="100"; style="margin-left: 200px;margin-top: -20px;"-->
    <div class="form-group">
      <div class="col-sm-10">
        <input type='text' name='liveagent.prechat:ContactFirstName' id='firstName' placeholder="First Name" required="required" class="form-control"/>
      </div>
    </div>  
<div class="form-group">
      <div class="col-sm-10">
        <input type='text' name='liveagent.prechat:ContactLastName' id='lastName' placeholder="Last Name" required="required" class="form-control"/>
      </div>
    </div>
<div class="form-group">
      <div class="col-sm-10">
        <input type='text' name='liveagent.prechat:ContactEmail' id='email' placeholder="Email ID" required="required" class="form-control"/>
      </div>
    </div>
<div class="form-group">
      <div class="col-sm-10">
        <input type='text' name='liveagent.prechat:ContactPhone' id='phone' placeholder="Phone" required="required" class="form-control"/>
      </div>
    </div>
<div class="form-group">
      <div class="col-sm-10">
        <textarea name='liveagent.prechat:ContactDescription' id='subject' placeholder="Case Description" required="required" class="form-control"></textarea>
      </div>
    </div>
<input type="hidden" name="liveagent.prechat:ContactTitle" value="Customer" />
        <input type="hidden" name="liveagent.prechat:ContactLevel" value="Prospect" />
        <input type="hidden" name="liveagent.prechat:ContactLeadSource" value="Click To Chat"/>
           
        <input type="hidden" name="liveagent.prechat.name" id="prechat_field_name"/>
       
        <input type="hidden" name="liveagent.prechat.findorcreate.map:Contact" value="FirstName,ContactFirstName;Title,ContactTitle;LeadSource,ContactLeadSource;Level,ContactLevel;LastName,ContactLastName;Email,ContactEmail;Phone,ContactPhone;MobilePhone,ContactPhone;HomePhone,ContactPhone;Desciption,ContactDescription" />      
     
        <input type="hidden" name="liveagent.prechat.findorcreate.map.doFind:Contact" value="Email,true" />
        <input type="hidden" name="liveagent.prechat.findorcreate.map.isExactMatch:Contact" value="Email,true" />
       
        <input type="hidden" name="liveagent.prechat.findorcreate.map.doCreate:Contact" value="FirstName,true;LastName,true;Email,true;Phone,true;MobilePhone,true;HomePhone,true" />
       
        <input type="hidden" name="liveagent.prechat.findorcreate.showOnCreate:Contact" value="true" />  
       
        <input type="hidden" name="liveagent.prechat.findorcreate.saveToTranscript:Contact" value="ContactId" />

    <div class="form-group">
      <div class="col-sm-offset-2 col-sm-10">
        <input type='submit' value='Chat Now' id='prechat_submit' onclick="setName()" class="btn btn-default"/><!-- style="padding-right: 50px; margin: 5px;margin-left: 32px;"-->
      </div>
    </div>
    <script type="text/javascript">
        function setName() {
            document.getElementById("prechat_field_name").value = document.getElementById("firstName").value;
        }
        </script>
  </form>
</div>
</body>

</html>
</apex:page>

Screenshot:
--------------


Login and Register Page using @RemoteAction in salesforce

Apex Controller :
---------------------
public class SubmitFormController{
    public string FirstName {get;set;}
    public string LastName {get;set;}
    public string EmailAddress {get;set;}
    public string Password {get;set;}
    public string RePassword {get;set;}
    public string Supervisor {get;set;}
    public string SupervisorEmail {get;set;}
    public string ContactNo {get;set;}
    public string Client {get;set;}
    public string CareerLevel {get;set;}
    public string showAlertTest {get;set;}
    public boolean showRegisterWindow {get;set;}
    public string ErroMessage{get;set;}
    public SubmitFormController(){
        showAlertTest = '';
        showRegisterWindow = false;
        ErroMessage = '';
    }
    public pagereference submitForm(){
        try{
            system.debug(Apexpages.currentPage().getParameters().get('FirstName'));
            system.debug(Apexpages.currentPage().getParameters().get('LastName'));
            system.debug(Apexpages.currentPage().getParameters().get('EmailAddress'));
            system.debug(Apexpages.currentPage().getParameters().get('Password'));
            system.debug(Apexpages.currentPage().getParameters().get('RePassword'));
            system.debug(Apexpages.currentPage().getParameters().get('Supervisor'));
            system.debug(Apexpages.currentPage().getParameters().get('SupervisorEmail'));
            system.debug(Apexpages.currentPage().getParameters().get('ContactNo'));
            system.debug(Apexpages.currentPage().getParameters().get('Client'));
            system.debug(Apexpages.currentPage().getParameters().get('CareerLevel'));
            List<Resource_Detaills__c> rdList = new list<Resource_Detaills__c>();
            Resource_Detaills__c r = new Resource_Detaills__c();
            r.name = Apexpages.currentPage().getParameters().get('FirstName');
            r.Last_Name__c = Apexpages.currentPage().getParameters().get('LastName');
            r.Email_Address__c = Apexpages.currentPage().getParameters().get('EmailAddress');
            r.Password__c = Apexpages.currentPage().getParameters().get('Password');
            r.Re_Password__c = Apexpages.currentPage().getParameters().get('RePassword');
            r.Supervisor__c = Apexpages.currentPage().getParameters().get('Supervisor');
            r.Supervisor_Email__c = Apexpages.currentPage().getParameters().get('SupervisorEmail');
            r.Contact_No__c = Apexpages.currentPage().getParameters().get('ContactNo');
            //r.Client__c = Apexpages.currentPage().getParameters().get('Client');
            r.Career_Level__c = Apexpages.currentPage().getParameters().get('CareerLevel');
            rdList.add(r);
            if(!rdList.isEmpty()){
                    insert rdList;
                    showRegisterWindow = true;
                    ErroMessage ='';
                    //pagereference pref = new pagereference('/apex/ShiftRosterController_Pge');
                    //pref.getParameters().put('LoginPageId',rdList[0].id);
                    //return pref;
            }
        }catch(exception e){
            ErroMessage ='ERROR : Required Fieds Missing please enter all values';
            return null;
        }
        return null;  
    }
}

Visualforce Page :
----------------------

<apex:page controller="SubmitFormController" standardStylesheets="false" sidebar="false" showHeader="false" ><!--standardStylesheets="false" sidebar="false" showHeader="false" contentType="html-5.0" -->
    <style type="text/css">
     body { background: darkturquoise!important;
            padding-top: 0px !important;
            padding-bottom: 0px !important;
                margin-left: 200px!important;
     }
     .myActiveTab { background-color: #f1f1f1; color:black; background-image:none;padding: 13px!important;padding-left: 32px;font-family: serif;font-size: larger; }
     .myInactiveTab { background-color: #f1f1f1; color:black; background-image:none;padding: 13px!important;padding-left: 32px;font-family: serif;font-size: larger; }
     .whiteBG { background-color: white;text:black; }
    </style>
 
  <head>    
     <link href="//netdna.bootstrapcdn.com/bootstrap/3.0.2/css/bootstrap.min.css" rel="stylesheet" media="screen"/>
     <link href="//getbootstrap.com/examples/signin/signin.css" rel="stylesheet" media="screen"/>
   </head>
   <script type="text/javascript">
        function submitData() {
            var FirstName= document.getElementById('FirstName').value;
            //alert(FirstName);
            var LastName= document.getElementById('LastName').value;
            //alert(LastName);
            var EmailAddress= document.getElementById('EmailAddress').value;
            //alert(EmailAddress);
            var Password= document.getElementById('Password').value;
            //alert(Password);
            var RePassword= document.getElementById('RePassword').value;
            //alert(RePassword);
            var Supervisor= document.getElementById('Supervisor').value;
            //alert(Supervisor);
            var SupervisorEmail= document.getElementById('SupervisorEmail').value;
            //alert(SupervisorEmail);
            var ContactNo= document.getElementById('ContactNo').value;
            //alert(ContactNo);
            var CareerLevel = document.getElementById("CareerLevel").value;
            //alert(CareerLevel);
            if(FirstName==''){
                document.getElementById('FirstName').style.border =   'thin solid red';
                document.getElementById('required').innerHTML = 'Required Fields Missing Please fill out';
            }if(LastName==''){
                document.getElementById('LastName').style.border =   'thin solid red';
                document.getElementById('required').innerHTML = 'Required Fields Missing Please fill out';
            }if(EmailAddress==''){
                document.getElementById('EmailAddress').style.border =   'thin solid red';
                document.getElementById('required').innerHTML = 'Required Fields Missing Please fill out';
            }if(Password==''){
                document.getElementById('Password').style.border =   'thin solid red';
                document.getElementById('required').innerHTML = 'Required Fields Missing Please fill out';
            }if(RePassword==''){
                document.getElementById('RePassword').style.border =   'thin solid red';
                document.getElementById('required').innerHTML = 'Required Fields Missing Please fill out';
            }if(Supervisor==''){
                document.getElementById('Supervisor').style.border =   'thin solid red';
                document.getElementById('required').innerHTML = 'Required Fields Missing Please fill out';
            }if(SupervisorEmail==''){
                document.getElementById('SupervisorEmail').style.border =   'thin solid red';
                document.getElementById('required').innerHTML = 'Required Fields Missing Please fill out';
            }if(ContactNo==''){
                document.getElementById('ContactNo').style.border =   'thin solid red';
                document.getElementById('required').innerHTML = 'Required Fields Missing Please fill out';
            }if(CareerLevel==''){
                document.getElementById('CareerLevel').style.border =   'thin solid red';
                document.getElementById('required').innerHTML = 'Required Fields Missing Please fill out';
            }else{
                submitActionFunction(FirstName,LastName,EmailAddress,Password,RePassword,Supervisor,SupervisorEmail,ContactNo,CareerLevel);
            }
        }
    </script>
  <div class="container" >    
  <img src="{!$Resource.AccentureWhiteLogo}" class="img-responsive" style="margin-left: 170px;"/>

  <apex:form styleClass="form-horizontal" id="actionFun" style="margin-left: 200px!important;display: block;width: 50%;padding: 7px 12px;font-size: 14px;line-height: 1.428571;color: bisque;background-color: lavender;background-image: none;border: 2px solid #ccc;border-radius: 10px;">
      <center> <div style="color: black;font-size: initial;">Employee Login and Registration </div>
      <apex:outputLabel rendered="{!IF(AND(ErroMessage==''),false,true)}" style="color: red;" value="{!ErroMessage }"/></center><br/>
      <div style="top:-20px;position:relative;padding: 13px!important;padding-left: 32px;font-family: serif;font-size: larger;">        
      <apex:tabPanel switchType="client" selectedTab="name1" id="theTabPanel" style="" tabClass="myActiveTab" inactiveTabClass="myInactiveTab">
        <apex:tab label="Register" name="name1" id="tabOne" labelWidth="70px">
            <apex:outputPanel styleClass="whiteBG" rendered="{!NOT(showRegisterWindow)}">
            <apex:actionFunction name="submitActionFunction" action="{!submitForm}"  reRender="actionFun">          
            <apex:param name="FirstName" assignTo="{!FirstName}" value="" />        
            <apex:param name="LastName" assignTo="{!LastName}" value="" />
            <apex:param name="EmailAddress" assignTo="{!EmailAddress}" value="" />        
            <apex:param name="Password" assignTo="{!Password}" value="" />
            <apex:param name="RePassword" assignTo="{!RePassword}" value="" />        
            <apex:param name="Supervisor" assignTo="{!Supervisor}" value="" />
            <apex:param name="SupervisorEmail" assignTo="{!SupervisorEmail}" value="" />        
            <apex:param name="Client" assignTo="{!Client}" value="" />
            <apex:param name="ContactNo" assignTo="{!ContactNo}" value="" />
            <apex:param name="CareerLevel" assignTo="{!CareerLevel}" value="" />
        </apex:actionFunction>
    <div class="form-group">
      <div class="col-sm-10">
        <center><strong style="color: red" id="required"></strong></center><br/>
        <input type='text'  id='FirstName' placeholder="First Name" required="required" class="form-control" size="250" style="border-radius: 10px;"/>
      </div>
    </div>
 
    <div class="form-group">
      <div class="col-sm-10">
        <input type='text'  id='LastName' placeholder="Last Name" required="required" class="form-control" size="250" style="border-radius: 10px;"/>
      </div>
    </div>
 
    <div class="form-group">
      <div class="col-sm-10">
        <input type='email'  id='EmailAddress' placeholder="Email Address" required="required" class="form-control" style="border-radius: 10px;"/>
      </div>
    </div>
    <div class="form-group">
      <div class="col-sm-10">
        <input type='password'  id='Password' placeholder="Password" required="required" class="form-control" size="8" style="border-radius: 10px;"/>
      </div>
    </div>
    <div class="form-group">
      <div class="col-sm-10">
        <input type='password'  id='RePassword' placeholder="Re-Password" required="required" class="form-control" size="8" style="border-radius: 10px;"/>
      </div>
    </div>
    <div class="form-group">
      <div class="col-sm-10">
        <input type='text'  id='Supervisor' placeholder="Supervisor" required="required" class="form-control" style="border-radius: 10px;"/>
      </div>
    </div>
    <div class="form-group">
      <div class="col-sm-10">
        <input type='email'  id='SupervisorEmail' placeholder="Supervisor Email" required="required" class="form-control" style="border-radius: 10px;"/>
      </div>
    </div>
    <div class="form-group">
      <div class="col-sm-10">
        <input type='text'  id='ContactNo' placeholder="Contact No" required="required" class="form-control" size="10" style="border-radius: 10px;"/>
      </div>
    </div>
    <div class="form-group">
      <div class="col-sm-10">
         <select id="CareerLevel" class="form-control" style="border-radius: 10px;">
          <option value="" selected="selected" disabled="disabled">Career Level</option>
          <option>Level 12- Software Engineer Associate</option>
          <option>Level 11- Software Engineer Analyst</option>
          <option>Level 10- Senior Software Engineer</option>
          <option>Level 8- Associate Manager</option>
          <option>Level 9- Team Lead</option>
          <option>Level 7- Manager</option>
          <option>Level 6 and Above</option>
        </select>
      </div>
    </div>
    <div class="form-group">
      <div class="col-sm-offset-2 col-sm-10">
        <input type="button"  value="Save&Register" onclick="submitData();" class="btn btn-default" style="border-radius: 10px;"/>      
      </div>
    </div>
    </apex:outputPanel>
    <apex:outputPanel rendered="{!showRegisterWindow}" style="color: green;font-size: small;">
        Registration has been succefully completed!!
    </apex:outputPanel>
        </apex:tab>
        <apex:tab label="Login" name="name2" id="tabTwo" labelWidth="70px">
            <div class="form-group">
      <div class="col-sm-10">
        <input type='email'  id='EmailAddress' placeholder="Email Address" required="required" class="form-control" style="border-radius: 10px;"/>
      </div>
    </div>
    <div class="form-group">
      <div class="col-sm-10">
        <input type='password'  id='Password' placeholder="Password" required="required" class="form-control" size="8" style="border-radius: 10px;"/>
      </div>
    </div>
    <a href="/apex/Roster_PasswordForgot">Forgot Password ?</a>
    <div class="form-group">
      <div class="col-sm-offset-2 col-sm-10">
        <input type="button"  value="Login" class="btn btn-default" style="border-radius: 10px;"/>      
      </div>
    </div>
        </apex:tab>
        </apex:tabPanel>      
    </div>
  </apex:form>
</div>
</apex:page>

Screenshot :
--------------

Tab Panel Style with css salesforce

<apex:page sidebar="false" showHeader="false">
 <style>
    .activeTab {
        background-color: #1797C0;
        font-weight: bold;
        box-shadow: 5px 5px 2px #888888;
        color: #FFFFFF !important;
        font-size: 12px;
        height: 25px;
        cursor: pointer;
        border: 0px solid #FFFFFF !important;
        background-image: none;
        }
    .inactiveTab {
        background-color: #e2f1f6;
        font-weight: bold;
        color: #000000 !important;
        font-size: 12px;
        height: 25px;
        cursor: pointer;
        border: 0px;
        border-radius: 1px;
        background-image: none;
    }
    a:hover {
        background:#ffffff; /*BG color is a must for IE6*/
        text-decoration:none;
    }
    a.tooltip span {
        display:none;
        padding:2px 3px;
        margin-left:8px;
        width:250px;
    }
    a.tooltip:hover span{
        display:inline;
        position:absolute;
        background:#FFC;
        border:1px solid #cccccc;
        color:#000000;
    }
    div.tooltip {
    width: 20px;
    float: right;
    display:inline;
}

div.tooltip span {
    display: none;
    font-weight:normal;
    text-align:left;
    padding: 3px 5px;
    margin-left: 8px;
    width: 250px;
}

div.tooltip:hover span {
    display: inline;
    position: absolute;
    border: 1px solid #cccccc;
    background: #FFC;
    color: #000000;
    z-index:10000;
}
    </style>
    <script>
    function myFunction() {
        //alert('<a href="mailto:someone@example.com??subject=Please provide your details&body=Please provide the below details-.%0D%0A%0D%0AFull Name:%0D%0AEmail:%0D%0AOrganization:%0D%0AEvent Name:%0D%0AReason:%0D%0A" target="_top">skill_search@accenture.com</a>');
        var myWindow = window.open("", "MsgWindow", "width=300,height=300");
        myWindow.document.write("<a href='mailto:someone@example.com??subject=Please provide your details&body=Please provide the below details-.%0D%0A%0D%0AFull Name:%0D%0AEmail:%0D%0AOrganization:%0D%0AEvent Name:%0D%0AReason:%0D%0A' target='_top'>skill_search@accenture.com</a>")
    }
    </script>
    <div style="border: 0;font-size: 47%;font: inherit;vertical-align: top;margin-top: -4px;">
    <img src="{!$Resource.AccentureLogo}" alt="Company Logo" width="360" height="120"/>
    <font size="5" style="font-family: initial;margin-left: 150px;padding-top:26px;font-size: 40px;">Welcome to Skill Search and Assist Portal.</font>
    </div>
    <br/>
    <div style="width:75%;float:left;display:inline-block;">
    <span id="theBlock" style="overflow-y: auto; overflow-x: none;height:450px;display:block;border:2px solid #FF8C00;">
    <apex:tabPanel switchType="client" selectedTab="name1" id="AccountTabPanel" tabClass="activeTab" inactiveTabClass="inactiveTab">
        <apex:tab label="My Profile" name="name1" id="tab1">            
        <apex:form >
            <apex:pageBlock >
                <apex:pageBlockSection columns="1">              
                    <a class="tooltip" target="_blank">
                        mouse me
                        <span>
                            Hello How are you guys ? <a href="#home"> Hello</a>
                         
                        </span>
                    </a>
                    <apex:outputLink onmouseover="myFunction()">
                        <apex:outputText value="Fazurulla Ganganapalli"></apex:outputText>
                    </apex:outputLink>                  
                    <apex:inputText label="Last Name"/>
                    <apex:inputText label="Email ID"/>
                </apex:pageBlockSection>
                <apex:outputText value="enter your phone number" />
            <apex:inputText /><c:helpicon helpText="Please Enter your Phone Number"/>
            </apex:pageBlock>          
            <apex:outputLink value="mailto:skill_search@accenture.com?subject=Please provide your details&body=Please provide the below details-.%0D%0A%0D%0AFull Name:%0D%0AEmail:%0D%0AOrganization:%0D%0AEvent Name:%0D%0AReason:%0D%0A">
            skill_search@accenture.com<img src="/img/func_icons/util/mailCloseEnv16.gif"/>
            </apex:outputLink>
            </apex:form>        
        </apex:tab>
        <apex:tab label="Skill Search" name="name2" id="tab2">
            <apex:include pageName="ResourceRosterloginPage"/>
        </apex:tab>
        <apex:tab label="Search Forums" name="name3" id="tab3">
            <apex:include pageName="ResourceRosterloginPage"/>
        </apex:tab>
        <apex:tab label="My Bookmarks" name="name4" id="tab4">
            <apex:include pageName="ResourceRosterloginPage"/>
        </apex:tab>
         <apex:tab label="Logout" name="name5" id="tab5">
        </apex:tab>
    </apex:tabPanel>
    </span>  
    </div>
    <apex:form >
    <div style="background-color: #e2f1f6;border: 2px solid #FF8C00;font-weight: bold;color: #000000;padding: .4em;opacity: 1;transition: opacity 1s, height 0;height: 450px;width: 20%;display: inline-block;margin-left: 20px;border-radius: 5px;border-top-right-radius: 20px;border-bottom-left-radius: 20px;">
         <apex:outputText value="Question Description" style="font-size:14px;margin-left:10px;" />
         <br/>
         <apex:inputTextarea style="margin-left:10px;width:90%;height:90%;"/>
      </div>
      </apex:form>
   </apex:page>


Visualforce Page export as PDF

Visualforce Page :

<apex:page controller="exportExcel" action="{!exportToExcel}" renderAs="pdf">  
    <apex:pageBlock >
        <apex:pageBlockTable value="{!lstConsignmentSearchData}" var="x" border="1" columnsWidth="100px,200px,150px" cellspacing="0" cellpadding="8">
            <apex:column headerValue="First Name">
                {!x.First_Name__c}
            </apex:column>
            <apex:column headerValue="Last Name">
                {!x.Last_Name__c}
            </apex:column>
            <apex:column headerValue="Location">
                {!x.Location__c}
            </apex:column>
            <apex:column headerValue="Client">
                {!x.Client__c}
            </apex:column>
             <apex:column headerValue="Primary Skill">
                {!x.Primary_Skill__c}
            </apex:column>
             <apex:column headerValue="Primary Skill Proficiency">
                {!x.Primar_Skill_Proficiency__c}
            </apex:column>
             <apex:column headerValue="Exp In Primary Skill(Months)">
                {!x.Experience_in_Primary_Skill__c}
            </apex:column>
            <apex:column headerValue="Secondary Skill">
                {!x.Secondary_Skill__c}
            </apex:column>
           <!-- <apex:column headerValue="Secondary Skill Proficiency">
                {!x.Secondary_Skill_Proficiency__c}
            </apex:column>
            <apex:column headerValue="Exp In Secondary Skill(Months)">
                {!x.Experience_in_Secondary_Skill__c}
            </apex:column>-->
        </apex:pageBlockTable>
    </apex:pageBlock>  

</apex:page>


Controller :

public class exportExcel {
    public string  skillEvent{get;set;}
    public string  clientEvent{get;set;}
    public string  locationEvent{get;set;}
    public string  proficiencyEvent{get;set;}
    public string LoginPageId {get;set;}
    public exportExcel(){
        LoginPageId = ApexPages.CurrentPage().getParameters().get('LoginPageId');
        skillEvent       = apexpages.currentpage().getparameters().get('skillEvent');
        clientEvent      = apexpages.currentpage().getparameters().get('clientEvent');
        locationEvent    = apexpages.currentpage().getparameters().get('locationEvent');
        proficiencyEvent = apexpages.currentpage().getparameters().get('proficiencyEvent');
    }
    public List<Base_Data__c> lstConsignmentSearchData {get;set;}
    public void exportToExcel(){
          lstConsignmentSearchData =[Select Client__c,
                                Contact__c,
                                Email_Address__c,
                                Experience_in_Primary_Skill__c,
                                Experience_in_Secondary_Skill__c,
                                First_Name__c,
                                Last_Name__c,
                                Location__c,
                                Primary_Skill__c,
                                Secondary_Skill__c,
                                Primar_Skill_Proficiency__c,
                                Secondary_Skill_Proficiency__c from Base_Data__c where
                                ((Primary_Skill__c= :skillEvent or Client__c= :clientEvent or Location__c=: locationEvent) or
                                (primar_Skill_Proficiency__c=: proficiencyEvent)) order by Primar_Skill_Proficiency__c desc,First_Name__c asc];
    //pagereference pref = new pagereference('/apex/EmployeeRegistrationPagesfdc1');
    //pref.getParameters().put('LoginPageId',LoginPageId);
    //return pref;
    }
 }

Screenshot :



Pageblock table export as .xls or excell

Visualforce Page :

<apex:page controller="exportExcel" action="{!exportToExcel}" readOnly="true" contentType="application/vnd.ms-excel#ConsignmentSearchData.xlsx">  
    <apex:pageBlock >
        <apex:pageBlockTable value="{!lstConsignmentSearchData}" var="x">
           <apex:column headerValue="First Name">
                {!x.First_Name__c}
            </apex:column>
            <apex:column headerValue="Last Name">
                {!x.Last_Name__c}
            </apex:column>
            <apex:column headerValue="Location">
                {!x.Location__c}
            </apex:column>
            <apex:column headerValue="Client">
                {!x.Client__c}
            </apex:column>
             <apex:column headerValue="Primary Skill">
                {!x.Primary_Skill__c}
            </apex:column>
             <apex:column headerValue="Primary Skill Proficiency">
                {!x.Primar_Skill_Proficiency__c}
            </apex:column>
             <apex:column headerValue="Exp In Primary Skill(Months)">
                {!x.Experience_in_Primary_Skill__c}
            </apex:column>
            <apex:column headerValue="Secondary Skill">
                {!x.Secondary_Skill__c}
            </apex:column>
            <apex:column headerValue="Secondary Skill Proficiency">
                {!x.Secondary_Skill_Proficiency__c}
            </apex:column>
            <apex:column headerValue="Exp In Secondary Skill(Months)">
                {!x.Experience_in_Secondary_Skill__c}
            </apex:column>
        </apex:pageBlockTable>
    </apex:pageBlock>  

</apex:page>

Controller :

public class exportExcel {
    public string  skillEvent{get;set;}
    public string  clientEvent{get;set;}
    public string  locationEvent{get;set;}
    public string  proficiencyEvent{get;set;}
    public string LoginPageId {get;set;}
    public exportExcel(){
        LoginPageId = ApexPages.CurrentPage().getParameters().get('LoginPageId');
        skillEvent       = apexpages.currentpage().getparameters().get('skillEvent');
        clientEvent      = apexpages.currentpage().getparameters().get('clientEvent');
        locationEvent    = apexpages.currentpage().getparameters().get('locationEvent');
        proficiencyEvent = apexpages.currentpage().getparameters().get('proficiencyEvent');
    }  
    public List<Base_Data__c> lstConsignmentSearchData {get;set;}
    public void exportToExcel(){
          lstConsignmentSearchData =[Select Client__c,
                                Contact__c,
                                Email_Address__c,
                                Experience_in_Primary_Skill__c,
                                Experience_in_Secondary_Skill__c,
                                First_Name__c,
                                Last_Name__c,
                                Location__c,
                                Primary_Skill__c,
                                Secondary_Skill__c,
                                Primar_Skill_Proficiency__c,
                                Secondary_Skill_Proficiency__c from Base_Data__c where
                                ((Primary_Skill__c= :skillEvent or Client__c= :clientEvent or Location__c=: locationEvent) or
                                (primar_Skill_Proficiency__c=: proficiencyEvent)) order by Primar_Skill_Proficiency__c desc,First_Name__c asc];
    //pagereference pref = new pagereference('/apex/EmployeeRegistrationPagesfdc1');
    //pref.getParameters().put('LoginPageId',LoginPageId);
    //return pref;
    }
 }

Employee Time sheet management or shift roster based on weeks

Visualforce Page :

<apex:page controller="shiftRosterController" tabStyle="Account" sidebar="false" action="{!onloadfunction}" showHeader="false">
    <style>
       .dropbtn {
            background-color: #4CAF50;
            color: white;
            padding: 16px;
            font-size: 16px;
            border: none;
            cursor: pointer;
        }      
        .dropdown {
            position: relative;
            display: inline-block;
        }
     
        .dropdown-content {
            display: none;
            position: absolute;
            background-color: #f9f9f9;
            min-width: 160px;
            box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
        }
     
        .dropdown-content a {
            color: black;
            padding: 12px 16px;
            text-decoration: none;
            display: block;
        }
     
        .dropdown-content a:hover {background-color: #f1f1f1}
     
        .dropdown:hover .dropdown-content {
            display: block;
        }
     
        .dropdown:hover .dropbtn {
            background-color: #3e8e41;
        }
                * {box-sizing:border-box;}
        ul {list-style-type: none;}
        body {font-family: Verdana,sans-serif;}
     
        .month {
            padding: 50px 15px;
            width: 100%;
            background: #1abc9c;
        }
     
        .month ul {
            margin: 0;
            padding: 0;
            margin-top: -10px;
        }
     
        .month ul li {
            color: white;
            font-size: 17px;
            text-transform: inherit;
            letter-spacing: 1px;
        }
     
        .month .prev {
            float: left;
            padding-top: 10px;
        }
     
        .month .next {
            float: right;
            padding-top: 10px;
        }
     
        .weekdays {
            margin: 0;
            padding: 10px 0;
            background-color: #ddd;
        }
     
        .weekdays li {
            display: inline-block;
            width: 10.6%;
            color: #666;
            text-align: center;
        }
     
        .days {
            padding: 10px 0;
            background: #eee;
            margin: 0;
        }
     
        .days li {
            list-style-type: none;
            display: inline-block;
            width: 13.6%;
            text-align: center;
            margin-bottom: 5px;
            font-size:12px;
            color: #777;
        }
     
        .days li .active {
            padding: 2px;
            background: #1abc9c;
            color: white !important
        }
     
        /* Add media queries for smaller screens */
        @media screen and (max-width:720px) {
            .weekdays li, .days li {width: 13.1%;}
        }
     
        @media screen and (max-width: 420px) {
            .weekdays li, .days li {width: 12.5%;}
            .days li .active {padding: 2px;}
        }
     
        @media screen and (max-width: 290px) {
            .weekdays li, .days li {width: 12.2%;}
        }
        </style>
<apex:form >
     <div class="month">
     <ul>
     <li style="text-align:center">
     <!--<img src="{!$Resource.AccentureWhiteLogo}" style="margin-left: 200px;margin-top: -20px;"/>-->
     <b>Week Selection</b>&nbsp;&nbsp;&nbsp;
      <apex:selectList value="{!weekselection}" size="1" id="weekselect" style="color: black;padding: 1px;color: black;padding: 1px;box-shadow: inset 0 0 5px rgba(000,000,000, 0.5);">
          <apex:actionSupport event="onchange" action="{!onloadfunction}" reRender="AllTables" status="status"/>
          <apex:selectOptions value="{!weekvalues}"/>
      </apex:selectList>
      </li>
      </ul>
      <ul style="margin-left: 1200px;list-style-type:disc;font-family: initial;font-size: 17px;">
      <li>Shift A :(07AM to 4:30PM)</li>
      <li>Shift G :(9AM to 6:30PM )</li>
      <li>Shift B :(12PM to 9:30PM)</li>
      <li>Shift C :(9PM to 6:30AM)</li>
      </ul>
      </div>
      <apex:outputpanel >
    <apex:actionstatus id="status">
        <apex:facet name="start">
            <div class="waitingSearchDiv" id="el_loading" style="background-color: #fbfbfb;height: 100%;opacity:0.65;width:100%;">
                <div class="waitingHolder" style="top: 115px; width: 50px;">
                    <img class="waitingImage" src="/img/loading.gif" title="Please Wait..." />
                    <span class="waitingDescription">Loading...</span>
                </div>
            </div>
        </apex:facet>
    </apex:actionstatus>
    </apex:outputpanel>
          <br/>
          <apex:outputPanel id="AllTables">
            <apex:tabPanel switchType="client" selectedTab="inceffort" id="theTabPanel" >            
                <apex:tab label="Resource Shift Roster" name="othereffort" id="tabTwo" style="font-weight:bold;width:200px;">
                <apex:outputPanel id="otherentrytable">
                <apex:pagemessages />
                <apex:outputPanel rendered="{!sectionPageBlockShow}">
                <apex:dataTable cellspacing="10" value="{!otherentrylist}" var="acc" rendered="{!NOT(ISNULL(otherentrylist))}" width="100%" border="0">
                         <apex:column headervalue="Resource Name">
                             <apex:inputField value="{!acc.Account__c}"/>
                         </apex:column>                      
                         <apex:column headervalue="Application">
                             <apex:inputField value="{!acc.Application__c}" required="true"/>
                         </apex:column>
                         <apex:column >
                             <apex:facet name="header"><apex:outputText value="{0,date,d-MMMM (EEEE)}"><apex:param value="{!SelectedRowDate+0}" /></apex:outputText></apex:facet>
                             <apex:inputField value="{!acc.Monday_Shift__c}" required="true"/>                          
                         </apex:column>                        
                         <apex:column >
                             <apex:facet name="header"><apex:outputText value="{0,date,d-MMMM (EEEE)}"><apex:param value="{!SelectedRowDate+1}" /></apex:outputText></apex:facet>
                             <apex:inputField value="{!acc.Tuesday_Shift__c}" required="true"/>
                         </apex:column>
                         <apex:column >
                             <apex:facet name="header"><apex:outputText value="{0,date,d-MMMM (EEEE)}"><apex:param value="{!SelectedRowDate+2}" /></apex:outputText></apex:facet>
                             <apex:inputField value="{!acc.Wed_Shift__c}" required="true"/>
                         </apex:column>
                         <apex:column >
                             <apex:facet name="header"><apex:outputText value="{0,date,d-MMMM (EEEE)}"><apex:param value="{!SelectedRowDate+3}" /></apex:outputText></apex:facet>
                             <apex:inputField value="{!acc.Thurs_Shift__c}" required="true"/>
                         </apex:column>
                         <apex:column >
                             <apex:facet name="header"><apex:outputText value="{0,date,d-MMMM (EEEE)}"><apex:param value="{!SelectedRowDate+4}" /></apex:outputText></apex:facet>
                             <apex:inputField value="{!acc.Friday_Shift__c}" required="true"/>
                         </apex:column>
                         <apex:column >
                             <apex:facet name="header"><apex:outputText value="{0,date,d-MMMM (EEEE)}"><apex:param value="{!SelectedRowDate+5}" /></apex:outputText></apex:facet>
                             <apex:inputField value="{!acc.Saturday_Shift__c}"/>
                         </apex:column>
                         <apex:column >
                             <apex:facet name="header"><apex:outputText value="{0,date,d-MMMM (EEEE)}"><apex:param value="{!SelectedRowDate+6}" /></apex:outputText></apex:facet>
                             <apex:inputField value="{!acc.Sunday_Shift__c}" />
                         </apex:column>
                     </apex:dataTable>
                     </apex:outputpanel>
                     </apex:outputpanel>
                     <br/> <br/>    
                     <apex:commandButton value="Save Roster" action="{!savetimesheet}" rendered="{!cmdSaveRosterShow}" style="margin-top: 22px;padding: 8px;margin-left: 10px;"/>            
                    <apex:commandButton value="Add another row" action="{!addrowothers}" reRender="AllTables" status="status" rendered="{!cmdAddRowRosterShow}" style="margin-top: 22px;padding: 8px;margin-left: 10px;"/>
                </apex:tab>
                <apex:tab label="Manager Console" name="othereffort1" id="tabTwo1" style="font-weight:bold;width:200px;">
                    <apex:pageMessage detail="Info: Working In progress" severity="Info"/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
                </apex:tab>
            </apex:tabPanel>
          </apex:outputPanel>
          <br/> <br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
</apex:form>      
</apex:page>


Controller :

public class shiftRosterController{
    public String weekselection{get; set;}
    public String incselection{get; set;}
    Public List<Employee_Shift_Roster__c> tentries;
    Public List<Employee_Shift_Roster__c> otherentries;
    Public Date SelectedWeek;
    Public Date SelectedRowDate{get;set;}
    public boolean cmdAddRowRosterShow {get;set;}
    public boolean cmdSaveRosterShow{get;set;}
    public Id oppId {get; set;}
    public boolean sectionPageBlockShow{get;set;}
    public void shiftRosterController(){
        cmdAddRowRosterShow = false;
        cmdSaveRosterShow = false;
        sectionPageBlockShow = false;
    }
    public void onloadfunction(){
        try{
            if(weekselection=='--None--'|| weekselection == null){
                ApexPages.addMessage(new ApexPages.Message(ApexPages.Severity.Confirm,'Please select week value from above picklist'));
                cmdAddRowRosterShow = false;
                cmdSaveRosterShow = false;
                sectionPageBlockShow = false;
            }else{
                if ( weekselection != null){
                    SelectedWeek = date.valueOf(weekselection);
                    system.debug('The Selected Week is'+SelectedWeek);
                    tentries = [select id,Account__c,Work_Week__c ,Application__c,Friday_Shift__c,Monday_Shift__c,Saturday_Shift__c,Sunday_Shift__c,Thurs_Shift__c,Tuesday_Shift__c,Wed_Shift__c from Employee_Shift_Roster__c where Work_Week__c=:SelectedWeek];
                    otherentries = [select id,Account__c,Application__c,Work_Week__c ,Friday_Shift__c,Monday_Shift__c,Saturday_Shift__c,Sunday_Shift__c,Thurs_Shift__c,Tuesday_Shift__c,Wed_Shift__c from Employee_Shift_Roster__c where Work_Week__c=:SelectedWeek];
                    SelectedRowDate = Date.valueOf(weekselection);
                    cmdAddRowRosterShow = true;
                    cmdSaveRosterShow = true;
                    sectionPageBlockShow = true;
                }else{
                    Date currentdate = date.today();
                    SelectedWeek = currentdate.toStartofWeek()+1;
                    system.debug('The Selected Week is'+SelectedWeek);
                    tentries = [select id,Account__c,Application__c,Work_Week__c ,Friday_Shift__c,Monday_Shift__c,Saturday_Shift__c,Sunday_Shift__c,Thurs_Shift__c,Tuesday_Shift__c,Wed_Shift__c from Employee_Shift_Roster__c where Work_Week__c=:SelectedWeek];
                    otherentries = [select id,Account__c,Application__c,Work_Week__c ,Friday_Shift__c,Monday_Shift__c,Saturday_Shift__c,Sunday_Shift__c,Thurs_Shift__c,Tuesday_Shift__c,Wed_Shift__c from Employee_Shift_Roster__c where Work_Week__c=:SelectedWeek];
                    SelectedRowDate = Date.valueOf(weekselection);
                    cmdAddRowRosterShow = true;
                    cmdSaveRosterShow = true;
                    sectionPageBlockShow = true;
                }
           }
        }catch(exception e){
         
        }        
    }    
    public List<Employee_Shift_Roster__c> getentrylist(){
        if (tentries!=NULL && tentries.size()>0)
        return tentries;
        else
    return null;  
    }
    public List<Employee_Shift_Roster__c> getotherentrylist(){
        if (otherentries!=NULL && otherentries.size()>0)
        return otherentries;
        else
    return null;  
    }
 
    public List<SelectOption> getweekvalues(){
        List<SelectOption> options = new List<SelectOption>();
        Date currentdate = date.today();
        Date currentweekstart = currentdate.toStartofWeek()+1;
        Date currentweekend = currentweekstart +6;
        Date oldestweekstart = currentweekstart - 7;
        Date oldestweekend;
        options.add(new SelectOption('--None--','--None--'));
        options.add(new SelectOption(currentweekstart+'',currentweekstart.format()+' to '+currentweekend.format()));
        for (Integer i =0; i<=10 ; i++){
        oldestweekend = oldestweekstart+6;
        options.add(new SelectOption(oldestweekstart+'',oldestweekstart.format()+' to '+oldestweekend.format()));
        oldestweekstart +=7;
        }
    return options;
    }
    public void addrowothers(){
        system.debug('The Selected Week is'+SelectedWeek);
        Employee_Shift_Roster__c newentry = new Employee_Shift_Roster__c(Work_Week__c=SelectedWeek);
    otherentries.add(newentry);
    }
    Public Pagereference canceltimesheet(){
        Pagereference p = Page.timesheetmanagement;
    return p;
    }
    public Pagereference savetimesheet(){
    try{
        upsert tentries;
        upsert otherentries;
        Pagereference p = Page.ShiftRosterController_Pge;
    return p;
    }catch(exception e){
        return null;
    }  
  }  
}

Screenshot :


Featured

What is Cryptography in salesforce and what are all the algorithms provided by them ?

A). It is a security protocal between two systems. Lets say we are integration two systems without any encrytion mechanism then hackers wil...

Popular