Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F2889481
behavior-month-view.js
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Award Token
Flag For Later
Advanced/Developer...
View Handle
View Hovercard
Size
2 KB
Referenced Files
None
Subscribers
None
behavior-month-view.js
View Options
/**
* @provides javelin-behavior-calendar-month-view
*/
JX
.
behavior
(
'calendar-month-view'
,
function
()
{
var
hover_nodes
=
[];
function
get_info
(
e
)
{
var
week_body
=
e
.
getNode
(
'calendar-week-body'
);
if
(
!
week_body
)
{
week_body
=
e
.
getNode
(
'calendar-week-foot'
).
previousSibling
;
}
var
week_foot
=
week_body
.
nextSibling
;
var
day_id
=
JX
.
Stratcom
.
getData
(
e
.
getNode
(
'tag:td'
)).
dayID
;
var
day_body
;
var
day_foot
;
var
body_nodes
=
JX
.
DOM
.
scry
(
week_body
,
'td'
);
var
foot_nodes
=
JX
.
DOM
.
scry
(
week_foot
,
'td'
);
for
(
var
ii
=
0
;
ii
<
body_nodes
.
length
;
ii
++
)
{
if
(
JX
.
Stratcom
.
getData
(
body_nodes
[
ii
]).
dayID
==
day_id
)
{
day_body
=
body_nodes
[
ii
];
day_foot
=
foot_nodes
[
ii
];
break
;
}
}
return
{
data
:
JX
.
Stratcom
.
getData
(
week_body
),
dayID
:
day_id
,
nodes
:
{
week
:
{
body
:
week_body
,
foot
:
week_foot
},
day
:
{
body
:
day_body
,
foot
:
day_foot
}
}
};
}
function
alter_hover
(
enable
)
{
for
(
var
ii
=
0
;
ii
<
hover_nodes
.
length
;
ii
++
)
{
JX
.
DOM
.
alterClass
(
hover_nodes
[
ii
],
'calendar-hover'
,
enable
);
}
}
JX
.
enableDispatch
(
document
.
body
,
'mouseover'
);
JX
.
enableDispatch
(
document
.
body
,
'mouseout'
);
JX
.
Stratcom
.
listen
(
'mouseover'
,
[
'calendar-week'
,
'tag:td'
],
function
(
e
)
{
if
(
e
.
getNode
(
'calendar-event-list'
))
{
alter_hover
(
false
);
hover_nodes
=
[];
return
;
}
var
info
=
get_info
(
e
);
hover_nodes
=
[
info
.
nodes
.
day
.
body
,
info
.
nodes
.
day
.
foot
];
alter_hover
(
true
);
});
JX
.
Stratcom
.
listen
(
'mouseout'
,
[
'calendar-week'
,
'tag:td'
],
function
()
{
alter_hover
(
false
);
});
JX
.
Stratcom
.
listen
(
'click'
,
[
'calendar-week'
,
'tag:td'
],
function
(
e
)
{
if
(
!
e
.
isNormalClick
())
{
return
;
}
// If this is a click in the event list or on a link, ignore it. This
// allows users to follow links to events and select text.
if
(
e
.
getNode
(
'calendar-event-list'
)
||
e
.
getNode
(
'tag:a'
))
{
return
;
}
var
info
=
get_info
(
e
);
JX
.
$U
(
info
.
data
.
actionMap
[
info
.
dayID
].
dayURI
).
go
();
});
});
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Jan 19 2025, 12:13 (4 w, 2 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
1124440
Default Alt Text
behavior-month-view.js (2 KB)
Attached To
Mode
rP Phorge
Attached
Detach File
Event Timeline
Log In to Comment