Team:Tec-Monterrey/safetypage
From 2011.igem.org
(Difference between revisions)
(58 intermediate revisions not shown) | |||
Line 1: | Line 1: | ||
- | <html xmlns="http://www.w3.org/1999/xhtml"> | + | <html xmlns="http://www.w3.org/1999/xhtml"><head> |
- | <head> | + | <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
- | <meta http-equiv="Content-Type" content="text/html; charset=utf-8" | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
+ | <title>wiki</title> | ||
+ | <style type="text/css"> | ||
+ | <!-- | ||
+ | #top-section { | ||
+ | height: 100px; | ||
+ | border: none; | ||
+ | height:20px | ||
+ | } | ||
- | + | #p-logo { | |
+ | position: absolute; | ||
+ | display: none; | ||
+ | |||
+ | } | ||
+ | #footer-box { | ||
+ | display:none; | ||
+ | } | ||
- | |||
- | + | #catlinks { | |
+ | display:none; | ||
+ | } | ||
- | + | #search-controls { | |
- | { | + | display: none; |
- | + | } | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | #menubar { background: none repeat transparent; } | |
- | + | ||
- | |||
- | + | #menubar ul li a { color: white; } | |
- | } | + | |
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | + | .right-menu li a { | |
- | { | + | color: black; |
- | + | background: none repeat transparent; | |
- | + | } | |
- | + | ||
- | } | + | |
- | + | #content { | |
- | { | + | background: none repeat scroll 0 0 transparent; |
- | + | border-left: 0 solid; | |
- | + | border-right: 0 solid; | |
- | + | } | |
- | }; | + | #content{ |
+ | width: 80%; | ||
+ | } | ||
- | + | #headover ul{ | |
- | { | + | list-style: none; |
- | + | display: none; | |
- | + | position: absolute; | |
- | + | top: 1.2em; | |
- | } | + | left: 0.2em; |
+ | } | ||
- | + | .firstHeading { | |
- | { | + | display: none;} |
- | + | ||
- | + | ||
- | } | + | |
- | + | body { | |
- | + | font: 12px Tahoma, Geneva, sans-serif; | |
- | + | background-image: url(https://static.igem.org/mediawiki/2011/4/43/Lefondoleposter.png); | |
- | + | background-repeat:no-repeat; | |
- | + | background-size: 100%; | |
- | + | margin: 0; | |
- | + | padding: 0; | |
- | + | margin-left: 10%; | |
- | + | margin-right: 10%; | |
- | + | color: #FFFFF; | |
- | } | + | } |
- | + | /* ~~ Element/tag selectors ~~ */ | |
- | { | + | ul, ol, dl { |
- | + | padding: 0; | |
- | + | margin: 0; | |
- | }; | + | } |
+ | h1, h2, h3, h4, h5, h6, p { | ||
+ | margin-top: 0; | ||
+ | padding-right: 10px; | ||
+ | padding-left: 10px; | ||
+ | } | ||
+ | a img { | ||
+ | border: none; | ||
+ | } | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | + | a:link { | |
- | { | + | |
- | + | color: #F90; | |
- | + | } | |
- | + | a:visited { | |
- | + | color: #c02355; | |
- | + | text-decoration: underline; | |
- | + | } | |
- | + | a:hover, a:active, a:focus { | |
- | + | text-decoration: none; | |
- | + | } | |
- | + | ||
- | |||
- | |||
- | |||
- | + | .container { | |
- | { | + | width: 100%; |
- | + | max-width: 1260px; | |
- | + | min-width: 780px; | |
- | + | overflow: hidden; | |
- | + | color:#FFF; | |
- | + | } | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | |||
- | |||
- | |||
- | + | .sidebar1 { | |
- | { | + | float: left; |
- | + | width: 15%; | |
- | + | padding-bottom: 10px; | |
- | + | background-color:#04191d; | |
- | + | -moz-border-radius: 8px; | |
+ | -webkit-border-radius: 8px; | ||
- | + | } | |
+ | .content { | ||
+ | |||
+ | padding: none; | ||
+ | width: 80%; | ||
+ | float: left; | ||
+ | |||
+ | } | ||
- | |||
- | |||
- | + | .content ul, .content ol { | |
- | { | + | padding: 0 15px 15px 40px; |
- | + | } | |
- | + | ||
- | + | ||
- | } | + | |
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | + | ul.nav { | |
- | + | list-style: none; | |
+ | border-top:none; | ||
+ | margin-bottom: 15px; | ||
- | + | } | |
- | { | + | ul.nav li { |
- | + | border-bottom: 0px solid #04191d; | |
- | + | ||
- | + | ||
- | |||
- | |||
- | |||
- | |||
- | + | } | |
- | } | + | ul.nav a, ul.nav a:visited { |
- | + | padding: 5px 5px 5px 15px; | |
- | + | display: block; | |
- | + | text-decoration: none; | |
- | + | color:#FFF; | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | } | |
- | + | ul.nav a:hover, ul.nav a:active, ul.nav a:focus { | |
+ | background: #339dff; /*float amarillo*/ | ||
+ | color: #FFF; | ||
+ | } | ||
- | + | .frame { | |
- | + | font:12px arial; | |
- | + | width:700; | |
- | + | height:350; | |
- | + | max-height: 350px; | |
- | + | border:none; | |
- | + | overflow:auto; | |
- | + | border:0px solid black; | |
- | + | padding:5; | |
- | + | } | |
- | + | .fltrt { | |
- | + | float: right; | |
- | + | margin-left: 8px; | |
- | + | } | |
+ | .fltlft { | ||
+ | float: left; | ||
+ | margin-right: 8px; | ||
+ | } | ||
+ | .clearfloat { | ||
+ | clear:both; | ||
+ | height:0; | ||
+ | font-size: 1px; | ||
+ | line-height: 0px; | ||
+ | } | ||
- | + | /* panel */ | |
- | + | .panel, .panelcollapsed | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
{ | { | ||
- | + | margin: 3px; | |
- | + | width: auto; | |
- | + | -moz-border-radius: 4px; | |
- | + | -webkit-border-radius: 4px; | |
- | + | border-top-width: 10px; | |
- | + | border-right-width: 0px; | |
- | + | border-bottom-width: 10px; | |
- | + | border-left-width: 3px; | |
- | + | padding-bottom: 5px; | |
+ | color: #FFF; | ||
+ | } | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | + | table { | |
- | { | + | background: none repeat scroll 0 0 transparent} |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | |||
- | |||
- | + | /* panel heading */ | |
+ | .panel h2, .panelcollapsed h2 | ||
{ | { | ||
- | + | color: #FFF; | |
- | + | font-weight: normal; | |
+ | margin: 0px; | ||
+ | padding: 0px; | ||
+ | -moz-border-radius: 3px; | ||
+ | -webkit-border-radius: 3px; | ||
+ | border-bottom: 0px solid #04191d; | ||
- | + | } | |
- | + | ||
- | + | ||
- | } | + | |
- | + | /* panel heading on rollover */ | |
- | { | + | .panel h2:hover, .panelcollapsed h2:hover { |
- | + | background-color: #339dff; | |
- | } | + | color: #FFF; |
+ | } | ||
- | + | /* heading of a collapsed panel */ | |
+ | .panelcollapsed h2 | ||
{ | { | ||
- | + | background-image: url(arrow-dn.gif); | |
- | + | background-repeat: no-repeat; | |
- | + | background-position: 280px; | |
- | + | } | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | } | + | |
- | + | /* panel content - do not set borders or paddings */ | |
+ | .panelcontent | ||
{ | { | ||
- | + | overflow: hidden; | |
- | + | font-size: 14px; | |
- | } | + | } |
- | // | + | /* collapsed panel content */ |
+ | .panelcollapsed .panelcontent { display: none; } | ||
- | + | --> | |
- | + | </style><!--[if lte IE 7]> | |
- | + | <style> | |
- | + | .content { margin-right: -1px; } | |
+ | ul.nav a { zoom: 1; } | ||
+ | </style> | ||
+ | <![endif]--> | ||
- | + | <script type="text/javascript"> | |
- | + | <!-- | |
- | + | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | + | i = 0 | |
+ | var speed = 10 | ||
- | + | function scrollDown() { | |
+ | i = i + speed | ||
+ | var div = document.getElementById("frame1") | ||
+ | div.scrollTop = i | ||
+ | if (i > div.scrollHeight - 300) {i = 350} | ||
+ | t1=setTimeout("scrollDown()",100) | ||
+ | } | ||
+ | function scrollUp() { | ||
+ | i = i - speed | ||
+ | var div = document.getElementById("frame1") | ||
+ | div.scrollTop = i | ||
+ | if (i < 0) {i = 0} | ||
+ | t1=setTimeout("scrollUp()",100) | ||
+ | } | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | + | // ----------------------------------------------------------------------------------------------- | |
- | + | // PANELS | |
- | + | var PANEL_NORMAL_CLASS = "panel"; | |
- | + | var PANEL_COLLAPSED_CLASS = "panelcollapsed"; | |
- | + | var PANEL_HEADING_TAG = "h2"; | |
- | + | var PANEL_CONTENT_CLASS = "panelcontent"; | |
+ | var PANEL_COOKIE_NAME = "panels"; | ||
+ | var PANEL_ANIMATION_DELAY = 20; /*ms*/ | ||
+ | var PANEL_ANIMATION_STEPS = 10; | ||
- | + | function setUpPanels() | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
{ | { | ||
- | + | loadSettings(); | |
- | + | ||
- | + | // get all headings | |
- | + | var headingTags = document.getElementsByTagName(PANEL_HEADING_TAG); | |
- | + | ||
- | + | // go through all tags | |
- | + | for (var i=0; i<headingTags.length; i++) | |
- | + | ||
{ | { | ||
- | + | var el = headingTags[i]; | |
+ | |||
+ | // make sure it's the heading inside a panel | ||
+ | if ( el.parentNode.className != PANEL_COLLAPSED_CLASS) | ||
+ | if(el.parentNode.className != PANEL_NORMAL_CLASS) | ||
+ | continue; | ||
+ | |||
- | // | + | // get the text value of the tag |
- | + | var name = el.firstChild.nodeValue; | |
- | + | ||
+ | // look for the name in loaded settings, apply the normal/collapsed class | ||
+ | if (panelsStatus[name] == "false") | ||
+ | el.parentNode.className = PANEL_COLLAPSED_CLASS; | ||
+ | else | ||
+ | if (panelsStatus[name] == "true") | ||
+ | el.parentNode.className = PANEL_NORMAL_CLASS; | ||
+ | else | ||
+ | { | ||
+ | // if no saved setting, see the initial setting | ||
+ | panelsStatus[name] = (el.parentNode.className == PANEL_NORMAL_CLASS) ? "true" : "false"; | ||
+ | } | ||
+ | |||
+ | // add the click behavor to headings | ||
+ | el.onclick = function() | ||
+ | { | ||
+ | var target = this.parentNode; | ||
+ | var name = this.firstChild.nodeValue; | ||
+ | var collapsed = (target.className == PANEL_COLLAPSED_CLASS); | ||
+ | saveSettings(name, collapsed?"true":"false"); | ||
+ | animateTogglePanel(target, collapsed); | ||
+ | }; | ||
} | } | ||
+ | } | ||
- | + | /** | |
- | + | * Start the expand/collapse animation of the panel | |
- | + | * @param panel reference to the panel div | |
- | + | */ | |
+ | function animateTogglePanel(panel, expanding) | ||
{ | { | ||
- | var | + | // find the .panelcontent div |
- | var | + | var elements = panel.getElementsByTagName("div"); |
- | + | var panelContent = null; | |
- | + | for (var i=0; i<elements.length; i++) | |
{ | { | ||
- | if ( | + | if (elements[i].className == PANEL_CONTENT_CLASS) |
- | + | { | |
- | + | panelContent = elements[i]; | |
- | + | break; | |
- | + | } | |
- | + | ||
- | + | ||
} | } | ||
+ | |||
+ | // make sure the content is visible before getting its height | ||
+ | panelContent.style.display = "block"; | ||
+ | |||
+ | // get the height of the content | ||
+ | var contentHeight = panelContent.offsetHeight; | ||
+ | |||
+ | // if panel is collapsed and expanding, we must start with 0 height | ||
+ | if (expanding) | ||
+ | panelContent.style.height = "0px"; | ||
+ | |||
+ | var stepHeight = contentHeight / PANEL_ANIMATION_STEPS; | ||
+ | var direction = (!expanding ? -1 : 1); | ||
+ | |||
+ | if (direction > 0) | ||
+ | collapseAll(); | ||
+ | setTimeout(function(){animateStep(panelContent,1,stepHeight,direction)}, PANEL_ANIMATION_DELAY); | ||
+ | } | ||
- | + | /** | |
- | + | * Change the height of the target | |
- | + | * @param panelContent reference to the panel content to change height | |
- | + | * @param iteration current iteration; animation will be stopped when iteration reaches PANEL_ANIMATION_STEPS | |
- | + | * @param stepHeight height increment to be added/substracted in one step | |
- | + | * @param direction 1 for expanding, -1 for collapsing | |
- | + | */ | |
- | + | function animateStep(panelContent, iteration, stepHeight, direction) | |
- | + | ||
{ | { | ||
- | + | if (iteration<PANEL_ANIMATION_STEPS) | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | if ( | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
{ | { | ||
- | + | panelContent.style.height = Math.round(((direction>0) ? iteration : 10 - iteration) * stepHeight) +"px"; | |
- | + | iteration++; | |
+ | setTimeout(function(){animateStep(panelContent,iteration,stepHeight,direction)}, PANEL_ANIMATION_DELAY); | ||
} | } | ||
- | + | else | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
{ | { | ||
- | + | // set class for the panel | |
- | + | panelContent.parentNode.className = (direction<0) ? PANEL_COLLAPSED_CLASS : PANEL_NORMAL_CLASS; | |
- | + | // clear inline styles | |
+ | panelContent.style.display = panelContent.style.height = ""; | ||
} | } | ||
- | } | + | } |
- | + | // ----------------------------------------------------------------------------------------------- | |
+ | // Load-Save | ||
+ | // ----------------------------------------------------------------------------------------------- | ||
+ | /** | ||
+ | * Reads the "panels" cookie if exists, expects data formatted as key:value|key:value... puts in panelsStatus object | ||
+ | */ | ||
+ | function loadSettings() | ||
{ | { | ||
- | var | + | // prepare the object that will keep the panel statuses |
- | var | + | panelsStatus = {}; |
- | for (var i = 0; i < | + | |
+ | // find the cookie name | ||
+ | var start = document.cookie.indexOf(PANEL_COOKIE_NAME + "="); | ||
+ | if (start == -1) return; | ||
+ | |||
+ | // starting point of the value | ||
+ | start += PANEL_COOKIE_NAME.length+1; | ||
+ | |||
+ | // find end point of the value | ||
+ | var end = document.cookie.indexOf(";", start); | ||
+ | if (end == -1) end = document.cookie.length; | ||
+ | |||
+ | // get the value, split into key:value pairs | ||
+ | var cookieValue = unescape(document.cookie.substring(start, end)); | ||
+ | var panelsData = cookieValue.split("|"); | ||
+ | |||
+ | // split each key:value pair and put in object | ||
+ | for (var i=0; i< panelsData.length; i++) | ||
{ | { | ||
- | var | + | var pair = panelsData[i].split(":"); |
- | + | panelsStatus[pair[0]] = pair[1]; | |
- | + | ||
} | } | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
} | } | ||
- | + | function expandAll() | |
- | + | { | |
- | + | for (var key in panelsStatus) | |
- | + | saveSettings(key, "true"); | |
- | + | ||
+ | setUpPanels(); | ||
} | } | ||
- | + | function collapseAll() | |
- | + | { | |
- | + | for (var key in panelsStatus) | |
- | + | saveSettings(key, "false"); | |
- | + | ||
- | + | setUpPanels(); | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
} | } | ||
- | /* | + | /** |
- | + | * Takes data from the panelsStatus object, formats as key:value|key:value... and puts in cookie valid for 365 days | |
- | * | + | * @param key key name to save |
- | + | * @paeam value key value | |
- | + | ||
- | + | ||
- | * | + | |
- | * | + | |
*/ | */ | ||
- | + | function saveSettings(key, value) | |
- | + | { | |
- | + | // put the new value in the object | |
- | + | panelsStatus[key] = value; | |
- | + | ||
- | + | // create an array that will keep the key:value pairs | |
- | + | var panelsData = []; | |
- | + | for (var key in panelsStatus) | |
- | + | panelsData.push(key+":"+panelsStatus[key]); | |
- | + | ||
- | + | // set the cookie expiration date 1 year from now | |
- | + | var today = new Date(); | |
+ | var expirationDate = new Date(today.getTime() + 365 * 1000 * 60 * 60 * 24); | ||
+ | // write the cookie | ||
+ | document.cookie = PANEL_COOKIE_NAME + "=" + escape(panelsData.join("|")) + ";expires=" + expirationDate.toGMTString(); | ||
} | } | ||
- | + | // ----------------------------------------------------------------------------------------------- | |
- | / | + | // Register setUpPanels to be executed on load |
- | + | if (window.addEventListener) | |
- | + | { | |
- | + | // the "proper" way | |
- | + | window.addEventListener("load", setUpPanels, false); | |
- | + | ||
- | + | ||
- | + | ||
} | } | ||
- | + | else | |
- | / | + | if (window.attachEvent) |
- | + | { | |
- | + | // the IE way | |
- | + | window.attachEvent("onload", setUpPanels); | |
- | + | ||
- | + | ||
} | } | ||
+ | --> | ||
+ | </script> | ||
- | / | + | </head> |
- | + | <body> | |
- | + | <div class="container"> | |
- | + | ||
+ | <div class="topbar"> | ||
+ | <div style="filter:alpha(opacity=70);opacity:.7;"> | ||
+ | |||
+ | |||
+ | <img src="https://static.igem.org/mediawiki/2011/2/20/Logotec.png" alt="ITESM" name="teclogo" width="146" height="52" id="teclogo"> | ||
+ | <a href="https://2011.igem.org/Main_Page"><img src="https://static.igem.org/mediawiki/2011/7/73/Logoigemsmall.png" alt="iGEM" name="logoigem" width="70" height="61" id="logoigem"></a> | ||
+ | <p> </p> | ||
+ | <p> </p> | ||
+ | </div> | ||
+ | |||
+ | <div class="sidebar1"> | ||
+ | <ul class="nav"> | ||
+ | <p> </p> | ||
+ | <!--this is our menu! D: --> | ||
+ | <li> | ||
+ | <div class="panelcollapsed"> | ||
+ | <h2>MAIN</h2> | ||
+ | <div class="panelcontent" style=""> | ||
+ | <p><a href="https://2011.igem.org/Team:Tec-Monterrey">home</a></p> | ||
+ | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/projectdescription">abstract</a></p> | ||
+ | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/video">videos</a></p> | ||
+ | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/stepbystep">step by step</a></p> | ||
+ | |||
+ | |||
+ | </div> | ||
+ | </div> | ||
+ | </li> | ||
+ | <li> | ||
+ | |||
+ | <div class="panelcollapsed"> | ||
+ | <h2>PROJECT</h2> | ||
+ | <div class="panelcontent" style=""> | ||
+ | |||
+ | |||
+ | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/projectoverview">overview</a></p> | ||
+ | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/projectparts">parts</a></p> | ||
+ | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/projectmodeling">genetic frame</a></p> | ||
+ | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/projectresults/methods">methods</a></p> | ||
+ | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/projectresults">results</a></p> | ||
+ | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/teamha">human approach</a></p> | ||
+ | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/projectprotocols">protocols</a><p> | ||
+ | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/safetypage">safety</a></p> | ||
+ | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/projectnotebook">notebook</a></p> | ||
+ | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/sampledata">sample data</a></p> | ||
+ | </div> | ||
+ | </div> | ||
+ | </li> | ||
+ | <li> | ||
+ | |||
+ | |||
+ | <div class="panelcollapsed"> | ||
+ | <h2>TEAM</h2> | ||
+ | <div class="panelcontent"> | ||
- | . | + | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/teammembers">members</a></p> |
- | / | + | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/teaminstallations">headquarters</a></p> |
- | + | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/microcongreso">micro congress</a></p> | |
+ | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/teamfriends">friends</a></p> | ||
+ | |||
+ | </div> | ||
+ | </div> | ||
+ | </li> | ||
+ | <li> | ||
+ | <div class="panelcollapsed"> | ||
+ | <h2>EXTRAS</h2> | ||
+ | <div class="panelcontent"> | ||
+ | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/sitemap">site map</a></p> | ||
+ | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/sponsorsplatinum">sponsors platinum</a></p> | ||
+ | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/sponsorsgold">sponsors gold</a></p> | ||
+ | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/sponsorssilver">sponsors silver</a></p> | ||
+ | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/specialthanks">special thanks</a></p> | ||
+ | <p><a href="https://2011.igem.org/Team:Tec-Monterrey/followus">follow us!</a></p> | ||
+ | </div> | ||
+ | </div> | ||
+ | </li> | ||
+ | </ul> | ||
+ | |||
+ | </div> | ||
+ | |||
+ | <div class="content"> | ||
+ | <div style=" | ||
+ | text-align:center;"> | ||
+ | <a href="https://2011.igem.org/Team:Tec-Monterrey/safetypage"><img src="https://static.igem.org/mediawiki/2011/3/3d/Safetyqa01.png" > </a> | ||
+ | <a href="https://2011.igem.org/Team:Tec-Monterrey/safetypage/qanda"> | ||
+ | <img src="https://static.igem.org/mediawiki/2011/d/d6/Biosafty01.png"> </a> | ||
+ | |||
+ | <!--in sub pages, this divisions should be comments! :D--> | ||
+ | <div style=" | ||
+ | padding:25px 50px; | ||
+ | background-color:#04191d; | ||
+ | color:#333; | ||
+ | text-align:left; | ||
+ | margin:5px 30px; | ||
+ | "> | ||
+ | |||
+ | </head> | ||
- | + | <body> | |
- | + | <div align="justify"> | |
- | + | <div style="-moz-border-radius: 4px;-webkit-border-radius: 4px;"> | |
- | + | <div class="frame" id="frame1" style="background-color:#e5e5e5;"> | |
- | + | <br> | |
- | + | <a href=""><img src="https://static.igem.org/mediawiki/2011/7/78/Qainfo.png" width="300" height="50"> </a> | |
- | + | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
+ | <p class="textojustif"> | ||
+ | <br> | ||
+ | 1. Would the materials used in your project and/or your final | ||
+ | product | ||
+ | pose: | ||
+ | <br><br> | ||
+ | a. Risks to the safety and health of team members or others in the | ||
+ | <br><br> | ||
+ | The biological device in which we worked on this project doesn’t pose | ||
+ | a risk to any of the team members’ health if correctly handled, however we | ||
+ | should always consider that they carry an antibiotic resistance. | ||
+ | Nevertheless, we must also take in mind the chemicals employed | ||
+ | in the methods used for the completion of this project. In order to dispose | ||
+ | any of those hazardous substances, besides following the General Safety | ||
+ | Regulations of the Laboratory, we also followed the Safety Regulations of | ||
+ | Centro de Biotecnología FEMSA. For example, in agarose gel electrophoresis | ||
+ | ethidium bromide and SYBR green are commonly used; in this case, we | ||
+ | followed a protocol for handling and disposal of the chemicals, placing objects | ||
+ | contaminated with it in special containers. In the case of pipette tips, those | ||
+ | were treated with benzal and sterilized by autoclave. These measures were | ||
+ | done to avoid direct contact between team members and hazardous material. | ||
+ | <br><br> | ||
+ | b. Risks to the safety and health of the general public if released | ||
+ | by design or accident? | ||
+ | <br><br> | ||
+ | Concerning the risks to people in general, the most dangerous | ||
+ | problem we observed is the exposure to microorganisms that are resistant to | ||
+ | antibiotics, posing a threat on the treatment of many diseases. For this | ||
+ | reason, we concealed our bacteria for lab use only following the appropriate | ||
+ | measures for handling and disposing them, such as sterilizing the tubes and | ||
+ | dishes containing modified bacteria after using them. Regarding chemical | ||
+ | substances, we assured that every chemical used was properly disposed, | ||
+ | even gloves used by the team when they made contact with any hazardous | ||
+ | substance, to make sure no people alien to the lab could be exposed to the | ||
+ | chemicals. | ||
+ | <br><br> | ||
+ | c. Risks to environmental quality if released by design or | ||
+ | accident? | ||
+ | <br><br> | ||
+ | Our biological devices pose few risks to the environment since | ||
+ | we are using enzymes already present in other bacteria and non-dangerous | ||
+ | substrates and products. However, there is a slight environmental concern | ||
+ | in one of our constructs. This construct employs cellulose as a substrate, | ||
+ | and since all plants have cellulose in their cell wall it is possible that they | ||
+ | could be degraded under unusual circumstances, thus generating a negative | ||
+ | environmental impact. Again, caution measures must be taken in order to | ||
+ | have the modified bacteria concealed so they don’t pose a direct threat to the | ||
+ | environment. | ||
+ | <br><br> | ||
+ | d. Risks to security through malicious misuse by individuals, | ||
+ | groups | ||
+ | or states? | ||
+ | <br><br> | ||
+ | Our project doesn’t have any point of risk in regards of biosecurity. Due | ||
+ | to the nature of the process and the microorganisms involved, the devices do | ||
+ | not cause any hazard that could be misused by individuals, groups or states | ||
+ | to affect people’s security and wellbeing. | ||
+ | <br><br> | ||
+ | Please explain your responses (whether yes or no) to these | ||
+ | questions. | ||
+ | Specifically, are any parts or devices in your project associated | ||
+ | (or known to cause): | ||
+ | <br><br> | ||
+ | - pathogenicity, infectivity, or toxicity? | ||
+ | Neither of our devices has an associated risk in these fields. The only | ||
+ | possible concern could be the EstA protein used in the device, because it is | ||
+ | capable of the production of a toxin when the entire sequence is used; but since | ||
+ | only a partial sequence of this protein is needed in the device (only the | ||
+ | membrane expressing part), the toxin cannot be synthesized and the risk is | ||
+ | therefore eliminated. | ||
+ | <br><br> | ||
+ | - threats to environmental quality? | ||
+ | There is a very little, if none at all, concern about threats on the | ||
+ | environment by our devices. As previously explained, if modified bacteria with | ||
+ | the cellulase gene are misused or escape, there is a possibility that plants will | ||
+ | have contact with them, creating a possible environmental damage especially | ||
+ | if the affected organisms are ecologically valuable. However, this scenario | ||
+ | is more a concern than a menace, as bacteria need to grow under | ||
+ | specific conditions, and plants themselves have defense mechanisms against | ||
+ | pathogenic microorganisms, so that possibility is greatly diminished. | ||
+ | <br><br> | ||
+ | - security concerns? | ||
+ | <br><br> | ||
+ | No, our project does not posess any danger to security in general, | ||
+ | because the enzymes are designed only to convert sucrose into glucose and | ||
+ | fructose, and cellulose on glucose. Regarding the rest of the devices, the | ||
+ | parts only complement the enzymes to allow them to express and function | ||
+ | properly, so they don’t pose a security threat. | ||
+ | <br><br> | ||
+ | 2. If your response to any of the questions above is yes: | ||
+ | <br><br> | ||
+ | a. Explain how you addressed these issues in project design and while conducting laboratory work. | ||
+ | <br><br> | ||
+ | When designing our project, thanks to the opinion of many professors, | ||
+ | we considered the risks that our device could have because of the enzymes | ||
+ | and the reaction catalyzed. Interestingly enough, the enzymes are already | ||
+ | used in other industries such as food and cleaning industries, so the | ||
+ | measures taken to confine the bacteria were effective in case there was a risk | ||
+ | to the environment or health in general. To accomplish an acceptable safety | ||
+ | level, during the work time at the laboratory, every time bacteria with the | ||
+ | constructs were handled, said work was done inside a laminar flow hood, disinfected before and after being | ||
+ | used. Disposed materials were placed in red bags for biological hazardous | ||
+ | waste, and then sterilized in autoclave. In the end, the material was stored in red | ||
+ | containers so they could be disposed by a certified company. | ||
+ | <br><br> | ||
+ | 3. Under what biosafety provisions will / do you operate? | ||
+ | <br><br> | ||
+ | a. Does your institution have its own biosafety rules and if so | ||
+ | what are they? | ||
+ | <br><br> | ||
+ | Up to this date, there is not a general biosafety handbook for the | ||
+ | university’s laboratories. Nevertheless, we used the handbook provided to us | ||
+ | by the university’s research center, that consists in a handbook for handling | ||
+ | and disposal of hazardous biological waste and a handbook with the | ||
+ | safety rules that must be followed within the lab <a href="https://static.igem.org/mediawiki/2011/d/dd/Laboratory.Rules.pdf">(link)</a> | ||
+ | . Thanks to this, we | ||
+ | were able to take the appropriate safety measures in the academic lab where | ||
+ | we worked along the summer for this project. | ||
+ | <br><br> | ||
+ | b. Does your institution have an Institutional Biosafety Committee | ||
+ | equivalent group? If yes, have you discussed your project with | ||
+ | them?<br> | ||
+ | Describe any concerns or changes that were made based on this | ||
+ | review. | ||
+ | <br><br> | ||
+ | Yes, the university’s research center, “Centro de Biotecnologia | ||
+ | FEMSA”, has a Biosecurity Committee, composed of three doctors from the | ||
+ | institution. All of them received information about our project, the laboratory | ||
+ | protocols that we were using, and the biosafety measures we had; this was | ||
+ | done to have our project checked by them so it could be improved. | ||
+ | The Commitee told us that everything was in order and that we were | ||
+ | following appropriately the measures taken in the university. However, one | ||
+ | of them noted a point that we had overlooked: that the use of cellulase | ||
+ | in a construct could affect the environment because cellulose is the main | ||
+ | component of plants, representing thus a little biosafety concern. For this | ||
+ | reason, the Commitee suggested us to follow the already established | ||
+ | biosafety regulations, to not accidentally free transformed bacteria into the | ||
+ | environment. | ||
+ | <br><br> | ||
+ | c. Will / did you receive any biosafety and/or lab training before | ||
+ | beginning your project? If so, describe this training. | ||
+ | <br><br> | ||
+ | Before initiating the project, some of our team members had already | ||
+ | been to a conference about the laboratory rules that must be followed in the | ||
+ | university’s Research Center, “Centro de Biotecnologia FEMSA”. The rest of | ||
+ | us went to this conference when the project started. In this conference, the | ||
+ | Research Center coordinators provided us with the rules that we had to follow in | ||
+ | those laboratories. The rulebook was adapted to the academic laboratory | ||
+ | where we worked, the Genetic Manipulation and Molecular Diagnosis | ||
+ | Laboratory <a href="https://static.igem.org/mediawiki/2011/d/dd/Laboratory.Rules.pdf">(link)</a>. | ||
+ | Also, Marco Mata, head of the Research Center Safety | ||
+ | Commission, supported us in the biosafety aspect of the project, informing us | ||
+ | about the biosafety measures followed in the Research Center, and allowing | ||
+ | us to take the same measures to our lab to work along the summer. | ||
+ | <br><br> | ||
+ | d. Does your country have national biosafety regulations or | ||
+ | guidelines? | ||
+ | <br><br> | ||
+ | In Mexico, in matters of biosafety, there is a Regulation for the handling | ||
+ | of Hazardous Biological Waste, which we followed to properly dispose all | ||
+ | the waste generated by the project. <a href="http://www.salud.gob.mx/unidades/cdi/nom/087ecolssa.html">(link)</a>. | ||
+ | Moreover, there is a Biosafety Law for | ||
+ | Genetically Modified Organisms <a href="http://www.salud.gob.mx/unidades/cdi/nom/compi/ley180305.html">(link)</a>. | ||
+ | </p> | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
</div> | </div> | ||
- | < | + | <hr> |
- | + | <br/> | |
- | + | <input type="button" value=" Up " onmouseover="scrollUp()" onmouseout="clearTimeout(t1)"> | |
- | + | <input type="button" value=" Down " onmouseover="scrollDown()" onmouseout="clearTimeout(t1)"> | |
- | + | </div></body></html> | |
- | + | ||
- | </ | + | |
- | </body> | + | |
- | </html> | + |