symbiont 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +1 -0
- data/.travis.yml +14 -0
- data/HISTORY.md +6 -0
- data/README.md +1 -1
- data/app/Gemfile +4 -0
- data/app/app.rb +167 -0
- data/app/config/database.rb +9 -0
- data/app/models/plan.rb +10 -0
- data/app/models/product.rb +10 -0
- data/app/models/study.rb +11 -0
- data/app/models/user.rb +13 -0
- data/app/public/css/style.css +138 -0
- data/app/views/create_plan.erb +21 -0
- data/app/views/create_product.erb +15 -0
- data/app/views/create_study.erb +24 -0
- data/app/views/create_user.erb +60 -0
- data/app/views/db_plans.erb +31 -0
- data/app/views/db_products.erb +29 -0
- data/app/views/db_studies.erb +33 -0
- data/app/views/db_users.erb +23 -0
- data/app/views/entity_list.erb +10 -0
- data/app/views/index.erb +7 -0
- data/app/views/layout.erb +39 -0
- data/app/views/login_page.erb +17 -0
- data/app/views/success_1.erb +2 -0
- data/app/views/success_2.erb +2 -0
- data/app/views/test_database.erb +13 -0
- data/app/views/test_events.erb +44 -0
- data/app/views/test_page.erb +164 -0
- data/lib/symbiont.rb +3 -0
- data/lib/symbiont/enclosers.rb +17 -0
- data/lib/symbiont/evaluators.rb +17 -0
- data/lib/symbiont/platform_watir/platform_object.rb +22 -2
- data/lib/symbiont/version.rb +1 -1
- data/lib/symbiont/web_objects/_common.rb +36 -1
- data/lib/symbiont/web_objects/table.rb +9 -0
- data/lib/symbiont/web_objects/table_row.rb +9 -0
- data/spec/symbiont/enclosers_spec.rb +5 -0
- data/spec/symbiont/evaluators_spec.rb +24 -0
- data/spec/symbiont/web_object_spec.rb +60 -2
- data/spec/symbiont/web_objects/table_row_spec.rb +9 -0
- data/spec/symbiont/web_objects/table_spec.rb +8 -0
- data/specs/button.feature +2 -0
- data/specs/definitions/pages.rb +17 -0
- data/specs/evaluators.feature +5 -0
- data/specs/events.feature +19 -0
- data/specs/link.feature +2 -0
- data/specs/support/test_steps/action_steps_buttons.rb +2 -0
- data/specs/support/test_steps/action_steps_evaluators.rb +3 -0
- data/specs/support/test_steps/action_steps_events.rb +40 -0
- data/specs/support/test_steps/action_steps_links.rb +2 -0
- data/specs/support/test_steps/action_steps_navigate.rb +4 -0
- data/specs/support/test_steps/action_steps_webobjects.rb +25 -0
- data/specs/web_object.feature +11 -0
- data/symbiont.gemspec +3 -3
- metadata +47 -13
@@ -0,0 +1,24 @@
|
|
1
|
+
<section id="create_study">
|
2
|
+
<span id="navigate"><a href="entity_list">Back to List</a> | <a href="test_database">Logout</a></span></p>
|
3
|
+
<form id="studyFormID" clas="studyFormClass" name="studyFormName" method="post" action="/create_study">
|
4
|
+
<p><label id="lbl_studyName" class="Fld" for="studyName">Study Name:</label><br />
|
5
|
+
<input id="studyName" name="studyName" class="Fld" size="40" type="text"/></p>
|
6
|
+
|
7
|
+
<p><label id="lbl_studyProtocol" class="Fld" for="studyProtocol">Protocol:</label><br />
|
8
|
+
<input id="studyProtocol" name="studyProtocol" class="Fld" size="40" type="text"/></p>
|
9
|
+
|
10
|
+
<p><label id="lbl_studyProduct" class="Fld" for="studyProduct">Product:</label><br />
|
11
|
+
<select id="studyProduct" name="studyProduct">
|
12
|
+
<option value="blank"></option>
|
13
|
+
<% @products = Product.all %>
|
14
|
+
<% @products.each do |product| %>
|
15
|
+
<option value="<%= product.name %>"><%= product.name %></option>
|
16
|
+
<% end %>
|
17
|
+
</select>
|
18
|
+
|
19
|
+
<p><label id="lbl_studyPhase" class="Fld" for="studyPhase">Phase:</label><br />
|
20
|
+
<input id="studyPhase" name="studyPhase" class="Fld" size="40" type="text"/></p>
|
21
|
+
|
22
|
+
<p><input id="btnSubmit" name="btnSubmit" class="btn" type="submit" value="Create Study"></p>
|
23
|
+
</form>
|
24
|
+
</section>
|
@@ -0,0 +1,60 @@
|
|
1
|
+
<script>
|
2
|
+
function showPasswordFields() {
|
3
|
+
document.getElementById('password_area').style.display = '';
|
4
|
+
document.getElementById('SetPasswordLink').style.display = 'none';
|
5
|
+
}
|
6
|
+
|
7
|
+
function showCapabilities() {
|
8
|
+
document.getElementById('capabilities_area').style.display = '';
|
9
|
+
document.getElementById('RevealCapabilities').style.display = 'none';
|
10
|
+
}
|
11
|
+
</script>
|
12
|
+
|
13
|
+
<section id="create_user">
|
14
|
+
<span id="navigate"><a href="entity_list">Back to List</a> | <a href="test_database">Logout</a></span></p>
|
15
|
+
<form id="userFormID" class="userFormClass" name="userFormName" method="post" action="/create_user">
|
16
|
+
<p><label id="lbl_loginName" class="Fld" for="loginName">Login Name:</label><br />
|
17
|
+
<input id="loginName" name="loginName" class="Fld" size="40" type="text"/></p>
|
18
|
+
|
19
|
+
<p><label id="lbl_firstName" class="Fld" for="firstName">First Name:</label><br />
|
20
|
+
<input id="firstName" name="firstName" class="Fld" size="40" type="text"/></p>
|
21
|
+
|
22
|
+
<p><label id="lbl_lastName" class="Fld" for="lastName">Last Name:</label><br />
|
23
|
+
<input id="lastName" name="lastName" class="Fld" size="40" type="text"/></p>
|
24
|
+
|
25
|
+
<p><label id="lbl_level" class="Fld" for="level">Maximum Level:</label><br />
|
26
|
+
<select name="level" id="level" class="sel_list_class">
|
27
|
+
<option value="option1">Expert</option>
|
28
|
+
<option value="option2">Advanced</option>
|
29
|
+
<option value="option3">Basic</option>
|
30
|
+
</select>
|
31
|
+
|
32
|
+
<p id="SetPasswordLink"><a href="#" onclick="showPasswordFields();">Set Password</a></p>
|
33
|
+
|
34
|
+
<div id="password_area" style="display:none;">
|
35
|
+
<p><label id="lbl_password" class="Fld" for="password">Password:</label><br />
|
36
|
+
<input id="password" name="password" class="Fld" size="40" type="password"/></p>
|
37
|
+
<p><label id="lbl_confirmPassword" class="Fld" for="confirmPassword">Confirm Password:</label><br />
|
38
|
+
<input id="confirmPassword" name="confirmPassword" class="Fld" size="40" type="password"/></p>
|
39
|
+
</div>
|
40
|
+
|
41
|
+
<p id="RevealCapabilities"><a href="#" onclick="showCapabilities();">Save Current Information</a></p>
|
42
|
+
|
43
|
+
<div id="capabilities_area" style="display:none;">
|
44
|
+
<p><label id="lbl_role" class="Fld" for="role">Role:</label><br />
|
45
|
+
<select name="role" id="role" class="sel_list_class">
|
46
|
+
<option value="option1">Administrator</option>
|
47
|
+
<option value="option2">Clinical Administrator</option>
|
48
|
+
<option value="option3">Project Sponsor</option>
|
49
|
+
</select>
|
50
|
+
|
51
|
+
<p><strong>Additional Capabilities:</strong></p>
|
52
|
+
<input id="can_edit" name="can_edit" class="cb_class" type="checkbox" value="1"/> Can Edit Reports<br />
|
53
|
+
<input id="can_export" name="can_export" class="cb_class" type="checkbox" value="2"/> Can Export Report Data<br />
|
54
|
+
<input id="can_access_api" name="can_access_api" class="cb_class" type="checkbox" value="3"/> Can Access Web Services<br />
|
55
|
+
<input id="can_administrate" name="can_administrate" class="cb_class" type="checkbox" value="4"/> Can Administrate
|
56
|
+
</div>
|
57
|
+
|
58
|
+
<p><input id="btnSubmit" name="btnSubmit" class="btn" type="submit" value="Create User"></p>
|
59
|
+
</form>
|
60
|
+
</section>
|
@@ -0,0 +1,31 @@
|
|
1
|
+
<section id="plans">
|
2
|
+
|
3
|
+
<p><a href="create_plan">Add New Plan</a> <span id="navigate"><a href="entity_list">Back to List</a> | <a href="test_database">Logout</a></span></p>
|
4
|
+
|
5
|
+
<hr/>
|
6
|
+
|
7
|
+
<% if @plans.count > 0 %>
|
8
|
+
<table class="entity">
|
9
|
+
<caption>
|
10
|
+
<strong>Current Plans</strong>
|
11
|
+
</caption>
|
12
|
+
<thead>
|
13
|
+
<th id="planName">Plan Name</th>
|
14
|
+
<th id="planStudy">Associated Study</th>
|
15
|
+
<th id="planDescription">Plan Description</th>
|
16
|
+
</thead>
|
17
|
+
<tbody>
|
18
|
+
<% @plans.each do |plan| %>
|
19
|
+
<tr>
|
20
|
+
<td headers="planName"><%= plan.plan_name %></td>
|
21
|
+
<td headers="planStudy"><%= plan.study %></td>
|
22
|
+
<td headers="planDescription"><%= plan.plan_description %></td>
|
23
|
+
</tr>
|
24
|
+
<% end %>
|
25
|
+
</tbody>
|
26
|
+
</table>
|
27
|
+
<% else %>
|
28
|
+
<p>No plans in database.</p>
|
29
|
+
<% end %>
|
30
|
+
|
31
|
+
</section>
|
@@ -0,0 +1,29 @@
|
|
1
|
+
<section id="products">
|
2
|
+
<p><a href="create_product">Add New Product</a> <span id="navigate"><a href="entity_list">Back to List</a> | <a href="test_database">Logout</a></span></p>
|
3
|
+
|
4
|
+
<hr/>
|
5
|
+
|
6
|
+
<% if @products.length > 0 %>
|
7
|
+
<table class="entity">
|
8
|
+
<caption>
|
9
|
+
<strong>Current Products</strong>
|
10
|
+
</caption>
|
11
|
+
<thead>
|
12
|
+
<th id="productID">Product ID</th>
|
13
|
+
<th id="productName">Product Name</th>
|
14
|
+
<th id="productDescription">Product Description</th>
|
15
|
+
</thead>
|
16
|
+
<tbody>
|
17
|
+
<% @products.each do |product| %>
|
18
|
+
<tr>
|
19
|
+
<td headers="productID"><%= product.product_id %></td>
|
20
|
+
<td headers="productName"><%= product.name %></td>
|
21
|
+
<td headers="productDescription"><%= product.description %></td>
|
22
|
+
</tr>
|
23
|
+
<% end %>
|
24
|
+
</tbody>
|
25
|
+
</table>
|
26
|
+
<% else %>
|
27
|
+
<p>No products in database.</p>
|
28
|
+
<% end %>
|
29
|
+
</section>
|
@@ -0,0 +1,33 @@
|
|
1
|
+
<section id="studies">
|
2
|
+
|
3
|
+
<p><a href="create_study">Add New Study</a> <span id="navigate"><a href="entity_list">Back to List</a> | <a href="test_database">Logout</a></span></p>
|
4
|
+
|
5
|
+
<hr/>
|
6
|
+
|
7
|
+
<% if @studies.length > 0 %>
|
8
|
+
<table class="entity">
|
9
|
+
<caption>
|
10
|
+
<strong>Current Studies</strong>
|
11
|
+
</caption>
|
12
|
+
<thead>
|
13
|
+
<th id="studyName">Study Name</th>
|
14
|
+
<th id="studyProduct">Associated Product</th>
|
15
|
+
<th id="studyPhase">Study Phase</th>
|
16
|
+
<th id="studyProtocol">Study Protocol</th>
|
17
|
+
</thead>
|
18
|
+
<tbody>
|
19
|
+
<% @studies.each do |study| %>
|
20
|
+
<tr>
|
21
|
+
<td headers="studyName"><%= study.study_name %></td>
|
22
|
+
<td headers="studyProduct"><%= study.product %></td>
|
23
|
+
<td headers="studyPhase"><%= study.phase %></td>
|
24
|
+
<td headers="studyProtocol"><%= study.protocol %></td>
|
25
|
+
</tr>
|
26
|
+
<% end %>
|
27
|
+
</tbody>
|
28
|
+
</table>
|
29
|
+
<% else %>
|
30
|
+
<p>No studies in database.</p>
|
31
|
+
<% end %>
|
32
|
+
|
33
|
+
</section>
|
@@ -0,0 +1,23 @@
|
|
1
|
+
<section id="users">
|
2
|
+
<p><a href="create_user">Add New User</a> <span id="navigate"><a href="entity_list">Back to List</a> | <a href="test_database">Logout</a></span></p>
|
3
|
+
|
4
|
+
<hr />
|
5
|
+
|
6
|
+
<% if @users.count > 0 %>
|
7
|
+
<table class="entity">
|
8
|
+
<thead>
|
9
|
+
<th>Current Users</th>
|
10
|
+
</thead>
|
11
|
+
<tbody>
|
12
|
+
<% @users.each do |user| %>
|
13
|
+
<tr>
|
14
|
+
<td><%= user.firstname + " " + user.lastname %></td>
|
15
|
+
<td><%= user.loginname %></td>
|
16
|
+
</tr>
|
17
|
+
<% end %>
|
18
|
+
</tbody>
|
19
|
+
</table>
|
20
|
+
<% else %>
|
21
|
+
<p>No users in database.</p>
|
22
|
+
<% end %>
|
23
|
+
</section>
|
@@ -0,0 +1,10 @@
|
|
1
|
+
<section id="entity_list">
|
2
|
+
<p>Welcome <%= params["loginName"] %>. <span id="navigate"><a href="test_database">Logout</a></span></p>
|
3
|
+
<h2>Entity List</h2>
|
4
|
+
<% if params["loginName"] == "administrator" %>
|
5
|
+
<p><a id="users" href="db_users">Users</a></p>
|
6
|
+
<% end %>
|
7
|
+
<p><a id="products" href="db_products">Products</a></p>
|
8
|
+
<p><a id="studies" href="db_studies">Studies</a></p>
|
9
|
+
<p><a id="plans" href="db_plans">Plans</a></p>
|
10
|
+
</section>
|
data/app/views/index.erb
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
<p>Choose the testing area to go to:</p>
|
2
|
+
|
3
|
+
<ul>
|
4
|
+
<li><a id="test_page" href="test_page">Simple Object Page</a></li>
|
5
|
+
<li><a id="test_events" href="test_events">Simple Events Page</a></li>
|
6
|
+
<li><a id="test_database" href="test_database">Simple Database Application</a></li>
|
7
|
+
</ul>
|
@@ -0,0 +1,39 @@
|
|
1
|
+
<!doctype html>
|
2
|
+
<html dir="ltr" lang="en">
|
3
|
+
<head>
|
4
|
+
<meta charset="utf-8">
|
5
|
+
<title><%= @title + ' | Test Application' %></title>
|
6
|
+
<meta name="HandheldFriendly" content="True">
|
7
|
+
<meta name="MobileOptimized" content="320">
|
8
|
+
<meta name="viewport" content="width=device-width, target-densitydpi=160dpi, initial-scale=1">
|
9
|
+
<link href="http://localhost:4567/css/style.css" media="screen" rel="stylesheet">
|
10
|
+
<!--[if lt IE 9]>
|
11
|
+
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
12
|
+
<![endif]-->
|
13
|
+
</head>
|
14
|
+
<body>
|
15
|
+
|
16
|
+
<header>
|
17
|
+
<hgroup>
|
18
|
+
<h1><a href="/">Testing Application</a></h1>
|
19
|
+
<h2>Minimal Testing Application</h2>
|
20
|
+
</hgroup>
|
21
|
+
</header>
|
22
|
+
|
23
|
+
<div id="main">
|
24
|
+
<% if flash[:notice] %>
|
25
|
+
<p class="notice"><%= flash[:notice] %></p>
|
26
|
+
<% end %>
|
27
|
+
<% if flash[:error] %>
|
28
|
+
<p class="error"><%= flash[:error] %>
|
29
|
+
<% end %>
|
30
|
+
<%= yield %>
|
31
|
+
</div>
|
32
|
+
|
33
|
+
<footer>
|
34
|
+
<p><small>An app for attaching the <a href="https://github.com/jnyman/symbiont">Symbiont</a> to.</small></p>
|
35
|
+
<p><small>Part of the <a href="https://github.com/jnyman/lucid">Lucid Framework</a>.</small></p>
|
36
|
+
</footer>
|
37
|
+
|
38
|
+
</body>
|
39
|
+
</html>
|
@@ -0,0 +1,17 @@
|
|
1
|
+
<section id="login">
|
2
|
+
<form id="loginFormID" class="loginFormClass" name="loginFormName" method="get" action="/entity_list" target="_top">
|
3
|
+
<p><label id="lbl_server" class="Fld" for="server">Server:</label><br />
|
4
|
+
<input id="serverID" name="serverName" class="Fld" size="40" type="text" value="Test"/></p>
|
5
|
+
|
6
|
+
<p><label id="lbl_clientCode" class="Fld" for="clientCode">Client ID:</label><br />
|
7
|
+
<input id="clientID" name="clientIDName" class="Fld" size="40" type="text"/></p>
|
8
|
+
|
9
|
+
<p><label id="lbl_loginName" class="Fld" for="loginName">Login Name:</label><br />
|
10
|
+
<input id="loginNameID" name="loginName" class="Fld" size="40" type="text"/></p>
|
11
|
+
|
12
|
+
<p><label id="lbl_password" class="Fld" for="password">Password:</label><br />
|
13
|
+
<input id="passwordID" name="passwordName" class="Fld" size="40" type="password"/></p>
|
14
|
+
|
15
|
+
<p><input id="btnSubmit" name="btnSubmit" class="btn" type="submit" value="Log In"></p>
|
16
|
+
</form>
|
17
|
+
</section>
|
@@ -0,0 +1,13 @@
|
|
1
|
+
<h1>Sample Database Application</h1>
|
2
|
+
|
3
|
+
<iframe style="float: left;" id="loginSection" name="loginSection" src="login_page" width="500" height="300">
|
4
|
+
</iframe>
|
5
|
+
|
6
|
+
<table>
|
7
|
+
<tr><td> </td>
|
8
|
+
<td>
|
9
|
+
<p>This is a sample login form that is within an iframe. You can sign in using any values.</p>
|
10
|
+
<p>Signing in as "administrator" will give you an extra option, which is something you can test for.</p>
|
11
|
+
</td>
|
12
|
+
</tr>
|
13
|
+
</table>
|
@@ -0,0 +1,44 @@
|
|
1
|
+
<script type="text/javascript">
|
2
|
+
function unhide() {
|
3
|
+
document.getElementById("conditional").style.display="block";
|
4
|
+
}
|
5
|
+
|
6
|
+
function hide() {
|
7
|
+
document.getElementById("conditional").style.display="none";
|
8
|
+
}
|
9
|
+
|
10
|
+
function addDiv() {
|
11
|
+
var button = document.createElement("input");
|
12
|
+
button.setAttribute("type", "button");
|
13
|
+
button.setAttribute("value", "Newly Created Button");
|
14
|
+
button.setAttribute("id", "new_button");
|
15
|
+
//document.body.appendChild(button);
|
16
|
+
var sectional = document.getElementById("created")
|
17
|
+
sectional.appendChild(button);
|
18
|
+
}
|
19
|
+
|
20
|
+
function removeDiv() {
|
21
|
+
var button = document.getElementById("new_button");
|
22
|
+
//document.body.removeChild(button);
|
23
|
+
var sectional = document.getElementById("created")
|
24
|
+
sectional.removeChild(button);
|
25
|
+
}
|
26
|
+
</script>
|
27
|
+
|
28
|
+
<section id="test_events">
|
29
|
+
<h2>Simple Events Page</h2>
|
30
|
+
|
31
|
+
<div class="group">
|
32
|
+
<input type="button" id="conditional" value="Conditional Button"/><br /><br />
|
33
|
+
<input type="button" onclick="setTimeout(function() {hide();}, 2000);" value="Hide Button"/>
|
34
|
+
<input type="button" onclick="setTimeout(function() {unhide();}, 2000);" value="Reveal Button"/>
|
35
|
+
</div>
|
36
|
+
|
37
|
+
<div class="group">
|
38
|
+
<input type="button" onclick="setTimeout(function() {addDiv();}, 2000);" value="Create Button"/>
|
39
|
+
<input type="button" onclick="setTimeout(function() {removeDiv();}, 2000);" value="Remove Button"/>
|
40
|
+
|
41
|
+
<div id="created">
|
42
|
+
</div>
|
43
|
+
</div>
|
44
|
+
</section>
|
@@ -0,0 +1,164 @@
|
|
1
|
+
<section id="test_page">
|
2
|
+
<h2>Simple Object Page</h2>
|
3
|
+
|
4
|
+
<p>Use this page to test out logic on common web objects.</p>
|
5
|
+
|
6
|
+
<h3>Links</h3>
|
7
|
+
|
8
|
+
<div class="indent">
|
9
|
+
<p>Here is a link with more than one way to identify it.</p>
|
10
|
+
<p><a href="success_1" id="avengersID" class="avengersClass" name="avengersName">Avengers Assemble</a></p>
|
11
|
+
|
12
|
+
<p>Here are two links that are identical for index (implicit) but not link location (explicit).</p>
|
13
|
+
<p><a href="success_1">Justice League Unite</a><br />
|
14
|
+
<a href="success_2">Justice League Unite</a></p>
|
15
|
+
|
16
|
+
<p>Here is a link that has no locators.</p>
|
17
|
+
<p><a href="success_1">"in the brightest day; in the darkest night"</a></p>
|
18
|
+
</div>
|
19
|
+
|
20
|
+
<h3>Standalone Form Elements</h3>
|
21
|
+
|
22
|
+
<div class="group">
|
23
|
+
<p>Below is a regular button and a disabled button. Both buttons have a series of possible locators.</p>
|
24
|
+
|
25
|
+
<form action="success_1" method="get">
|
26
|
+
<input id="clickmeID" class="clickmeClass" name="clickmeName" type="submit" value="Click Me">
|
27
|
+
<br/>
|
28
|
+
<input id="cantclickmeID" class="cantclickmeClass" name="cantclickmeName" disabled="disabled" type="submit" value="Can't Click Me">
|
29
|
+
</form>
|
30
|
+
</div>
|
31
|
+
|
32
|
+
<div class="group">
|
33
|
+
<p>Below is a group of related field elements. Of note, one of them is a hidden field for the ISBN.</p>
|
34
|
+
|
35
|
+
<label id="book_title"><strong>Book Title:</strong></label>
|
36
|
+
<br/>
|
37
|
+
<input id="bookTitleID" class="bookTitleClass" name="bookTitleName" size="40" type="text">
|
38
|
+
<br/>
|
39
|
+
<br/>
|
40
|
+
<label id=book_summary"><strong>Book Summary:</strong></label>
|
41
|
+
<br/>
|
42
|
+
<textarea id="bookSummaryID" class="bookSummaryClass" name="bookSummaryName" rows="2" cols="80"/></textarea>
|
43
|
+
<br/>
|
44
|
+
<input id="bookIsbnID" class="bookIsbnClass" name="bookIsbnName" size="40" type="hidden" value="0-85131-041-9">
|
45
|
+
<br/>
|
46
|
+
<label class="book_reference_id"><strong>Book Internal Reference ID (Read Only):</strong></label>
|
47
|
+
<br/>
|
48
|
+
<input id="bookRefID" class="bookRefClass" name="bookRefName" readonly="readonly" size="40" type="text" value="1123456:AF01" style="background-color: #000000; color: yellow;">
|
49
|
+
<br/>
|
50
|
+
<br/>
|
51
|
+
<label id="book_publisher_id"><strong>Book Internal Publisher ID (Disabled):</strong></label>
|
52
|
+
<br/>
|
53
|
+
<input id="bookPubID" class="bookPubClass" name="bookPubName" disabled="disabled" size="40" type="text" value="ESC:001678:FNC">
|
54
|
+
</div>
|
55
|
+
|
56
|
+
<div class="group">
|
57
|
+
<p>This grouping contains some common web objects that are placed on forms or pages to allow selections. Note that some are disabled.</p>
|
58
|
+
|
59
|
+
<p><strong>Choose Your Physics Concepts:</strong></p>
|
60
|
+
<select id="physicsConceptsID" class="physicsConceptsClass" name="physicsConceptsName">
|
61
|
+
<option value="option1">Quantum Entanglement</option>
|
62
|
+
<option value="option2">Tachyonic Antitravel</option>
|
63
|
+
<option value="option3">Bose-Einstein Condensates</option>
|
64
|
+
</select>
|
65
|
+
|
66
|
+
<p><strong>Your Favorite Sith Power (Disabled):</strong></p>
|
67
|
+
<select id="sithPowerID" class="sithPowerClass" name="sithPowerName" disabled="disabled">
|
68
|
+
<option value="option1">Force Lightning</option>
|
69
|
+
<option value="option2">Sundering Assault</option>
|
70
|
+
<option value="option3">Vicious Slash</option>
|
71
|
+
</select>
|
72
|
+
|
73
|
+
<p><strong>Choose Your Futuristic Technology:</strong></p>
|
74
|
+
<input id="camoArmorID" class="camoArmorClass" name="camoArmorName" type="checkbox" value="1">Chameleoflage Armor
|
75
|
+
<br/>
|
76
|
+
<input id="neuralShuntID" class="neuralShuntClass" name="neuralShuntName" type="checkbox" value="2">Neural Shunts
|
77
|
+
<br/>
|
78
|
+
<input id="kineticHarpoonID" class="kineticHarpoonClass" name="kineticHarpoonName" type="checkbox" value="3">Kinetic Harpoons
|
79
|
+
<br/>
|
80
|
+
<input id="organicCircuitryID" class="organicCircuitryClass" name="organicCircuitryName" type="checkbox" value="4">Organic Circuitry
|
81
|
+
<br/>
|
82
|
+
<input id="eigenstateID" class="eigenstateClass" name="eigenstateName" type="checkbox" value="5" disabled="disabled">Preferential Eigenstate Selector (Disabled)
|
83
|
+
|
84
|
+
<p><strong>Select Your Least Favorite Way To Vaporize:</strong>
|
85
|
+
<form>
|
86
|
+
<input id="mtcID" class="mtcClass" name="vaporize" type="radio" value="Multiphasic Temporal Convergence">Multiphasic Temporal Convergence
|
87
|
+
<br/>
|
88
|
+
<input id="upsID" class="upsClass" name="vaporize" type="radio" value="Unstable Phase Shift">Unstable Phase Shift
|
89
|
+
<br/>
|
90
|
+
<input id="wcbID" class="wcbClass" name="vaporize" type="radio" value="Warp Core Breach">Warp Core Breach
|
91
|
+
<br/>
|
92
|
+
<input id="cmeID" class="cmeClass" name="vaporize" type="radio" value="Coronal Mass Ejection" disabled="disabled">Coronal Mass Ejection (Disabled)
|
93
|
+
</form>
|
94
|
+
</div>
|
95
|
+
|
96
|
+
<h3>Tables</h3>
|
97
|
+
|
98
|
+
<div class="group">
|
99
|
+
<p>This first table is very simple, using just basic HTML constructs. It has only one way identify it.</p>
|
100
|
+
|
101
|
+
<table id="atomicTableID" border="1" width="400" cellpadding="3" cellspacing="3">
|
102
|
+
<tr>
|
103
|
+
<th>Element</th>
|
104
|
+
<th>Symbol</th>
|
105
|
+
<th>Atomic Number</th>
|
106
|
+
</tr>
|
107
|
+
<tr>
|
108
|
+
<td>Carbon</td>
|
109
|
+
<td>C</td>
|
110
|
+
<td>6</td>
|
111
|
+
</tr>
|
112
|
+
<tr>
|
113
|
+
<td>Molybdenum</td>
|
114
|
+
<td>Mo</td>
|
115
|
+
<td>42</td>
|
116
|
+
</tr>
|
117
|
+
<tr>
|
118
|
+
<td>Radon</td>
|
119
|
+
<td>Rn</td>
|
120
|
+
<td>86</td>
|
121
|
+
</tr>
|
122
|
+
<tr>
|
123
|
+
<td>Xenon</td>
|
124
|
+
<td>Xe</td>
|
125
|
+
<td>54</td>
|
126
|
+
</tr>
|
127
|
+
</table>
|
128
|
+
|
129
|
+
<p>This second table uses more HTML constructs. It has multiple ways to identify it.</p>
|
130
|
+
|
131
|
+
<table id="savingsTableID" name="savingsTableName" class="savingsTableClass" border='1'>
|
132
|
+
<thead>
|
133
|
+
<tr>
|
134
|
+
<th>Month</th>
|
135
|
+
<th>Savings</th>
|
136
|
+
</tr>
|
137
|
+
</thead>
|
138
|
+
<tfoot>
|
139
|
+
<tr>
|
140
|
+
<td>Sum</td>
|
141
|
+
<td>$180</td>
|
142
|
+
</tr>
|
143
|
+
</tfoot>
|
144
|
+
<tbody>
|
145
|
+
<tr>
|
146
|
+
<td>January</td>
|
147
|
+
<td id="jan_save" name="jan_save" class="cell_class">$100</td>
|
148
|
+
</tr>
|
149
|
+
<tr>
|
150
|
+
<td>February</td>
|
151
|
+
<td id="feb_save" name="feb_save" class="cell_class">$80</td>
|
152
|
+
</tr>
|
153
|
+
</tbody>
|
154
|
+
</table>
|
155
|
+
</div>
|
156
|
+
|
157
|
+
<h3>Sectional Elements (Div and Span)</h3>
|
158
|
+
|
159
|
+
<div class="group">
|
160
|
+
<div id="divTextID" name="divTextName" class="divTextClass">This text is within a div tag.</div>
|
161
|
+
<span id="spanTextID" name="spanTextName" class="spanTextClass">This text is within a span tag.</div>
|
162
|
+
</div>
|
163
|
+
|
164
|
+
</section>
|