Difference between revisions of "Sitemap"

 
(209 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
{{Main2017}}
 
{{Main2017}}
 
<html>
 
<html>
 +
<link rel="stylesheet" type="text/css" href="https://igem.org/wiki/index.php?title=HQ:Sitemap.css&action=raw&ctype=text/css" />
 +
<script src="https://igem.org/wiki/index.php?title=HQ:Sitemap.js&action=raw&ctype=text/javascript"></script>
  
<style>
 
  
.multiple_links a{
+
<script>
color:black;
+
}
+
  
.multiple_links a:hover {
+
var site_name = "2017.igem.org";
color: #72c9b6;
+
 
}
+
</script>
  
</style>
 
  
<div class="column full_width" >
+
<div class="column full_size" >
<h1> Sitemap </h1>
+
<h1>SITEMAP </h1>
 
<p> iGEM is a multifaceted competition with many different components. Our websites have a lot of information, from requirements of the competition to tips on how make fundraising easier. This page is here to help you navigate our site and make sure you have access to all of its content. </p>
 
<p> iGEM is a multifaceted competition with many different components. Our websites have a lot of information, from requirements of the competition to tips on how make fundraising easier. This page is here to help you navigate our site and make sure you have access to all of its content. </p>
 
</div>
 
</div>
  
<div class="column half_size multiple_links">
 
<h2> iGEM 2017 wiki pages </h2>
 
<ul  id="organized_pages">
 
  
</ul>
 
  
</div>
 
  
  
  
<div class="column half_size multiple_links">
 
<h2> Wiki in numbers </h2>
 
  
<table>
+
<!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------->
<tr>
+
<th> Total pages </th> <th> Wiki pages </th> <th> HQ pages </th> <th> Redirect pages </th>  <th> Not sorted </th> <th> Team pages </th>
+
</tr>
+
  
<tr>
 
<td id="total_pages_count"></td>
 
<td id="wiki_pages_count"> </td>
 
<td id="hq_pages_count"></td>
 
<td></td>
 
<td></td>
 
<td></td>
 
</tr>
 
  
  
</table>
 
  
</div>
 
 
 
 
 
<div class="column fourth_size multiple_links" >
 
<h2> HQ pages </h2>
 
<ul id="HQ">
 
</ul>
 
  
 +
<div class="column full_size">
 +
<div class="view_format selected_view" id="list_view"> PAGE LIST </div>
 +
<div class="view_format" id="team_view"> TEAM PAGES </div>
 +
<div class="view_format HQ_info" id="hq_view"> HQ </div>
 
</div>
 
</div>
  
<div class="column fourth_size multiple_links" >
 
<h2> Redirects </h2>
 
<ul id="redirect">
 
</ul>
 
</div>
 
  
  
 
<div class="clear"></div>
 
<div class="clear"></div>
  
<div class="column half_size multiple_links" style="display:none">
 
<h2> All pages </h2>
 
<ul  id="all_pages">
 
  
</ul>
+
<!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------->
  
</div>
 
  
 +
<div class="column full_size multiple_links  view_format_content selected_content" id="list_view_content">
 +
<h2> LIST </h2>
  
<script>
+
<ol  id="organized_pages">
  
$(document).ready(function() {
+
</ol>
  
 +
</div>
  
//load the list of pages from the wiki special pages
+
<!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------->
  
$("#all_pages").load( "https://2017.igem.org/Special:AllPages .mw-allpages-chunk", function() {
 
  
$('ul.mw-allpages-chunk li').each(function () {
 
//sort each page
 
console.log( $(this).text(),  $(this).html() );
 
sort_pages( $(this).text(),  $(this).html() ); 
 
});
 
  
// place total number of pages in each category
 
$("#wiki_pages_count").html( $("#organized_pages li").size() );
 
$("#total_pages_count").html( $("#all_pages li").size() );
 
$("#hq_pages_count").html( $("#HQ li").size() );
 
  
});
+
<div class="view_format_content" id="team_view_content">
 +
<div class = "column full_size">
 +
<h2> TEAMS </h2>     
 +
</div>
  
 +
<div class="column half_size">
 +
<ol id="team_list">
 +
</ol>
 +
</div>
  
  
});
+
<div class="column half_size">
 +
<p class="loading"> Loading all team pages... </p>
 +
</div>
 +
</div>
  
  
  
 +
<!---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------->
  
function sort_pages ( page_name , page_link ) {
 
  
// these variables will be used in some of the functions bellow - they show variations of page_name for #id purposes
+
<div class="HQ_info">
var clean_name = page_name.replace( /\//g , "-");
+
<div class="column full_size view_format_content"  id="hq_view_content">
var no_underscores_name = page_name.replace( /_/g , " ");
+
  
+
<h2> HQ </h2>
if ( is_it_a_special_page ( page_name, page_link ) == false ) {  // check if a page is a redirect
+
<p> This is the view for iGEM HQ </p>
+
  
page_name = page_name.replace(/ /g,"_").replace(/:/g, "_");  // clean string from empty spaces
 
  
  
switch  ( (page_name.match( /\//g ) || []).length  ) { // check how many "tiers" (  / ) the page name has in order to nest it
+
<table>
 +
<tr>
 +
<th> Total pages </th> <th> Wiki pages </th> <th> HQ pages </th> <th> Redirect pages </th> <th> Not sorted </th> <th> Team pages </th>
 +
</tr>
  
case 0:   // this might be a hub or an unassigned page
+
<tr align="center">
append_tier_one ( page_name, no_underscores_name) ;
+
<td id="total_pages_count">   <p class="loading"> ... </p>  </td>
break;
+
<td id="wiki_pages_count"> <p class="loading"> ... </p> </td>
 +
<td id="hq_pages_count">  <p class="loading"> ... </p> </td>
 +
<td id="redirect_pages_count"> <p class="loading"> ... </p> </td>
 +
<td id="not_sorted_pages_count"> <p class="loading"> ... </p></td>
 +
<td id="team_pages_count">  <p class="loading"> ... </p> </td>
 +
</tr>
  
case 1: //this page is likely to have a hub to append to
 
append_tier_two ( page_name, no_underscores_name, clean_name  ); 
 
break;
 
  
case 2: //this page might be a subpage inside a page in a hub list
+
</table>
append_tier_three ( page_name, no_underscores_name, clean_name ); 
+
break;
+
  
case 3: //this page might be a subpage inside a page in a hub list
 
append_to_not_sorted  (page_name );
 
break;
 
}
 
  
}
+
<div class="column half_size">
  
+
<h3> HQ pages </h2>
}
+
  
 +
<ol id="HQ">
 +
</ol>
 +
</div>
  
//Function to check if the page is a redirect ( a non existing page)
+
<div class="column half_size">
function is_it_a_special_page ( page_name, page_link ) {
+
<h3> Redirects </h3>
 +
<ol id="redirect">
 +
</ol>
  
// is it a HQ page or a Dev page ?
 
if( page_name.substring(0, 2 ) == "HQ"  ||  page_name.substring(0, page_name.indexOf("/") ) == "Dev" ) {
 
$("#HQ").append("<li ><a  href='/"+page_name+"'>"+page_name +"</a> </li>");
 
return true;
 
}
 
  
 +
<h3> Not Sorted </h3>
 +
<ol id="not_sorted">
 +
</ol>
  
// is this a page from a team ?
+
</div>
else if ( page_name.substring(0, 4 ) == "Team") {
+
return true;  // page is from a team - we will figure out what to do later
+
}
+
+
// is it a redirect?
+
else if( page_link.indexOf("mw-redirect") >= 0)  {
+
$("#redirect").append("<li >"+ page_link+"</li>" );
+
return true;
+
}
+
  
// this page is not a special case, let's sort it!
+
</div>
else {
+
</div>
return false;
+
}
+
 
+
}
+
 
+
 
+
 
+
function append_to_not_sorted  (page_name) {
+
 
+
$("#not_sorted").append("<li> <a  href='"+page_name+"'>"+page_name +"</a></li>");
+
 
+
}
+
 
+
 
+
function append_tier_one ( page_name, no_underscores_name ) {
+
 
+
$("#organized_pages").append("<li> <a href='"+page_name+"'>"+no_underscores_name+"</a> <ul  id='"+page_name+"' ></ul> </li>");
+
 
+
}
+
 
+
function append_tier_two (page_name, no_underscores_name, clean_name ) {
+
 
+
$("#"+page_name.substring(0, page_name.indexOf("/") ) ).append("<li><a href='"+page_name+"'> "+no_underscores_name.substring( page_name.indexOf("/")+1, page_name.length )+"</a>  <ol id='"+clean_name+"'>  </ol></li>");
+
 
+
}
+
 
+
 
+
+
function append_tier_three (page_name,  no_underscores_name, clean_name ) {
+
 
+
$("#"+clean_name.substring(0,  clean_name.lastIndexOf("-") ) ).append("<li id='"+page_name+"'><a href='"+page_name+"'>"+no_underscores_name.substring( page_name.lastIndexOf("/")+1, page_name.length )+"</a></li>");
+
+
 
+
}
+
 
+
 
+
</script>
+
 
+
 
+
 
+
 
+
 
+
</html>
+

Latest revision as of 15:47, 19 May 2017

MENU

SITEMAP

iGEM is a multifaceted competition with many different components. Our websites have a lot of information, from requirements of the competition to tips on how make fundraising easier. This page is here to help you navigate our site and make sure you have access to all of its content.

PAGE LIST
TEAM PAGES
HQ

TEAMS

Loading all team pages...

HQ

This is the view for iGEM HQ

Total pages Wiki pages HQ pages Redirect pages Not sorted Team pages

...

...

...

...

...

...

HQ pages

Redirects

Not Sorted