<\/p>/g;
redir_link = redir_link_pattern.exec(response);
redir_link = redir_link ? redir_link[0] : '';
//alert('redir_link: [' + redir_link + ']');
error_message_pattern = /\s*(.+)\s*<\/p>/g;
while (message_part = error_message_pattern.exec(response)) {
//alert('2 message_part[0]: ' + message_part[0]);
if (message_part[0] != redir_link) {
message += message_part[0];
}
}
return message;
}
return false;
},
remove_class_elements: function(parent_element, class_name) {
var class_elements;
if (class_name) {
class_elements = infiniteScroll1.getElementsByClass(class_name, '', parent_element);
//alert('class_elements.length: ' + class_elements.length);
if (class_elements.length > 0) {
for (var i = 0; i < class_elements.length; i++) {
class_elements[i].parentNode.removeChild(class_elements[i]);
}
}
}
},
continuous_scroll: function() {
//alert('continuous_scroll');
if (infiniteScroll1.ajax_container.scrollTop > infiniteScroll1.trigger_scroll_pos || infiniteScroll1.ajax_container.scrollHeight == infiniteScroll1.ajax_container.clientHeight)
{
//alert('start scroll ' + infiniteScrollData1.continuous_scroll_pagination_segment + '|' + infiniteScroll1.continuous_scroll_completed_segment);
if (infiniteScrollData1.continuous_scroll_pagination_segment != infiniteScroll1.continuous_scroll_completed_segment && typeof infiniteScroll1.requested_data[infiniteScrollData1.continuous_scroll_pagination_segment] == 'undefined') {
infiniteScroll1.fetchData(infiniteScrollData1.continuous_scroll_pagination_segment);
infiniteScroll1.requested_data[infiniteScrollData1.continuous_scroll_pagination_segment] = true;
}
}
},
init: function() {
var data_pagination_number;
infiniteScroll1.ajax_container = document.getElementById(infiniteScroll1.ajax_container_id);
//infiniteScroll1.XHR = infiniteScroll1.createRequestObject();
if (!infiniteScroll1.ajax_container) {
alert(infiniteScroll1.no_container_msg);
return;
}
if (infiniteScroll1.next_chunk_link == '') { // there is no "More" link
//alert('continuous_scroll_pagination_segment: ' + infiniteScrollData1.continuous_scroll_pagination_segment);
if (infiniteScrollData1.continuous_scroll_pagination_segment) { // there are data to scroll
infiniteScroll1.max_scroll_pos = infiniteScroll1.ajax_container.scrollHeight - infiniteScroll1.ajax_container.clientHeight;
infiniteScroll1.trigger_scroll_pos = Math.round(infiniteScroll1.max_scroll_pos / 100 * infiniteScroll1.load_next_chunk_at_percent);
//alert('1 max_scroll_pos: ' + infiniteScroll1.max_scroll_pos);
//alert('1 trigger_scroll_pos: ' + infiniteScroll1.trigger_scroll_pos);
if (infiniteScroll1.ajax_container == document.body) {
window.onscroll = infiniteScroll1.continuous_scroll;
}
else {
infiniteScroll1.ajax_container.onscroll = infiniteScroll1.continuous_scroll;
}
infiniteScroll1.continuous_scroll();
}
}
}
}
infiniteScroll1.addEvent(window, 'load', infiniteScroll1.init, false);
//]]>
The Alliance for the Chesapeake Bay’s Project Clean Stream returns on April 2 to kick off its 13th year of helping residents across the watershed become stewards of their local streams and rivers. Begun in Baltimore in 2002 as a small local effort, Project Clean Stream has grown into the largest regional volunteer stream cleanup in the Bay watershed.
...
Project Clean Stream, initiated by the Alliance for the Chesapeake Bay, returns this month for its 12th year of helping residents across the watershed become stewards of their local streams and rivers.
What began as a small, local stream cleanup in Baltimore, Project Clean Stream has grown into the largest cleanup effort in the Chesapeake Bay.
While trash is not the greatest...
Joanna Freeman
March 30, 2015
0 Comments
Working for the Alliance for the Chesapeake Bay the last few months, I have had a chance to experience how local watershed and citizen groups and volunteers work together to respond to a cause like Project Clean Stream.
This April will be the 11th year that the Alliance has coordinated Project Clean Stream at sites throughout the watershed. The project is a unified effort to...
Joanna Freeman
April 06, 2014
0 Comments