Example #1
0
 public function testFormatDateRange()
 {
     $this->assertSame('3 March 2015', format_date_range('2015-03-03'));
     $this->assertSame('3 March 2015', format_date_range(null, '2015-03-03'));
     $this->assertSame('3 Mar 15', format_date_range('2015-03-03', '', false));
     $this->assertSame('3 Mar 15', format_date_range(null, '2015-03-03', false));
     $this->assertSame('3 March 2015', format_date_range('2015-03-03', '2015-03-03'));
     $this->assertSame('3 Mar 15', format_date_range('2015-03-03', '2015-03-03', false));
     $this->assertSame('3-5 March 2015', format_date_range('2015-03-03', '2015-03-05'));
     $this->assertSame('3-5 Mar 15', format_date_range('2015-03-03', '2015-03-05', false));
     $this->assertSame('3-5 March 2015', format_date_range('2015-03-05', '2015-03-03'));
     $this->assertSame('3-5 Mar 15', format_date_range('2015-03-05', '2015-03-03', false));
     $this->assertSame('3 March - 3 April 2015', format_date_range('2015-03-03', '2015-04-03'));
     $this->assertSame('3 Mar - 3 Apr 15', format_date_range('2015-03-03', '2015-04-03', false));
     $this->assertSame('3 March - 5 April 2015', format_date_range('2015-03-03', '2015-04-05'));
     $this->assertSame('3 Mar - 5 Apr 15', format_date_range('2015-03-03', '2015-04-05', false));
     $this->assertSame('3 March 2015 - 3 March 2016', format_date_range('2015-03-03', '2016-03-03'));
     $this->assertSame('3 Mar 15 - 3 Mar 16', format_date_range('2015-03-03', '2016-03-03', false));
     $this->assertSame('3 March 2015 - 3 April 2016', format_date_range('2015-03-03', '2016-04-03'));
     $this->assertSame('3 Mar 15 - 3 Apr 16', format_date_range('2015-03-03', '2016-04-03', false));
 }
function snippet_archive_list()
{
    global $Weblogs, $Current_weblog, $Archive_array, $Archive_array_html, $Paths;
    if ($Weblogs[$Current_weblog]['archive_unit'] == "none") {
        // if no archives are needed, just return.
        return "";
    }
    // if not yet done, load / make the array of archive filenames (together
    // with at least one date)
    if (!isset($Archive_array)) {
        make_archive_array();
    }
    // if not yet done, compile the html for this archive list
    if (!isset($Archive_array_html[$Current_weblog])) {
        $output = "";
        // maybe flip and reverse it.
        // 2004/11/23 =*=*= JM - changes to avoid array errors
        if (is_array($Archive_array[$Current_weblog])) {
            if ($Weblogs[$Current_weblog]['archive_order'] == 'descending') {
                $mylist = $Archive_array[$Current_weblog];
            } else {
                $mylist = array_reverse($Archive_array[$Current_weblog]);
            }
            foreach ($mylist as $file => $date) {
                // make Mark proud, and make a nice absolute url for the archive..
                $filelink = $Paths['pivot_url'] . $Weblogs[$Current_weblog]['archive_path'] . $file;
                $filelink = fixPath($filelink);
                // fix the rest of the string..
                list($start_date, $stop_date) = getdaterange($date, $Weblogs[$Current_weblog]['archive_unit']);
                $this_output = format_date_range($start_date, $stop_date, $Weblogs[$Current_weblog]['archive_linkfile']);
                $this_output = str_replace("%url%", $filelink, $this_output);
                $output .= "\n" . $this_output;
            }
        }
        // store it for quick access later on..
        $Archive_array_html[$Current_weblog] = $output;
    } else {
        // goodie, it's alread been done, so we just retrieve it.
        $output = $Archive_array_html[$Current_weblog];
    }
    return stripslashes($output);
}