forked from rc/aircox
work on schedule; section.as_view()
This commit is contained in:
@ -6,42 +6,53 @@
|
||||
function update_schedule(event) {
|
||||
var target = event.currentTarget;
|
||||
var url = target.getAttribute('href');
|
||||
|
||||
var schedule = target;
|
||||
while(schedule && schedule.className.indexOf('schedule'))
|
||||
schedule = schedule.parentNode;
|
||||
if(!schedule)
|
||||
return false;
|
||||
|
||||
// prevent event
|
||||
event.preventDefault();
|
||||
|
||||
// get schedule
|
||||
while(schedule) {
|
||||
if (schedule.className &&
|
||||
schedule.className.indexOf('section_schedule') != -1)
|
||||
break;
|
||||
schedule = schedule.parentNode;
|
||||
}
|
||||
if(!schedule)
|
||||
return;
|
||||
console.log(schedule.className)
|
||||
|
||||
// xhr
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.onreadystatechange = function() {
|
||||
if(xhr.readyState != 4 || xhr.status != 200 && xhr.status)
|
||||
return;
|
||||
|
||||
var obj = document.createElement('div');
|
||||
obj.innerHTML = xhr.responseText;
|
||||
target.replaceChild(
|
||||
obj.querySelector('.content'),
|
||||
schedule.querySelector('.schedule .content')
|
||||
)
|
||||
target.replaceChild(
|
||||
obj.querySelector('.schedule header'),
|
||||
schedule.querySelector('.schedule header')
|
||||
)
|
||||
// target.querySelector('nav a').href = url
|
||||
}
|
||||
var obj = document.implementation.createHTMLDocument('result');
|
||||
obj.documentElement.innerHTML = xhr.responseText;
|
||||
obj = obj.documentElement;
|
||||
|
||||
xhr.open('GET', url + '?embed=1', true);
|
||||
schedule.querySelector('header').innerHTML =
|
||||
obj.querySelector('header').innerHTML;
|
||||
|
||||
schedule.querySelector('.content').innerHTML =
|
||||
obj.querySelector('.content').innerHTML;
|
||||
}
|
||||
fields = [ {% for field in list.fields %}"fields={{ field }}",{% endfor %} ];
|
||||
fields = fields.join('&');
|
||||
|
||||
xhr.open('GET', url + '?embed=1&' + fields, true);
|
||||
xhr.send();
|
||||
return false;
|
||||
}
|
||||
</script>
|
||||
{% for curr, url in dates_url %}
|
||||
<a href="{{ url }}" onclick="return update_schedule(event);" {% if curr == date %}
|
||||
class="selected"{% endif %}>
|
||||
<a href="{{ prev_week }}" onclick="update_schedule(event); return true;"><</a>
|
||||
{% for curr, url in dates %}
|
||||
<a href="{{ url }}" {% if curr == date %}class="selected" {% endif %}
|
||||
onclick="update_schedule(event); return true;">
|
||||
{{ curr|date:'D. d' }}
|
||||
</a>
|
||||
{% endfor %}
|
||||
<a href="{{ next_week }}" onclick="update_schedule(event); return true;">></a>
|
||||
</header>
|
||||
{% endblock %}
|
||||
|
||||
|
Reference in New Issue
Block a user