Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
Asistencia
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Billy Larru
Asistencia
Commits
1e800f48
Commit
1e800f48
authored
Jun 30, 2018
by
Billy Larru
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
date range picker en policias
parent
5708bae6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
716 additions
and
20 deletions
+716
-20
jquery-ui.multidatespicker.css
src/main/webapp/css/lib/jquery-ui.multidatespicker.css
+13
-0
general.js
src/main/webapp/js/general.js
+22
-1
jquery-ui.multidatespicker.js
src/main/webapp/js/lib/jquery-ui.multidatespicker.js
+499
-0
controlAsistenciaPolicias.js
src/main/webapp/js/pages/controlAsistenciaPolicias.js
+46
-0
controlAsistenciaDocentes.jsp
src/main/webapp/vistas/controlAsistenciaDocentes.jsp
+22
-19
controlAsistenciaPolicias.jsp
src/main/webapp/vistas/controlAsistenciaPolicias.jsp
+114
-0
No files found.
src/main/webapp/css/lib/jquery-ui.multidatespicker.css
0 → 100644
View file @
1e800f48
/* jQuery UI Datepicker moving pixels fix */
table
.ui-datepicker-calendar
{
border-collapse
:
separate
;}
.ui-datepicker-calendar
td
{
border
:
1px
solid
transparent
;}
/* jQuery UI Datepicker hide datepicker helper */
#ui-datepicker-div
{
display
:
none
;}
/* jQuery UI Datepicker emphasis on selected dates */
.ui-datepicker
.ui-datepicker-calendar
.ui-state-highlight
a
{
background
:
#743620
none
;
color
:
white
;
}
\ No newline at end of file
src/main/webapp/js/general.js
View file @
1e800f48
...
...
@@ -230,5 +230,26 @@ function defaultConfigDatePicker() {
}
function
defaultConfigDateRangePicker
()
{
$
(
'.daterange-basic'
).
daterangepicker
({
applyClass
:
'bg-slate-600'
,
cancelClass
:
'btn-default'
,
// showDropdowns: false,
// timePicker: true,
// opens: 'center',
// singleDatePicker: true,
autoApply
:
true
});
}
(
function
(
a
){
a
.
fn
.
validCampo
=
function
(
b
){
a
(
this
).
on
({
keypress
:
function
(
a
){
var
c
=
a
.
which
,
d
=
a
.
keyCode
,
e
=
String
.
fromCharCode
(
c
).
toLowerCase
(),
f
=
b
;
(
-
1
!=
f
.
indexOf
(
e
)
||
9
==
d
||
37
!=
c
&&
37
==
d
||
39
==
d
&&
39
!=
c
||
8
==
d
||
46
==
d
&&
46
!=
c
)
&&
161
!=
c
||
a
.
preventDefault
()}})}})(
jQuery
);
(
function
(
a
)
{
a
.
fn
.
validCampo
=
function
(
b
)
{
a
(
this
).
on
({
keypress
:
function
(
a
)
{
var
c
=
a
.
which
,
d
=
a
.
keyCode
,
e
=
String
.
fromCharCode
(
c
).
toLowerCase
(),
f
=
b
;
(
-
1
!=
f
.
indexOf
(
e
)
||
9
==
d
||
37
!=
c
&&
37
==
d
||
39
==
d
&&
39
!=
c
||
8
==
d
||
46
==
d
&&
46
!=
c
)
&&
161
!=
c
||
a
.
preventDefault
()
}})
}
})(
jQuery
);
src/main/webapp/js/lib/jquery-ui.multidatespicker.js
0 → 100644
View file @
1e800f48
/*
* MultiDatesPicker v1.6.4
* http://multidatespickr.sourceforge.net/
*
* Copyright 2014, Luca Lauretta
* Dual licensed under the MIT or GPL version 2 licenses.
*/
(
function
(
$
){
$
.
extend
(
$
.
ui
,
{
multiDatesPicker
:
{
version
:
"1.6.4"
}
});
$
.
fn
.
multiDatesPicker
=
function
(
method
)
{
var
mdp_arguments
=
arguments
;
var
ret
=
this
;
var
today_date
=
new
Date
();
var
day_zero
=
new
Date
(
0
);
var
mdp_events
=
{};
function
removeDate
(
date
,
type
)
{
if
(
!
type
)
type
=
'picked'
;
date
=
dateConvert
.
call
(
this
,
date
);
for
(
var
i
=
0
;
i
<
this
.
multiDatesPicker
.
dates
[
type
].
length
;
i
++
)
if
(
!
methods
.
compareDates
(
this
.
multiDatesPicker
.
dates
[
type
][
i
],
date
))
return
this
.
multiDatesPicker
.
dates
[
type
].
splice
(
i
,
1
).
pop
();
}
function
removeIndex
(
index
,
type
)
{
if
(
!
type
)
type
=
'picked'
;
return
this
.
multiDatesPicker
.
dates
[
type
].
splice
(
index
,
1
).
pop
();
}
function
addDate
(
date
,
type
,
no_sort
)
{
if
(
!
type
)
type
=
'picked'
;
date
=
dateConvert
.
call
(
this
,
date
);
// @todo: use jQuery UI datepicker method instead
date
.
setHours
(
0
);
date
.
setMinutes
(
0
);
date
.
setSeconds
(
0
);
date
.
setMilliseconds
(
0
);
if
(
methods
.
gotDate
.
call
(
this
,
date
,
type
)
===
false
)
{
this
.
multiDatesPicker
.
dates
[
type
].
push
(
date
);
if
(
!
no_sort
)
this
.
multiDatesPicker
.
dates
[
type
].
sort
(
methods
.
compareDates
);
}
}
function
sortDates
(
type
)
{
if
(
!
type
)
type
=
'picked'
;
this
.
multiDatesPicker
.
dates
[
type
].
sort
(
methods
.
compareDates
);
}
function
dateConvert
(
date
,
desired_type
,
date_format
)
{
if
(
!
desired_type
)
desired_type
=
'object'
;
/*
if(!date_format && (typeof date == 'string')) {
date_format = $(this).datepicker('option', 'dateFormat');
if(!date_format) date_format = $.datepicker._defaults.dateFormat;
}
*/
return
methods
.
dateConvert
.
call
(
this
,
date
,
desired_type
,
date_format
);
}
var
methods
=
{
init
:
function
(
options
)
{
var
$this
=
$
(
this
);
this
.
multiDatesPicker
.
changed
=
false
;
var
mdp_events
=
{
beforeShow
:
function
(
input
,
inst
)
{
this
.
multiDatesPicker
.
changed
=
false
;
if
(
this
.
multiDatesPicker
.
originalBeforeShow
)
this
.
multiDatesPicker
.
originalBeforeShow
.
call
(
this
,
input
,
inst
);
},
onSelect
:
function
(
dateText
,
inst
)
{
var
$this
=
$
(
this
);
this
.
multiDatesPicker
.
changed
=
true
;
if
(
dateText
)
{
$this
.
multiDatesPicker
(
'toggleDate'
,
dateText
);
this
.
multiDatesPicker
.
changed
=
true
;
// @todo: this will be optimized when I'll move methods to the singleton.
}
if
(
this
.
multiDatesPicker
.
mode
==
'normal'
&&
this
.
multiDatesPicker
.
pickableRange
)
{
if
(
this
.
multiDatesPicker
.
dates
.
picked
.
length
>
0
)
{
var
min_date
=
this
.
multiDatesPicker
.
dates
.
picked
[
0
],
max_date
=
new
Date
(
min_date
.
getTime
());
methods
.
sumDays
(
max_date
,
this
.
multiDatesPicker
.
pickableRange
-
1
);
// counts the number of disabled dates in the range
if
(
this
.
multiDatesPicker
.
adjustRangeToDisabled
)
{
var
c_disabled
,
disabled
=
this
.
multiDatesPicker
.
dates
.
disabled
.
slice
(
0
);
do
{
c_disabled
=
0
;
for
(
var
i
=
0
;
i
<
disabled
.
length
;
i
++
)
{
if
(
disabled
[
i
].
getTime
()
<=
max_date
.
getTime
())
{
if
((
min_date
.
getTime
()
<=
disabled
[
i
].
getTime
())
&&
(
disabled
[
i
].
getTime
()
<=
max_date
.
getTime
())
)
{
c_disabled
++
;
}
disabled
.
splice
(
i
,
1
);
i
--
;
}
}
max_date
.
setDate
(
max_date
.
getDate
()
+
c_disabled
);
}
while
(
c_disabled
!=
0
);
}
if
(
this
.
multiDatesPicker
.
maxDate
&&
(
max_date
>
this
.
multiDatesPicker
.
maxDate
))
max_date
=
this
.
multiDatesPicker
.
maxDate
;
$this
.
datepicker
(
"option"
,
"minDate"
,
min_date
)
.
datepicker
(
"option"
,
"maxDate"
,
max_date
);
}
else
{
$this
.
datepicker
(
"option"
,
"minDate"
,
this
.
multiDatesPicker
.
minDate
)
.
datepicker
(
"option"
,
"maxDate"
,
this
.
multiDatesPicker
.
maxDate
);
}
}
if
(
this
.
multiDatesPicker
.
originalOnSelect
&&
dateText
)
this
.
multiDatesPicker
.
originalOnSelect
.
call
(
this
,
dateText
,
inst
);
},
beforeShowDay
:
function
(
date
)
{
var
$this
=
$
(
this
),
gotThisDate
=
$this
.
multiDatesPicker
(
'gotDate'
,
date
)
!==
false
,
isDisabledCalendar
=
$this
.
datepicker
(
'option'
,
'disabled'
),
isDisabledDate
=
$this
.
multiDatesPicker
(
'gotDate'
,
date
,
'disabled'
)
!==
false
,
areAllSelected
=
this
.
multiDatesPicker
.
maxPicks
<=
this
.
multiDatesPicker
.
dates
.
picked
.
length
;
var
bsdReturn
=
[
true
,
''
,
null
];
if
(
this
.
multiDatesPicker
.
originalBeforeShowDay
)
bsdReturn
=
this
.
multiDatesPicker
.
originalBeforeShowDay
.
call
(
this
,
date
);
bsdReturn
[
1
]
=
gotThisDate
?
'ui-state-highlight '
+
bsdReturn
[
1
]
:
bsdReturn
[
1
];
bsdReturn
[
0
]
=
bsdReturn
[
0
]
&&
!
(
isDisabledCalendar
||
isDisabledDate
||
(
areAllSelected
&&
!
bsdReturn
[
1
]));
return
bsdReturn
;
}
};
// value have to be extracted before datepicker is initiated
if
(
$this
.
val
())
var
inputDates
=
$this
.
val
()
if
(
options
)
{
// value have to be extracted before datepicker is initiated
//if(options.altField) var inputDates = $(options.altField).val();
if
(
options
.
separator
)
this
.
multiDatesPicker
.
separator
=
options
.
separator
;
if
(
!
this
.
multiDatesPicker
.
separator
)
this
.
multiDatesPicker
.
separator
=
', '
;
this
.
multiDatesPicker
.
originalBeforeShow
=
options
.
beforeShow
;
this
.
multiDatesPicker
.
originalOnSelect
=
options
.
onSelect
;
this
.
multiDatesPicker
.
originalBeforeShowDay
=
options
.
beforeShowDay
;
this
.
multiDatesPicker
.
originalOnClose
=
options
.
onClose
;
// datepicker init
$this
.
datepicker
(
options
);
this
.
multiDatesPicker
.
minDate
=
$
.
datepicker
.
_determineDate
(
this
,
options
.
minDate
,
null
);
this
.
multiDatesPicker
.
maxDate
=
$
.
datepicker
.
_determineDate
(
this
,
options
.
maxDate
,
null
);
if
(
options
.
addDates
)
methods
.
addDates
.
call
(
this
,
options
.
addDates
);
if
(
options
.
addDisabledDates
)
methods
.
addDates
.
call
(
this
,
options
.
addDisabledDates
,
'disabled'
);
methods
.
setMode
.
call
(
this
,
options
);
}
else
{
$this
.
datepicker
();
}
$this
.
datepicker
(
'option'
,
mdp_events
);
// adds any dates found in the input or alt field
if
(
inputDates
)
$this
.
multiDatesPicker
(
'value'
,
inputDates
);
// generates the new string of added dates
var
inputs_values
=
$this
.
multiDatesPicker
(
'value'
);
// fills the input field back with all the dates in the calendar
$this
.
val
(
inputs_values
);
// Fixes the altField filled with defaultDate by default
var
altFieldOption
=
$this
.
datepicker
(
'option'
,
'altField'
);
if
(
altFieldOption
)
$
(
altFieldOption
).
val
(
inputs_values
);
// Updates the calendar view
$this
.
datepicker
(
'refresh'
);
},
compareDates
:
function
(
date1
,
date2
)
{
date1
=
dateConvert
.
call
(
this
,
date1
);
date2
=
dateConvert
.
call
(
this
,
date2
);
// return > 0 means date1 is later than date2
// return == 0 means date1 is the same day as date2
// return < 0 means date1 is earlier than date2
var
diff
=
date1
.
getFullYear
()
-
date2
.
getFullYear
();
if
(
!
diff
)
{
diff
=
date1
.
getMonth
()
-
date2
.
getMonth
();
if
(
!
diff
)
diff
=
date1
.
getDate
()
-
date2
.
getDate
();
}
return
diff
;
},
sumDays
:
function
(
date
,
n_days
)
{
var
origDateType
=
typeof
date
;
obj_date
=
dateConvert
.
call
(
this
,
date
);
obj_date
.
setDate
(
obj_date
.
getDate
()
+
n_days
);
return
dateConvert
.
call
(
this
,
obj_date
,
origDateType
);
},
dateConvert
:
function
(
date
,
desired_format
,
dateFormat
)
{
var
from_format
=
typeof
date
;
var
$this
=
$
(
this
);
if
(
from_format
==
desired_format
)
{
if
(
from_format
==
'object'
)
{
try
{
date
.
getTime
();
}
catch
(
e
)
{
$
.
error
(
'Received date is in a non supported format!'
);
return
false
;
}
}
return
date
;
}
if
(
typeof
date
==
'undefined'
)
date
=
new
Date
(
0
);
if
(
desired_format
!=
'string'
&&
desired_format
!=
'object'
&&
desired_format
!=
'number'
)
$
.
error
(
'Date format "'
+
desired_format
+
'" not supported!'
);
if
(
!
dateFormat
)
{
// thanks to bibendus83 -> http://sourceforge.net/tracker/index.php?func=detail&aid=3213174&group_id=358205&atid=1495382
var
dp_dateFormat
=
$this
.
datepicker
(
'option'
,
'dateFormat'
);
if
(
dp_dateFormat
)
{
dateFormat
=
dp_dateFormat
;
}
else
{
dateFormat
=
$
.
datepicker
.
_defaults
.
dateFormat
;
}
}
// converts to object as a neutral format
switch
(
from_format
)
{
case
'object'
:
break
;
case
'string'
:
date
=
$
.
datepicker
.
parseDate
(
dateFormat
,
date
);
break
;
case
'number'
:
date
=
new
Date
(
date
);
break
;
default
:
$
.
error
(
'Conversion from "'
+
desired_format
+
'" format not allowed on jQuery.multiDatesPicker'
);
}
// then converts to the desired format
switch
(
desired_format
)
{
case
'object'
:
return
date
;
case
'string'
:
return
$
.
datepicker
.
formatDate
(
dateFormat
,
date
);
case
'number'
:
return
date
.
getTime
();
default
:
$
.
error
(
'Conversion to "'
+
desired_format
+
'" format not allowed on jQuery.multiDatesPicker'
);
}
return
false
;
},
gotDate
:
function
(
date
,
type
)
{
if
(
!
type
)
type
=
'picked'
;
for
(
var
i
=
0
;
i
<
this
.
multiDatesPicker
.
dates
[
type
].
length
;
i
++
)
{
if
(
methods
.
compareDates
.
call
(
this
,
this
.
multiDatesPicker
.
dates
[
type
][
i
],
date
)
===
0
)
{
return
i
;
}
}
return
false
;
},
value
:
function
(
value
)
{
if
(
value
&&
typeof
value
==
'string'
)
{
methods
.
addDates
.
call
(
this
,
value
.
split
(
this
.
multiDatesPicker
.
separator
));
}
else
{
var
dates
=
methods
.
getDates
.
call
(
this
,
'string'
);
return
dates
.
length
?
dates
.
join
(
this
.
multiDatesPicker
.
separator
)
:
""
;
}
},
getDates
:
function
(
format
,
type
)
{
if
(
!
format
)
format
=
'string'
;
if
(
!
type
)
type
=
'picked'
;
switch
(
format
)
{
case
'object'
:
return
this
.
multiDatesPicker
.
dates
[
type
];
case
'string'
:
case
'number'
:
var
o_dates
=
new
Array
();
for
(
var
i
in
this
.
multiDatesPicker
.
dates
[
type
])
o_dates
.
push
(
dateConvert
.
call
(
this
,
this
.
multiDatesPicker
.
dates
[
type
][
i
],
format
)
);
return
o_dates
;
default
:
$
.
error
(
'Format "'
+
format
+
'" not supported!'
);
}
},
addDates
:
function
(
dates
,
type
)
{
if
(
dates
.
length
>
0
)
{
if
(
!
type
)
type
=
'picked'
;
switch
(
typeof
dates
)
{
case
'object'
:
case
'array'
:
if
(
dates
.
length
)
{
for
(
var
i
=
0
;
i
<
dates
.
length
;
i
++
)
addDate
.
call
(
this
,
dates
[
i
],
type
,
true
);
sortDates
.
call
(
this
,
type
);
break
;
}
// else does the same as 'string'
case
'string'
:
case
'number'
:
addDate
.
call
(
this
,
dates
,
type
);
break
;
default
:
$
.
error
(
'Date format "'
+
typeof
dates
+
'" not allowed on jQuery.multiDatesPicker'
);
}
//$(this).datepicker('refresh');
}
else
{
$
.
error
(
'Empty array of dates received.'
);
}
},
removeDates
:
function
(
dates
,
type
)
{
if
(
!
type
)
type
=
'picked'
;
var
removed
=
[];
if
(
Object
.
prototype
.
toString
.
call
(
dates
)
===
'[object Array]'
)
{
for
(
var
i
in
dates
.
sort
(
function
(
a
,
b
){
return
b
-
a
}))
{
removed
.
push
(
removeDate
.
call
(
this
,
dates
[
i
],
type
));
}
}
else
{
removed
.
push
(
removeDate
.
call
(
this
,
dates
,
type
));
}
return
removed
;
},
removeIndexes
:
function
(
indexes
,
type
)
{
if
(
!
type
)
type
=
'picked'
;
var
removed
=
[];
if
(
Object
.
prototype
.
toString
.
call
(
indexes
)
===
'[object Array]'
)
{
for
(
var
i
in
indexes
.
sort
(
function
(
a
,
b
){
return
b
-
a
}))
{
removed
.
push
(
removeIndex
.
call
(
this
,
indexes
[
i
],
type
));
}
}
else
{
removed
.
push
(
removeIndex
.
call
(
this
,
indexes
,
type
));
}
return
removed
;
},
resetDates
:
function
(
type
)
{
if
(
!
type
)
type
=
'picked'
;
this
.
multiDatesPicker
.
dates
[
type
]
=
[];
},
toggleDate
:
function
(
date
,
type
)
{
if
(
!
type
)
type
=
'picked'
;
switch
(
this
.
multiDatesPicker
.
mode
)
{
case
'daysRange'
:
this
.
multiDatesPicker
.
dates
[
type
]
=
[];
// deletes all picked/disabled dates
var
end
=
this
.
multiDatesPicker
.
autoselectRange
[
1
];
var
begin
=
this
.
multiDatesPicker
.
autoselectRange
[
0
];
if
(
end
<
begin
)
{
// switch
end
=
this
.
multiDatesPicker
.
autoselectRange
[
0
];
begin
=
this
.
multiDatesPicker
.
autoselectRange
[
1
];
}
for
(
var
i
=
begin
;
i
<
end
;
i
++
)
methods
.
addDates
.
call
(
this
,
methods
.
sumDays
.
call
(
this
,
date
,
i
),
type
);
break
;
default
:
if
(
methods
.
gotDate
.
call
(
this
,
date
)
===
false
)
// adds dates
methods
.
addDates
.
call
(
this
,
date
,
type
);
else
// removes dates
methods
.
removeDates
.
call
(
this
,
date
,
type
);
break
;
}
},
setMode
:
function
(
options
)
{
var
$this
=
$
(
this
);
if
(
options
.
mode
)
this
.
multiDatesPicker
.
mode
=
options
.
mode
;
switch
(
this
.
multiDatesPicker
.
mode
)
{
case
'normal'
:
for
(
option
in
options
)
switch
(
option
)
{
case
'maxPicks'
:
case
'minPicks'
:
case
'pickableRange'
:
case
'adjustRangeToDisabled'
:
this
.
multiDatesPicker
[
option
]
=
options
[
option
];
break
;
//default: $.error('Option ' + option + ' ignored for mode "'.options.mode.'".');
}
break
;
case
'daysRange'
:
case
'weeksRange'
:
var
mandatory
=
1
;
for
(
option
in
options
)
switch
(
option
)
{
case
'autoselectRange'
:
mandatory
--
;
case
'pickableRange'
:
case
'adjustRangeToDisabled'
:
this
.
multiDatesPicker
[
option
]
=
options
[
option
];
break
;
//default: $.error('Option ' + option + ' does not exist for setMode on jQuery.multiDatesPicker');
}
if
(
mandatory
>
0
)
$
.
error
(
'Some mandatory options not specified!'
);
break
;
}
/*
if(options.pickableRange) {
$this.datepicker("option", "maxDate", options.pickableRange);
$this.datepicker("option", "minDate", this.multiDatesPicker.minDate);
}
*/
if
(
mdp_events
.
onSelect
)
mdp_events
.
onSelect
();
},
destroy
:
function
(){
this
.
multiDatesPicker
=
null
;
$
(
this
).
datepicker
(
'destroy'
);
}
};
this
.
each
(
function
()
{
var
$this
=
$
(
this
);
if
(
!
this
.
multiDatesPicker
)
{
this
.
multiDatesPicker
=
{
dates
:
{
picked
:
[],
disabled
:
[]
},
mode
:
'normal'
,
adjustRangeToDisabled
:
true
};
}
if
(
methods
[
method
])
{
var
exec_result
=
methods
[
method
].
apply
(
this
,
Array
.
prototype
.
slice
.
call
(
mdp_arguments
,
1
));
switch
(
method
)
{
case
'removeDates'
:
case
'removeIndexes'
:
case
'resetDates'
:
case
'toggleDate'
:
case
'addDates'
:
var
altField
=
$this
.
datepicker
(
'option'
,
'altField'
);
// @todo: should use altFormat for altField
var
dates_string
=
methods
.
value
.
call
(
this
);
if
(
altField
!==
undefined
&&
altField
!=
""
)
{
$
(
altField
).
val
(
dates_string
);
}
$this
.
val
(
dates_string
);
$
.
datepicker
.
_refreshDatepicker
(
this
);
}
switch
(
method
)
{
case
'removeDates'
:
case
'getDates'
:
case
'gotDate'
:
case
'sumDays'
:
case
'compareDates'
:
case
'dateConvert'
:
case
'value'
:
ret
=
exec_result
;
}
return
exec_result
;
}
else
if
(
typeof
method
===
'object'
||
!
method
)
{
return
methods
.
init
.
apply
(
this
,
mdp_arguments
);
}
else
{
$
.
error
(
'Method '
+
method
+
' does not exist on jQuery.multiDatesPicker'
);
}
return
false
;
});
return
ret
;
};
var
PROP_NAME
=
'multiDatesPicker'
;
var
dpuuid
=
new
Date
().
getTime
();
var
instActive
;
$
.
multiDatesPicker
=
{
version
:
false
};
//$.multiDatesPicker = new MultiDatesPicker(); // singleton instance
$
.
multiDatesPicker
.
initialized
=
false
;
$
.
multiDatesPicker
.
uuid
=
new
Date
().
getTime
();
$
.
multiDatesPicker
.
version
=
$
.
ui
.
multiDatesPicker
.
version
;
// allows MDP not to hide everytime a date is picked
$
.
multiDatesPicker
.
_hideDatepicker
=
$
.
datepicker
.
_hideDatepicker
;
$
.
datepicker
.
_hideDatepicker
=
function
(){
var
target
=
this
.
_curInst
.
input
[
0
];
var
mdp
=
target
.
multiDatesPicker
;
if
(
!
mdp
||
(
this
.
_curInst
.
inline
===
false
&&
!
mdp
.
changed
))
{
return
$
.
multiDatesPicker
.
_hideDatepicker
.
apply
(
this
,
arguments
);
}
else
{
mdp
.
changed
=
false
;
$
.
datepicker
.
_refreshDatepicker
(
target
);
return
;
}
};
// Workaround for #4055
// Add another global to avoid noConflict issues with inline event handlers
window
[
'DP_jQuery_'
+
dpuuid
]
=
$
;
})(
jQuery
);
\ No newline at end of file
src/main/webapp/js/pages/controlAsistenciaPolicias.js
0 → 100644
View file @
1e800f48
$
().
ready
(
function
()
{
$
(
'.selectpicker'
).
selectpicker
({
style
:
'btn-info'
,
size
:
4
});
$
(
'.select-search'
).
select2
();
$
(
".btn.dropdown-toggle.bs-placeholder"
).
removeClass
(
"btn-info"
);
$
(
".btn.dropdown-toggle.bs-placeholder"
).
css
({
border
:
"1px solid #ddd"
,
backgroundColor
:
"#fff"
});
$
(
"#dpFechaInicio"
).
datepicker
({
minDate
:
new
Date
(
2000
,
1
-
1
,
1
),
maxDate
:
new
Date
(),
dateFormat
:
'dd/mm/yy'
,
defaultDate
:
new
Date
(),
changeMonth
:
true
,
changeYear
:
true
,
yearRange
:
'-18:+0'
,
onSelect
:
function
()
{
// $(this).valid();
}
});
$
(
"#dpFechaInicio"
).
datepicker
(
'setDate'
,
'now'
);
$
(
"#dpFechaFin"
).
datepicker
({
minDate
:
new
Date
(
2000
,
1
-
1
,
1
),
maxDate
:
new
Date
(),
dateFormat
:
'dd/mm/yy'
,
defaultDate
:
new
Date
(),
changeMonth
:
true
,
changeYear
:
true
,
yearRange
:
'-18:+0'
,
onSelect
:
function
()
{
// $(this).valid();
}
});
$
(
"#dpFechaFin"
).
datepicker
(
'setDate'
,
'now'
);
defaultConfigDatePicker
();
defaultConfigDateRangePicker
();
});
\ No newline at end of file
src/main/webapp/vistas/controlAsistenciaDocentes.jsp
View file @
1e800f48
...
...
@@ -22,24 +22,6 @@
<form
id=
"frmAsistenciaDocentes"
onsubmit=
"return false;"
autocomplete=
"off"
>
<div
class=
"panel-body"
>
<div
class=
"row"
>
<div
class=
"col-md-6 form-group"
>
<label>
Fecha Inicio
</label>
<div
class=
"input-group"
>
<span
class=
"input-group-addon"
><i
class=
"icon-calendar"
></i></span>
<input
type=
"text"
class=
"form-control"
id=
"dpFechaInicio"
name=
"dpFechaInicio"
placeholder=
"Fecha inicio …"
>
</div>
</div>
<div
class=
"col-md-6 form-group"
>
<label>
Fecha Fin
</label>
<div
class=
"input-group"
>
<span
class=
"input-group-addon"
><i
class=
"icon-calendar"
></i></span>
<input
type=
"text"
class=
"form-control"
id=
"dpFechaFin"
name=
"dpFechaFin"
placeholder=
"Fecha fin …"
>
</div>
</div>
</div>
<div
class=
"row"
>
<div
class=
"col-md-3 form-group"
>
<label>
Busqueda por
</label>
<select
class=
"form-control"
id=
"cboCriterio"
>
...
...
@@ -63,6 +45,26 @@
</div>
<div
class=
"row"
>
<div
class=
"col-md-6 form-group"
>
<label>
Fecha Inicio
</label>
<div
class=
"input-group"
>
<span
class=
"input-group-addon"
><i
class=
"icon-calendar"
></i></span>
<input
type=
"text"
class=
"form-control"
id=
"dpFechaInicio"
name=
"dpFechaInicio"
placeholder=
"Fecha inicio …"
>
</div>
</div>
<div
class=
"col-md-6 form-group"
>
<label>
Fecha Fin
</label>
<div
class=
"input-group"
>
<span
class=
"input-group-addon"
><i
class=
"icon-calendar"
></i></span>
<input
type=
"text"
class=
"form-control"
id=
"dpFechaFin"
name=
"dpFechaFin"
placeholder=
"Fecha fin …"
>
</div>
</div>
</div>
<div
class=
"row"
>
<div
class=
"col-md-10 form-group"
>
<label>
Estado
</label>
<select
class=
"selectpicker form-control"
name=
"cboSedes"
id=
"cboSedes"
multiple
>
...
...
@@ -256,7 +258,8 @@
<!--js de la pagina-->
<script
type=
"text/javascript"
src=
"https://cdn.datatables.net/1.10.16/js/jquery.dataTables.min.js"
></script>
<script
type=
"text/javascript"
src=
"https://cdn.datatables.net/1.10.16/js/dataTables.bootstrap.min.js"
></script>
<script
src=
"../js/lib/bootstrap-select/bootstrap-select.min.js"
type=
"text/javascript"
></script>
<!--<script src="../js/lib/bootstrap-select/bootstrap-select.min.js" type="text/javascript"></script>-->
<script
type=
"text/javascript"
src=
"assets/js/plugins/pickers/daterangepicker.js"
></script>
<script
type=
"text/javascript"
src=
"../plantilla/assets/js/core/libraries/jquery_ui/widgets.min.js"
></script>
<script
src=
"../js/pages/controlAsistenciaDocentes.js"
type=
"text/javascript"
></script>
<!--js-->
...
...
src/main/webapp/vistas/controlAsistenciaPolicias.jsp
0 → 100644
View file @
1e800f48
<
%@
include
file=
"templates/validar.jsp"
%
>
<
%@
page
contentType=
"text/html"
pageEncoding=
"UTF-8"
%
>
<!DOCTYPE html>
<html>
<head>
<
%@
include
file=
"templates/header.jsp"
%
>
<!--template-core-->
<!--css de la pagina-->
<!--css-->
</head>
<body>
<
%@
include
file=
"templates/header-body.jsp"
%
>
<!-- content -->
<div
class=
"col-md-12"
>
<div
class=
"panel panel-primary"
>
<div
class=
"panel-heading"
>
<h5
class=
"panel-title"
>
Creación y Asignación de Roles
</h5>
</div>
<form
id=
"frmAsistenciaDocentes"
onsubmit=
"return false;"
autocomplete=
"off"
>
<div
class=
"panel-body"
>
<div
class=
"row"
>
<div
class=
"col-md-4 form-group"
>
<label>
Policia
</label>
<select
class=
"select-search form-control"
>
<option>
RAMIREZ MORALES ROLANDO
</option>
<option>
GUTIERREZ MEDINA JOSE ROSA
</option>
<option>
SALOME LAZO REGULO RIGOBERTO
</option>
<option>
DEZA CORREA OSCAR MIGUEL
</option>
<option>
CHAVEZ LEON CLARA MARIA
</option>
</optgroup>
</select>
</div>
<div
class=
"col-md-4 form-group"
>
<label>
Horario
</label>
<select
class=
"form-control"
id=
"cboCriterio"
>
<option>
[SELECCIONE]
</option>
<option>
REGULAR
</option>
<option>
AMANECIDA 12H
</option>
<option>
AMANECIDA 24H
</option>
</select>
</div>
</div>
<div
class=
"row"
>
<div
class=
"col-md-2 form-group"
>
<label>
Rango de fechas:
</label>
<div
class=
"input-group"
>
<span
class=
"input-group-addon"
><i
class=
"icon-calendar22"
></i></span>
<input
type=
"text"
class=
"form-control daterange-basic"
value=
"06/01/2018 - 06/30/2018"
>
</div>
</div>
<div
class=
"col-md-2 form-group"
>
<label>
Tipo
</label>
<select
class=
"form-control"
id=
"cboCriterio"
>
<option>
[SELECCIONE]
</option>
<option>
IMPAR
</option>
<option>
PAR
</option>
<option>
DIARIO
</option>
<option>
PERSONALIZADO
</option>
</select>
</div>
</div>
</div>
<div
class=
"panel-footer"
>
<div
class=
"text-center"
>
<button
class=
"btn btn-primary"
id=
"btnBuscar"
><i
class=
"fa fa-search"
></i>
Buscar
</button>
<button
class=
"btn btn-warning"
id=
"btnLimpiar"
><i
class=
"fa fa-eraser"
></i>
Limpiar
</button>
<button
type=
"button"
class=
"btn btn-default btn-sm"
data-toggle=
"modal"
data-target=
"#modal_default"
>
Launch
<i
class=
"icon-play3 position-right"
></i></button>
</div>
</div>
</form>
</div>
</div>
<!-- / content -->
<
%@
include
file=
"templates/footer-body.jsp"
%
>
<!--js de la pagina-->
<script
type=
"text/javascript"
src=
"../plantilla/assets/js/core/libraries/jquery_ui/interactions.min.js"
></script>
<script
type=
"text/javascript"
src=
"../plantilla/assets/js/core/libraries/jquery_ui/widgets.min.js"
></script>
<script
src=
"../js/lib/bootstrap-select/bootstrap-select.min.js"
type=
"text/javascript"
></script>
<script
type=
"text/javascript"
src=
"../plantilla/assets/js/plugins/forms/selects/select2.min.js"
></script>
<!--<script src="../js/lib/jquery-ui.multidatespicker.js" type="text/javascript"></script>-->
<script
type=
"text/javascript"
src=
"../plantilla/assets/js/plugins/ui/moment/moment.min.js"
></script>
<script
type=
"text/javascript"
src=
"../plantilla/assets/js/plugins/pickers/daterangepicker.js"
></script>
<script
src=
"../js/pages/controlAsistenciaPolicias.js"
type=
"text/javascript"
></script>
<!--js-->
</body>
</html>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment