Jump to content
Fórum Script Brasil
  • 0

calendario


felipe2v
 Share

Question

ola amigosd , eu gostaria de saber como criar um envento no calendario, onde eu clico em uma data e ela marca uma outra data a 3 dias na frente, mais eu gostaria de saber como esse event continuasse infinitamente sempre pulando essa quantidade de dias!! ate agora eu tenho esse calendario so que ele para em um so dia !

<!DOCTYPE html>
<HEAD>

<style type="text/css">
span.label {
display: block;
color:black;
width:100;
height:100;
text-align:center;
margin-top:0;
background:#ffF;
font:bold 40px Arial;
}
span.c1 {
background: none repeat scroll 0 0 #FFFFFF;
color: black;
display: block;
font: bold 40px Arial;
height: 40px;
margin-top: 0;
text-align: center;
width: 100%;
}
span.c2 {
display: block;
color:red;
width:100%;
height:40px;
text-align:center;
margin-top:0;
background:#ffF;
font:bold 40px Arial;
}
span.c3 {
cursor:hand;
color:#b0b0b0;
width:100%;
height:40;
text-align:center;
margin-top:0;
background:#ffF;
font:bold 12px Arial;
}
</style>
<script type="text/javascript">




function maxDays(mm, yyyy){
var mDay;
if((mm == 3) || (mm == 5) || (mm == 8) || (mm == 10)){
mDay = 30;
}
else{
mDay = 31
if(mm == 1){
if (yyyy/4 - parseInt(yyyy/4) != 0){
mDay = 28
}
else{
mDay = 29
}
}
}
return mDay;
}






function changeBg(id){{{

dataSele = document.getElementById(id).href;

if (eval(id).style.backgroundColor != "#fafa01"){
eval(id).style.backgroundColor = "#e20909"

}
else{
eval(id).style.backgroundColor = "#ffffff"
}





decisao = confirm("DIA" +" " + dataSele + " " + " É O SEU PROXIMO SERVIÇO DIURNO?" )

if (decisao){

val = id.replace(/sp/i,"");
val = parseInt(val) + 3;
id = "sp"+val;

return (eval(id).style.backgroundColor = "#e20909")


}


else {

eval(id).style.backgroundColor = "#ffffff"




}



}}



}





function writeCalendar(){
var now = new Date
var dd = now.getDate()
var mm = now.getMonth()
var dow = now.getDay()
var yyyy = now.getFullYear()
var arrM = new Array("Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro")
var arrY = new Array()
for (ii=0;ii<=4;ii++){
arrY[ii] = yyyy - 2 + ii
}
var arrD = new Array("D","S","T","Q","Q","S","S")

var text = ""
text = "<form name=calForm>"
text += "<table border=1>"
text += "<tr><td>"
text += "<table width=100%><tr>"
text += "<td align=left>"
text += "<select name=selMonth onChange='changeCal()'>"
for (ii=0;ii<=11;ii++){
if (ii==mm){
text += "<option value= " + ii + " Selected>" + arrM[ii] + "</option>"
}
else{
text += "<option value= " + ii + ">" + arrM[ii] + "</option>"
}
}
text += "</select>"
text += "</td>"
text += "<td align=right>"
text += "<select name=selYear onChange='changeCal()'>"
for (ii=0;ii<=4;ii++){
if (ii==2){
text += "<option value= " + arrY[ii] + " Selected>" + arrY[ii] + "</option>"
}
else{
text += "<option value= " + arrY[ii] + ">" + arrY[ii] + "</option>"
}
}
text += "</select>"
text += "</td>"
text += "</tr></table>"
text += "</td></tr>"
text += "<tr><td>"
text += "<table border=1>"
text += "<tr>"
for (ii=0;ii<=6;ii++){
text += "<td align=center><span class=label>" + arrD[ii] + "</span></td>"
}
text += "</tr>"
aa = 0
for (kk=0;kk<=5;kk++){
text += "<tr>"
for (ii=0;ii<=6;ii++){
text += "<td align=center><span id=sp" + aa + " onClick='changeBg(this.id)'>1</span></td>"
aa += 1
}
text += "</tr>"
}
text += "</table>"
text += "</td></tr>"
text += "</table>"
text += "</form>"
document.write(text)
changeCal()
}





function changeCal(){
var now = new Date
var dd = now.getDate()
var mm = now.getMonth()
var dow = now.getDay()
var yyyy = now.getFullYear()
var currM = parseInt(document.calForm.selMonth.value)
var prevM
if (currM!=0){
prevM = currM - 1
}
else{
prevM = 11
}
var currY = parseInt(document.calForm.selYear.value)
var mmyyyy = new Date()
mmyyyy.setFullYear(currY)
mmyyyy.setMonth(currM)
mmyyyy.setDate(1)
var day1 = mmyyyy.getDay()
if (day1 == 0){
day1 = 7
}
var arrN = new Array(41)
var aa
for (ii=0;ii<day1;ii++){
arrN[ii] = maxDays((prevM),currY) - day1 + ii + 1
}
aa = 1
for (ii=day1;ii<=day1+maxDays(currM,currY)-1;ii++){
arrN[ii] = aa
aa += 1
}
aa = 1
for (ii=day1+maxDays(currM,currY);ii<=41;ii++){
arrN[ii] = aa
aa += 1
}
for (ii=0;ii<=41;ii++){
eval("sp"+ii).style.backgroundColor = "#FFFFFF"
}
var dCount = 0
for (ii=0;ii<=41;ii++){
if (((ii<7)&&(arrN[ii]>20))||((ii>27)&&(arrN[ii]<20))){
eval("sp"+ii).innerHTML = arrN[ii]
eval("sp"+ii).className = "c3"
}



else{
eval("sp"+ii).innerHTML = arrN[ii]
if ((dCount==0)||(dCount==6)){
eval("sp"+ii).className = "c2"
}
else{
eval("sp"+ii).className = "c1"
}
if ((arrN[ii]==dd)&&(mm==currM)&&(yyyy==currY)){
eval("sp"+ii).style.backgroundColor="#90EE90"
}
}

document.getElementById("sp"+ii).href = arrN[ii];
dCount += 1
if (dCount>6){
dCount=0
}
}



}



// End -->
</script>

</HEAD>

<BODY>

<script type="text/javascript">writeCalendar()</script>

</body>


como vocês pode ver eu seleciono uma data e ela marca uma terceira, eu gostaria de saber se tem como fazer isso automatico sem precisar clicar em uma outra data! exemplo eu clico no dia 3 e ele marca o dia 6 e para ai , so que eu queria que continuasse a marca dia 6, dia 9 , dia 12... e assim vai em todos os messes! alguém pode dar essas ajuda ai?

Link to comment
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Forum Statistics

    • Total Topics
      149.8k
    • Total Posts
      646.6k
×
×
  • Create New...