Skip to content

Instantly share code, notes, and snippets.

@codecowboy
Created September 7, 2011 14:36
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save codecowboy/1200738 to your computer and use it in GitHub Desktop.
Save codecowboy/1200738 to your computer and use it in GitHub Desktop.
daysBetween
<script type="text/javascript" src="{{ asset('js/admin/util.js') }}"></script>
<script type="text/javascript">
var GymloopAdmin = function() {
var today = new Date(),
userTargets = [], //contains total target sessions & target sessions to date per programme per user
count = parseInt({{ users | length }},10);
var totalTargetSessions = function(startDate, endDate, weeklyTarget) {
var totalDays = daysBetween(jsDateFromMySQLDate(startDate),jsDateFromMySQLDate(endDate));
var weeks = Math.round(totalDays / 7);
return weeks * parseInt(weeklyTarget,10);
}
var targetSessionsToDate = function (startDate,today, weeklyTarget) {
var daysElapsed = daysBetween(jsDateFromMySQLDate(startDate),today);
var dayNoOfWeek = today.getDay();
return (Math.round(daysElapsed/7) * weeklyTarget) + Math.round((dayNoOfWeek / 7)) * weeklyTarget;
}
var compareDateToToday = function(date, today) {
//if the date is less than today, return a negative integer of the days between
if(+date < +today) {
var daysBetween = daysBetween(date,today);
return daysBetween;
}
}
//start twig loop
{% for user in users %}
var startDate = '{{user.programmes[0].startDate | date('Y-m-d H:i:s')}}';
var weeklyTarget = '{{user.programmes[0].weeklyTarget }}';
var endDate = '{{user.programmes[0].endDate | date('Y-m-d H:i:s')}}';
userTargets['{{user.id}}'] = [totalTargetSessions(startDate, endDate, weeklyTarget),
targetSessionsToDate(startDate, today, weeklyTarget)];
{% endfor%} //end twig loop
/*RETURN GymloopAdmin OBJECT */
return {
today: today,
userTargets: userTargets,
compare: compareDateToToday
}
}();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment