home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Media Share 13
/
mediashare_13.zip
/
mediashare_13
/
ZIPPED
/
UTILS
/
FDATE84A.ZIP
/
HOLIDAYS.BAT
< prev
next >
Wrap
DOS Batch File
|
1994-03-25
|
6KB
|
135 lines
@echo off
CLS
:: HOLIDAYS.BAT
:: if user specifies a year as parm1, use it
set year=%1
if not (%year%)==() goto GetYrEnd
:: get name of this batch file, in upper case
FDATE /fupper /q%0 /v
echo ───────────────────────────────────────────────────────────────────────────────
echo %fdate%
echo ───────────────────────────────────────────────────────────────────────────────
:GetYr
echo.
echo Please enter the year for which you want holidays calculated,
FDATE /fget /q"or press ENTER for current year > " /vyear
if not (%year%)==() goto GetYrEnd
:: get current year
Fdate /Ff /At /Occyy /vyear
:GetYrEnd
echo.
:: check for validity of year parm (%1)
Fdate /Fv /A01-01-%year% >nul
if errorlevel 1 echo Value [%year%] is not a valid year. Please re-enter.
if errorlevel 1 goto GetYr
:: --------------------------------------------------------
:: Determine if year is a leapyear
:: --------------------------------------------------------
Fdate /Ff /A01-01-%year% /Oly /vLY
cls
echo ───────────────────────────────────────────────────────────────────────────────
if (%LY%)==(0) ECHO EVENTS IN %YEAR%
if (%LY%)==(1) ECHO EVENTS IN %YEAR% Note: %year% is a leap year
ECHO To print the calendar, press SHIFT+PRINTSCREEN to print each screen.
echo ───────────────────────────────────────────────────────────────────────────────
Fdate /Ff /A01-01-%year% /P"New Year's Day........................"
Fdate /Ff /A01-06-%year% /P"Epiphany.............................."
Fdate /Fw /D2 /N3 /A01-01-%year% /P"Martin Luther King, Jr. Day..........."
Fdate /Ff /A02-01-%year% /P" Note that " /S" begins Black History Month"
:: note use of x'ff' ^^^^ for formatting
Fdate /Ff /A02-14-%year% /P"Valentine's day......................."
Fdate /Fw /D2 /N3 /A02-01-%year% /P"Presidents' Day......................."
Fdate /Ff /A03-17-%year% /P"St. Patricks's Day...................."
if (%LY%)==(1) Fdate /Ff /A02-29-%year% /P"Sadie Hawkins Day....................."
:: ========== begin: DATES TIED TO EASTER==============================
set easter=
if (%year%)==(1991) set easter=03-31-%year%
if (%year%)==(1992) set easter=04-19-%year%
if (%year%)==(1993) set easter=04-11-%year%
if (%year%)==(1994) set easter=04-03-%year%
if (%year%)==(1995) set easter=04-16-%year%
if (%year%)==(1996) set easter=04-07-%year%
if (%year%)==(1997) set easter=03-30-%year%
if (%year%)==(1998) set easter=04-12-%year%
if (%year%)==(1999) set easter=04-04-%year%
if (%year%)==(2000) set easter=04-23-%year%
if (%year%)==(2001) set easter=04-15-%year%
if (%easter%)==() goto unknown
echo.
Fdate /Fsub /N47 /A%easter% /P"Mardi Gras (Shrove Tuesday)..........."
Fdate /Fsub /N46 /A%easter% /P"Ash Wednesday (Lent begins)..........."
Fdate /Fsub /N7 /A%easter% /P"Palm Sunday..........................."
Fdate /Fsub /N2 /A%easter% /P"Good Friday..........................."
Fdate /Ff /A%easter% /P"Easter................................"
:unknown
:: ========== end: DATES TIED TO EASTER==============================
echo ───────────────────────────────────────────────────────────────────────────────
PAUSE
CLS
Fdate /Fw /D4 /N4 /A04-01-%year% /P"Secretary's Day......................."
Fdate /Ff /A05-05-%year% /P"Cinco de Mayo (Mexico)................"
Fdate /Fw /D1 /N2 /A05-01-%year% /P"Mother's Day.........................."
Fdate /Fw /D2 /N-1 /A05-24-%year% /P"Victoria Day (Canada)................."
Fdate /FW /D2 /N-1 /A05-31-%year% /P"Memorial Day (observed)..............."
if not (%easter%)==() Fdate /Fadd /N39 /A%easter% /P"Ascension Day........................."
if not (%easter%)==() Fdate /Fadd /N49 /A%easter% /P"Pentecost............................."
if not (%easter%)==() echo.
Fdate /Ff /A06-14-%year% /P"Flag Day.............................."
:: ----- anniversary of Bloom's Day, June 16, 1904 ------------------
:: Here's a way to show an anniversary or event that you want to note.
:: Thanks to L. Schliesser for the algorithm.
:: ------------------------------------------------------------------
Fdate /F#dif /A%year% /B1904 /vann
Fdate /Ff /A06-16-%year% /P"Bloom's Day (%ann%th anniversary)........"
SET ann=
:: ---------------end bloom's day --------------------------------------
Fdate /Fw /D1 /N3 /A06-01-%year% /P"Father's Day.........................."
Fdate /Ff /A07-01-%year% /P"Canada Day (Canada)..................."
Fdate /Ff /A07-04-%year% /P"Independence Day (USA)................"
Fdate /Ff /A07-14-%year% /P"Bastille Day (France)................."
:: echo ─────────────────────────────────────────────────────────────────────── ────────
:: PAUSE
:: CLS
Fdate /Fw /D2 /N1 /A09-01-%year% /P"Labor Day............................."
:: ---- begin ------- note a particular day in a particular year
:: This technique is useful for noting special events:
:: 21st birthdays, 50th wedding anniversaries, etc.
if (%year%)==(1992) Fdate /Ff /A10-12-%year% /P"500th ann. of Columbus's discovery...."
:: ---- end -------- note a particular day in a particular year
Fdate /Fw /D2 /N2 /A10-01-%year% /P"Columbus Day (observed)..............."
Fdate /Fw /D2 /N2 /A10-01-%year% /P"Thanksgiving Day (Canada)............."
Fdate /Ff /A11-11-%year% /P"Veteran's Day........................."
:: Fourth Thursday in November
Fdate /Fw /D5 /N4 /A11-01-%year% /P"Thanksgiving Day (USA)................"
Fdate /Fw /D1 /N-4 /A12-24-%year% /P"First Sunday in Advent................"
Fdate /Ff /A12-25-%year% /P"Christmas............................."
Fdate /fadd /N1 /A12-31-%year% /P"New Year's Day........................"
echo ───────────────────────────────────────────────────────────────────────────────
:endit
set year=
set fdate=
set easter=
set LY=