# Thread: Count number of Sunday from a given date to today

1. Registered User
Join Date
Mar 2011
Posts
3

## Count number of Sunday from a given date to today

Hello

New to the forum and hoping someone can help.
I was familiar with JS but that was many years ago, and I guess the brain cells that held that info have retired.

Does anyone have a way of counting the number of Sundays from a given date to todays date?

For example the given date is 11/27/2010, so how many Sundays from then til today?

Any help would be greatly appreciated.

George

2. Could be something like this:
Code:
```<script type="text/javascript">
// Start extended prototype
Date.prototype.countDays=function(YYYY,MM,DD,D){
var thisDate=new Date(this.getFullYear(),this.getMonth(),this.getDate())
var otherDate=new Date(Number(YYYY),Number(MM)-1,Number(DD))
var startD, endD, howmany=0;
if(thisDate>otherDate){
startD=otherDate;
endD=thisDate;
}
else{
startD=thisDate;
endD=otherDate;
}
while(endD>=startD){
if(startD.getDay()==D){howmany++}
startD.setDate(startD.getDate()+1);
}
this.howmany=howmany;
}
// End extended prototype

var today=new Date();
today.countDays(2010,11,27,0); // Year,Month,Date,Week's Day (0=Sunday, 1=Monday...)
</script>```

3. Registered User
Join Date
Mar 2011
Posts
3
Hey Kor,

Thanks for the reply and code. As I metioned it has been some time since I did any scripting, so your coding is a bit advanced for me right now.

I did fumble my way through and came up with this bit which counts the days, the Sundays, and the working days.

It may not be pretty, but I did it and it works, and I understand it.

Code:
```var gpldt = new Date();
var gplmo = new Date();
var gplyr = new Date();
// GET TODAY DATE	****************
var  dt = gpldt.getDate();
var  mo = gplmo.getMonth();
var  yr = gplyr.getYear();
//**********************************

var  sdt = "10"
var  smo = "0"
var  syr = "2011"

var fullDay = 24*60*60*1000;
var OT1Date =  new Date(syr,smo,sdt);
var todayDate = new Date(yr,mo,dt);
var difDay = Math.floor((todayDate.getTime() - OT1Date.getTime())/(fullDay));
difDay = difDay + 1
var difSun = Math.floor(difDay / 7)
mo = mo+1
var wrkdys = difDay - difSun;

document.write("There are " + difDay + " days between " )
document.write("Todays Date: " + mo+"/"+dt+"/"+yr +"  and the Start Date: 1/10/2011")
document.write('<br />' )
document.write("There are "+difSun+ " Sundays" )
document.write('<br />' )
document.write("There are " + wrkdys + " working days inc Saturdays")
document.write('<br />' )```

4. Originally Posted by bigGPL
I did fumble my way through and came up with this bit which counts the days, the Sundays, and the working days.

It may not be pretty, but I did it and it works, and I understand it.
Well, if it works, it works There are many ways to skin a cat

Regarding my code, it is not a big deal. It is just a way to extend the prototype of a primitive. If you are interested, about the prototype property/object:

http://www.w3schools.com/jsref/jsref_prototype_math.asp
http://www.javascriptkit.com/javatutors/proto.shtml

and about extending the native prototype of some Primitives:
http://phrogz.net/js/classes/Extendi...ndClasses.html

There are currently 1 users browsing this thread. (0 members and 1 guests)

#### Posting Permissions

• You may not post new threads
• You may not post replies
• You may not post attachments
• You may not edit your posts
•

"

"

## X vBulletin 4.2.2 Debug Information

• Page Generation 0.13133 seconds
• Memory Usage 2,874KB
• Queries Executed 15 (?)
Template Usage (34):
• (2)bbcode_code
• (1)bbcode_quote
• (1)footer
• (1)forumjump
• (1)forumrules
• (1)gobutton
• (4)memberaction_dropdown
• (1)navbar
• (1)navbar_moderation
• (1)navbar_noticebit
• (1)navbar_tabs
• (2)option
• (4)postbit
• (4)postbit_onlinestatus
• (4)postbit_wrapper
• (1)spacer_close
• (1)spacer_open
• (1)tagbit_wrapper

Phrase Groups Available (6):
• global
• inlinemod
• postbit
• posting
• reputationlevel
Included Files (26):
• ./global.php
• ./includes/class_bootstrap.php
• ./includes/init.php
• ./includes/class_core.php
• ./includes/config.php
• ./includes/functions.php
• ./includes/class_friendly_url.php
• ./includes/class_hook.php
• ./includes/class_bootstrap_framework.php
• ./vb/vb.php
• ./vb/phrase.php
• ./includes/functions_calendar.php
• ./includes/functions_bigthree.php
• ./includes/class_postbit.php
• ./includes/class_bbcode.php
• ./includes/functions_reputation.php
• ./includes/functions_notice.php
• ./packages/vbattach/attach.php
• ./vb/types.php
• ./vb/cache.php
• ./vb/cache/db.php
• ./vb/cache/observer/db.php
• ./vb/cache/observer.php

Hooks Called (70):
• init_startup
• friendlyurl_resolve_class
• init_startup_session_setup_start
• database_pre_fetch_array
• database_post_fetch_array
• init_startup_session_setup_complete
• global_bootstrap_init_start
• global_bootstrap_init_complete
• cache_permissions
• fetch_foruminfo
• global_state_check
• global_bootstrap_complete
• global_start
• style_fetch
• global_setup_complete
• strip_bbcode
• friendlyurl_clean_fragment
• friendlyurl_geturl
• forumjump
• cache_templates
• cache_templates_process
• template_register_var
• template_render_output
• fetch_template_start
• fetch_template_complete
• parse_templates
• notices_check_start
• notices_noticebit
• process_templates_complete
• friendlyurl_redirect_canonical
• bbcode_fetch_tags
• bbcode_create
• postbit_factory
• postbit_display_start
• postbit_imicons
• bbcode_parse_start
• bbcode_parse_complete_precache
• bbcode_parse_complete
• postbit_display_complete
• memberaction_dropdown
• tag_fetchbit_complete
• forumrules
• navbits
• navbits_complete