Friday 14 October 2016

How to make a cookie enabled form with data that persists on the browser using jQuery, cookies and javascript.

Requirements - a form which remembers values entered at the browser.

See the Pen Persist by Mark Hopgood (@marknhopgood) on CodePen.

end

Wednesday 12 October 2016

10 Minute Timer - Unbranded Professional Timer

Here's a timer and a video preview that is useful for professional presenters, teachers and those people fed up with inappropriate ads.

I've included a preview video and a link to the actual timer.

Video Preview



Link to Timer
click here to launch timer - F11 makes it full screen, ctrl-r or f-9 for reload

Thursday 29 September 2016

SalesForce questions [answered]

How to get your security token in SalesForce


Login to your orgnistaion and Navigate to At the top navigation bar go to <your name > My Settings > Personal  >  Reset My Security Token.
you will receive an email with your token.

Source: https://success.salesforce.com/answers?id=90630000000glADAAY

Tuesday 16 August 2016

Where to find a list of uk holidays for use in php England Wales [ANSWERED]

Firstly here's the England and Wales (UK except Scotland) holidays as an array in PHP called $holidays

$holidays2015=array("2015-12-24","2015-12-25","2015-12-28");
$holidays2016=array("2016-01-01","2016-03-25","2016-03-28","2016-05-02","2016-05-30","2016-08-29","2016-12-26","2016-12-27");
$holidays2017=array("2017-01-02","2017-04-14","2017-04-17","2017-05-01","2017-05-29","2017-08-28","2017-12-25","2017-12-26");

$holidays=array_merge($holidays2015,$holidays2016,$holidays2017);


Here's a function which also has an example. Originally posted by Dave 
http://stackoverflow.com/users/4274143/dave

<?php
//The function returns the no. of business days between two dates and it skips the holidays
function getWorkingDays($startDate,$endDate,$holidays){
    // do strtotime calculations just once
    $endDate = strtotime($endDate);
    $startDate = strtotime($startDate);


    //The total number of days between the two dates. We compute the no. of seconds and divide it to 60*60*24
    //We add one to inlude both dates in the interval.
    $days = ($endDate - $startDate) / 86400 + 1;

    $no_full_weeks = floor($days / 7);
    $no_remaining_days = fmod($days, 7);

    //It will return 1 if it's Monday,.. ,7 for Sunday
    $the_first_day_of_week = date("N", $startDate);
    $the_last_day_of_week = date("N", $endDate);

    //---->The two can be equal in leap years when february has 29 days, the equal sign is added here
    //In the first case the whole interval is within a week, in the second case the interval falls in two weeks.
    if ($the_first_day_of_week <= $the_last_day_of_week) {
        if ($the_first_day_of_week <= 6 && 6 <= $the_last_day_of_week) $no_remaining_days--;
        if ($the_first_day_of_week <= 7 && 7 <= $the_last_day_of_week) $no_remaining_days--;
    }
    else {
        // (edit by Tokes to fix an edge case where the start day was a Sunday
        // and the end day was NOT a Saturday)

        // the day of the week for start is later than the day of the week for end
        if ($the_first_day_of_week == 7) {
            // if the start date is a Sunday, then we definitely subtract 1 day
            $no_remaining_days--;

            if ($the_last_day_of_week == 6) {
                // if the end date is a Saturday, then we subtract another day
                $no_remaining_days--;
            }
        }
        else {
            // the start date was a Saturday (or earlier), and the end date was (Mon..Fri)
            // so we skip an entire weekend and subtract 2 days
            $no_remaining_days -= 2;
        }
    }

    //The no. of business days is: (number of weeks between the two dates) * (5 working days) + the remainder
//---->february in none leap years gave a remainder of 0 but still calculated weekends between first and last day, this is one way to fix it
   $workingDays = $no_full_weeks * 5;
    if ($no_remaining_days > 0 )
    {
      $workingDays += $no_remaining_days;
    }

    //We subtract the holidays
    foreach($holidays as $holiday){
        $time_stamp=strtotime($holiday);
        //If the holiday doesn't fall in weekend
        if ($startDate <= $time_stamp && $time_stamp <= $endDate && date("N",$time_stamp) != 6 && date("N",$time_stamp) != 7)
            $workingDays--;
    }

    return $workingDays;
}

//Example:

$holidays2015=array("2015-12-24","2015-12-25","2015-12-28");
$holidays2016=array("2016-01-01","2016-03-25","2016-03-28","2016-05-02","2016-05-30","2016-08-29","2016-12-26","2016-12-27");
$holidays2017=array("2017-01-02","2017-04-14","2017-04-17","2017-05-01","2017-05-29","2017-08-28","2017-12-25","2017-12-26");

$holidays=array_merge($holidays2015,$holidays2016,$holidays2017);

#echo getWorkingDays("2015-09-08","2015-09-10",$holidays);
// => will return 3
?>

Tuesday 17 May 2016

where to find an independet broadband consultant? #ibc

Why and where can i find an independent broadband consultant?

An independent broadband consultant has access to specific resources that can tell you what services and speeds are available in your area.

Independent of adverts that you may see for discounted prices, an #ibc can give you a truer picture of what you can expect.

That means that you could be saving £100s of pounds a year.

#ibc prices are typically £65 to research your area and suggest the best deals, not just promised speeds, but realistically what you can expect.

contact mark@hopgood.eu for more information and to discuss your requirements.

Monday 16 May 2016

windows 7 pro 64 bit - how to reduce the datastore.edb file [answered]

ANSWER: defrag the database using esentutl.exe

Here's what I did

stop windows update service

C:\Windows\system32>esentutl /d C:\Windows\SoftwareDistribution\DataStore\DataStore.edb

Extensible Storage Engine Utilities for Microsoft(R) Windows(R)
Version 6.1
Copyright (C) Microsoft Corporation. All Rights Reserved.

Initiating DEFRAGMENTATION mode...

            Database: C:\Windows\SoftwareDistribution\DataStore\DataStore.edb


                  Defragmentation Status (% complete)

          0    10   20   30   40   50   60   70   80   90  100
          |----|----|----|----|----|----|----|----|----|----|
          ...................................................


Moving 'TEMPDFRG4872.EDB' to 'C:\Windows\SoftwareDistribution\DataStore\DataStore.edb'..

Note:
  It is recommended that you immediately perform a full backup
  of this database. If you restore a backup made before the
  defragmentation, the database will be rolled back to the state
  it was in at the time of that backup.

Operation completed successfully in 100.875 seconds.



Now i have an extra 400MB free - makes the difference on windows 7 with an ssd!

if you get the following error, make sure windows update service is stopped...

Error: Access to source database 'C:\Windows\SoftwareDistribution\DataStore\Data
Store.edb' failed with Jet error -1032.

Operation terminated with error -1032 (JET_errFileAccessDenied, Cannot access fi
le, the file is locked or in use) after 20.30 seconds.

reduce size of datastore.edb