Parcourir la source

Tripal: Unified Tripal Admin Detail pages

laceysanderson il y a 14 ans
Parent
commit
3cc243568f

+ 57 - 47
tripal_cv/tripal_cv.module

@@ -235,7 +235,7 @@ function tripal_cv_module_description_page() {
     $text .= '</ul>';
     
     
-  $text .= '<h3>Description:</h3>';
+  $text .= '<h3>Module Description:</h3>';
   $text .= '<p>The Tripal CV (Controlled Vocabularies) Module provides 
   	functionality for managing controlled vocabularies and the terms they are
   	comprised of. The flexibility and extendibility of the chado schema depends
@@ -243,54 +243,64 @@ function tripal_cv_module_description_page() {
   	feature types the chado schema can describe features of any type, even those
   	we have not concieved of yet.</p>';
 
-  $text .= '<h3>Post Installation Instructions:</h3>';
-  $text .= '<p>The main post installation step is <b>load any controlled 
-  	vocabularies/ontologies needed for you content</b>. It is suggested that you
-  	use community developed ontologes whenever possible. These ontologies
-  	are often very well thought out and cover possibilities you may not have
-  	thought of yet.</p>';
-  $text .= '<p>However, in some cases, community developed ontologies for your
-  	data may not yet be developed. In this case, it is suggested that you begin
-  	developement of an ontology using one of the online tools. You might find
-  	that many researchers are trying to deal with the same data and are willing
-  	to help you in this endevor. You can create a controlled vocabulary and
-  	add terms to it to provide functionality to your site while you are waiting
-  	for the ontology to be developed.</p>';
-  
+  $text .= '<h3>Setup Instructions:</h3>';
+  $text .= '<p>After installation of the controlled vocabulary module, the following tasks should be performed:</p>';
+    $text .= '<ol>';
+      $text .= '<li><p><b>Set Permissions</b>: The cv module supports the Drupal user permissions interface for 
+               controlling access to cv content and functions. These permissions include viewing, 
+               creating, editing or administering of
+               cv content. The default is that only the original site administrator has these 
+               permissions.  You can <a href="'.url('admin/user/roles').'">add roles</a> for classifying users, 
+               <a href="'.url('admin/user/user').'">assign users to roles</a> and
+               <a href="'.url('admin/user/permissions').'">assign permissions</a> for the cv content to 
+               those roles.  For a simple setup, allow anonymous users access to view organism content and 
+               allow the site administrator all other permissions.</p></li>';
+      $text .= '<li><b>Loading of Ontologies/Controlled Vocabularies</b>: You can access this loader at '.
+        l('Admin->Tripal Management->Tripal CV->Add/Update Ontology With OBO File', 'admin/tripal/tripal_cv/obo_loader')
+        .'. This loader allows you to choose from a list of common ontologies or
+        enter the URL or location to an OBO file. Even the list of common
+        ontologies is using a URL ensuring you get the most up to date ontology.</p>';
+      $text .= '<p>This loader adds a Tripal Job which then waits in a queue to
+        be launched. To launch Tripal Jobs either navidate to the root of your
+        drupal installation and execute "php sites/all/modules/tripal/tripal_core/
+        tripal_launch_jobs.php <drupal user>" or set up a cron job (See user manual
+        for more details).</p>';
+      $text .= '<p>NOTE: in some cases, community developed ontologies for your
+        data may not yet be developed. In this case, it is suggested that you begin
+        developement of an ontology using one of the online tools. You might find
+        that many researchers are trying to deal with the same data and are willing
+        to help you in this endevor. You can '.l('create a controlled vocabulary','admin/tripal/tripal_cv/add_cv').' and '
+        . l('add terms to it', 'admin/tripal/tripal_cv/add_cvterm') .' to provide functionality to your site while you are waiting
+        for the ontology to be developed.</p></li>';
+    $text .= '</ol>';
   
   $text .= '<h3>Features of this Module:</h3>';
-  $text .= '<b>'.l('Load an already Existing Ontology/Controlled Vocabulary', 'admin/tripal/tripal_cv/obo_loader').'</b>';
-  $text .= '<p>This module provides an ontology loader to load already existing
-  	ontologies into chado. You can access this loader at '.
-  	l('Admin->Tripal Management->Tripal CV->Add/Update Ontology With OBO File', 'admin/tripal/tripal_cv/obo_loader')
-  	.'. This loader allows you to choose from a list of common ontologies or
-  	enter the URL or location to an OBO file. Even the list of common
-  	ontologies is using a URL ensuring you get the most up to date ontology.</p>';
-  $text .= '<p>This loader adds a Tripal Job which then waits in a queue to
-  	be launched. To launch Tripal Jobs either navidate to the root of your
-  	drupal installation and execute "php sites/all/modules/tripal/tripal_core/
-  	tripal_launch_jobs.php <drupal user>" or set up a cron job (See user manual
-  	for more details).</p>';
-  
-  $text .= '<b>Create/Update/Delete A Controlled Vocaulbulary</b>';
-  $text .= '<p>As mentioned above, there are some cases where you might need 
-  	to create your own controlled vocabulary. To do this go to '.
-  	l('Admin->Tripal Management->Tripal CV->Add a Controlled Vocabulary','admin/tripal/tripal_cv/add_cv')
-  	.' and fill out the form provided.</p>';
-  $text .= '<p>Sometimes you might want to update or even delete an already
-  	existing controlled vocabulary. To Update/Delete a controlled vocabulary
-  	go to '.l('Admin->Tripal Management->Tripal CV->Update/Delete Controlled Vocabulary', 'admin/tripal/tripal_cv/edit_cv')
-  	.', select the existing controlled vocabulary you want to modify and then 
-  	edit it as desired. This only modifies the name, description of a
-  	controlled vocabulary. See the next section for adding, removing, editing
-  	the term a controlled vocabulary contains.</p>';
-  
-  $text .= '<b>Create a Controlled Vocaulbulary Term</b>';
-  $text .= '<p>To Add a term to an already existing controlled vocabulary
-  	go to '.l('Admin->Tripal Management->Tripal CV->Add a Controlled Vocabulary Term','admin/tripal/tripal_cv/add_cvterm')
-  	.', select the controlled vocabulary you want to add terms to and then fill
-  	out the form.</p>';
-  
+  $text .= '<p>Aside from the data loading described above, the Tripal Controlled Vocabulary (CV) module also provides the following functionality:</p>';
+    $text .= '<ul>';  
+      $text .= '<li><b>Create/Update/Delete A Controlled Vocaulbulary</b>: to create your own controlled vocabulary go to '.
+        l('Admin->Tripal Management->Tripal CV->Add a Controlled Vocabulary','admin/tripal/tripal_cv/add_cv')
+        .' and fill out the form provided.To Update/Delete a controlled vocabulary
+        go to '.l('Admin->Tripal Management->Tripal CV->Update/Delete Controlled Vocabulary', 'admin/tripal/tripal_cv/edit_cv')
+        .', select the existing controlled vocabulary you want to modify and then 
+        edit it as desired. This only modifies the name, description of a
+        controlled vocabulary. See the next section for adding, removing, editing
+        the term a controlled vocabulary contains.</li>';
+      
+      $text .= '<li><b>Create a Controlled Vocaulbulary Term</b>: To Add a term to an already existing controlled vocabulary
+        go to '.l('Admin->Tripal Management->Tripal CV->Add a Controlled Vocabulary Term','admin/tripal/tripal_cv/add_cvterm')
+        .', select the controlled vocabulary you want to add terms to and then fill
+        out the form.</li>';
+      $text .= '<li><b>Controlled Vocabulary Term Browser</b>: This module provides a '.l('basic listing','admin/tripal/tripal_cv/list_cvterms').' of controlled vocabulry terms for
+              for all vocabularies currently in chado. It does not require indexing for Drupal searching but relies on Drupal Views. 
+              <a href="http://drupal.org/project/views">Drupal Views</a> must be installed.</li>';
+      $text .= '<li><p><b>Integration with Drupal Views</b>: <a href="http://drupal.org/project/views">Drupal Views</a> is
+              a powerful tool that allows the site administrator to create lists or basic searching forms of Chado content.
+              It provides a graphical interface within Drupal to allow the site admin to directly query the Chado database
+              and create custom lists without PHP programming or customization of Tripal source code.  Views can also
+              be created to filter content that has not yet been synced with Druapl in order to protect access to non
+              published data (only works if Chado was installed using Tripal).  You can see a list of available pre-existing
+              Views <a href="'.url('admin/build/views/').'">here</a>, as well as create your own. </p></li>';
+    $text .= '</ul>';  
   return $text;
 }
 

+ 23 - 9
tripal_db/tripal_db.module

@@ -89,22 +89,36 @@ function tripal_db_module_description_page() {
       $text .= '<li>'.l('Database References Listing', 'admin/tripal/tripal_db/list_dbxrefs').'</li>';
     $text .= '</ul>';
     
-  $text .= '<h3>Description:</h3>';
+  $text .= '<h3>Module Description:</h3>';
   $text .= '<p>The Tripal DB Module provides functionality for linking the data in your Tripal Website with other biological websites out there. Essentially you register an enternal database with your website and then associate any of your data (usually sequence features) with that external database by providing the accession for your data in the other database. If the other database is online and you provided a URL prefix when you registered the external database with your site then there will be a link on the details page for your data that takes the user to the same record in the external database.</p>';
 
-  $text .= '<h3>Post Installation Instructions:</h3>';
-  $text .= '<p>Simply register any external databases with data pertinent to your site. Then as you load in your data, create database references linking your data to the external database.</p>';
+  $text .= '<h3>Setup Instructions:</h3>';
+  $text .= '<ol>';
+  $text .= '<li><p><b>Set Permissions</b>: The feature module supports the Drupal user permissions interface for 
+               controlling access to feature content and functions. These permissions include viewing, 
+               creating, editing or administering of
+               feature content. The default is that only the original site administrator has these 
+               permissions.  You can <a href="'.url('admin/user/roles').'">add roles</a> for classifying users, 
+               <a href="'.url('admin/user/user').'">assign users to roles</a> and
+               <a href="'.url('admin/user/permissions').'">assign permissions</a> for the feature content to 
+               those roles.  For a simple setup, allow anonymous users access to view organism content and 
+               allow the site administrator all other permissions.</p></li>';
+  $text .= '<li><b>Register any external databases</b> with data pertinent to your site.</li>';
+  $text .= '<li><b>Create Database References</b>: Then as you load in your data, create database references linking your data to the external database.</li>';
+  $text .= '</ol>';
   
   
   $text .= '<h3>Features of this Module:</h3>';
-  $text .= '<b>Add/Register External Databases</b>';
-  $text .= '<p>By entering the name and any additional details into the <a href="tripal_db/add_db">add database form</a> you register an external database with your website. This allows you to specify that a sequence feature or other data is also stored in an external database. This is escpecially useful if the external database may contain additional details not stored in yours. If the external database is online you can even provide a URL prefix which will automatically link any data in your website to theirs via a web link.</p>';
+  $text .= '<ul>';
+  $text .= '<li><b>Add/Register External Databases</b>:';
+  $text .= 'By entering the name and any additional details into the <a href="tripal_db/add_db">add database form</a> you register an external database with your website. This allows you to specify that a sequence feature or other data is also stored in an external database. This is escpecially useful if the external database may contain additional details not stored in yours. If the external database is online you can even provide a URL prefix which will automatically link any data in your website to theirs via a web link.</li>';
   
-  $text .= '<b>Update/Delete External Databases</b>';
-  $text .= '<p>To edit the details of an external database record or to delete an already existing external database, go to the <a href="tripal_db/edit_db">Update/Delete DBs form</a>. This will allow you to change details or enter new details.</p>';
+  $text .= '<li><b>Update/Delete External Databases</b>';
+  $text .= 'To edit the details of an external database record or to delete an already existing external database, go to the <a href="tripal_db/edit_db">Update/Delete DBs form</a>. This will allow you to change details or enter new details.</li>';
 
-  $text .= '<b>List all External Database References</b>';
-  $text .= '<p>If you have views installed, there will be a link to a default listing of all database references currently in your database. This listing can be accessed <a href="tripal_db/list_dbxrefs">here</a>. It requires the Drupal Module Views version 2 to be installed (<a href="http://drupal.org/project/views">Drupal Views</a>)</p>';
+  $text .= '<li><b>List all External Database References</b>';
+  $text .= 'If you have views installed, there will be a link to a default listing of all database references currently in your database. This listing can be accessed <a href="tripal_db/list_dbxrefs">here</a>. It requires the Drupal Module Views version 2 to be installed (<a href="http://drupal.org/project/views">Drupal Views</a>)</li>';
+  $text .= '</ul>';  
   
   return $text;
 }

+ 35 - 6
tripal_library/tripal_library.module

@@ -142,15 +142,44 @@ function tripal_library_views_api() {
 function tripal_library_module_description_page() {
   $text = '';
   
-  $text .= '<h3>Description:</h3>';
-  $text .= '<p>TODO: Basic Description of this module including mention/link to the chado module</p>';
-
-  $text .= '<h3>Post Installation Instructions:</h3>';
-  $text .= '<p>TODO: Describe any post installation intructions here. You shouldalways include setting user permissions.</p>';
+  $text .= '<h3>Module Description:</h3>';
+  $text .= '<p>The Tripal Library module is an interface for the Chado Library module which groups features (sequences) into genetic libraries. 
+    This module provides support for visualization of "library" pages, editing and updating.</p>';
+
+  $text .= '<h3>Setup Instructions:</h3>';
+  $text .= '<ol>';
+  $text .= '<li><p><b>Set Permissions</b>: The library module supports the Drupal user permissions interface for 
+               controlling access to library content and functions. These permissions include viewing, 
+               creating, editing or administering of
+               library content. The default is that only the original site administrator has these 
+               permissions.  You can <a href="'.url('admin/user/roles').'">add roles</a> for classifying users, 
+               <a href="'.url('admin/user/user').'">assign users to roles</a> and
+               <a href="'.url('admin/user/permissions').'">assign permissions</a> for the library content to 
+               those roles.  For a simple setup, allow anonymous users access to view organism content and 
+               allow the site administrator all other permissions.</p></li>';
+  $text .= '<li><p><b>Sync any Existing Libraries</b>: Near the top of the '.l('Library Configuration page','admin/tripal/tripal_library/configuration').' there is 
+              a Sync Libraries section which provides list of libraries currently in chado which can be sync\'d. 
+              Simply select the libraries you would like to create Drupal/Tripal pages for and click Sync Libraries.</p></li>';          
+  $text .= '</ol>';
   
   
   $text .= '<h3>Features of this Module:</h3>';
-  $text .= '<p>TODO: Discuss the Features of this module including links. Some features to consider are creating content, details pages/node content, editing/deleteing, basic listings and vies integration. See admin/tripal/tripal_stock for an example.</p>';
+  $text .= '<ul>';
+    $text .= '<li><b>Add/Edit/Delete Libraries</b>: Libraries with no associated features can be created '.l('here', 'node/add/chado-library').' but it is 
+              recommended to create the library using the feature loader. For example, when you load FASTA files using the Tripal loader you are
+              given the option of specifying a library for all created features. Existing Libraries (regardless of the method used to create them) can be 
+              edited or deleted by clicking the Edit tab at the top of the Library Page.</li>';  
+    $text .= '<li><p><b>Integration with Drupal Views</b>: <a href="http://drupal.org/project/views">Drupal Views</a> is
+              a powerful tool that allows the site administrator to create lists or basic searching forms of Chado content.
+              It provides a graphical interface within Drupal to allow the site admin to directly query the Chado database
+              and create custom lists without PHP programming or customization of Tripal source code.  Views can also
+              be created to filter content that has not yet been synced with Druapl in order to protect access to non
+              published data (only works if Chado was installed using Tripal).  You can see a list of available pre-existing
+              Views <a href="'.url('admin/build/views/').'">here</a>, as well as create your own. </p></li>';  
+    $text .= '<li><b>Basic Listing</b>: This module provides a basic <a href="'.url('libraries').'">library display 
+              tool</a> for finding or listing libraries in Chado. It does not require indexing for Drupal searching but relies
+              on Drupal Views.  <a href="http://drupal.org/project/views">Drupal Views</a> must be installed.</li>';  
+  $text .= '</ul>';
   
   return $text;
 }

+ 32 - 29
tripal_stock/tripal_stock-administration.inc

@@ -18,62 +18,65 @@ function tripal_stock_module_description_page() {
       $text .= '<li>'.l('Stock Listing', 'stocks').'</li>';
     $text .= '</ul>';
     
-  $text .= '<h3>Description:</h3>';
+  $text .= '<h3>Module Description:</h3>';
   //================================================================================
   $text .= '<p>The Tripal Stock Module provides functionality for adding, editing, deleting and accessing chado stocks. The stock module was designed to store information about stock collections in a laboratory. What is called a stock could also be called a strain or an accession. There is a lot in common between a Drosophila stock and a Saccharomyces strain and an Arabidopsis line. They all come from some taxon, have genotypes, physical locations in the lab, some conceivable relationship with a publication, some conceivable relationship with a sequence feature (such as a transgene), and could be described by some ontology term. For more information about the chado Stock Module <a href="http://gmod.org/wiki/Chado_Stock_Module">see the GMOD Wiki Page</a></p>';
   
-  $text .= '<h3>Post Installation Steps:</h3>';
+  $text .= '<h3>Setup Instructions:</h3>';
   //================================================================================
-  $text .= '<p>Since at the time of this modules developement there is no accepted ontology for describing stocks, their properties and relationships, this module allows you to select the controlled vocabularies (CVs) in your Chado Database you would like to govern these data.</p>';
-  $text .= '<b>To Set the Controlled Vocabularies for Stocks:</b>';
-    $text .= '<ol>';
-      $text .= '<li>Ensure your Controlled Vocabulary is in Chado</li>';
-      $text .= '<ol type="i">';
-        $text .= '<li>Load your Ontology into Chado using the <a href="tripal_cv/ontology_loader">Tripal Ontology Loader</a></li>';
-        $text .= '<li> Create your ontology from scratch by first <a href="tripal_cv/add_cv">creating a controlled vocabulary</a> and then <a href="tripal_cv/add_cvterm">adding terms to it</a>.</li>';
-      $text .= '</ol>';
-    $text .= '<li>Then go to the <a href="tripal_stock/configuration">Configuration Page for Stocks</a> and, in the "Set Stock Controlled Vocabularies" Fieldset, select the Controlled Vocaulary name for Stock Types, Stock Properties and Stock Relationship Types.</li>';
+  $text .= '<ol>';
+  $text .= '<li><b>Set Ontologies</b>: Since at the time of this modules developement there is no accepted ontology for 
+            describing stocks, their properties and relationships, this module allows you to select the controlled 
+            vocabularies (CVs) in your Chado Database you would like to govern these data. To Set the Controlled Vocabularies for Stocks: 
+            First, ensure your Controlled Vocabulary is in Chado. This can be done by either loading an existing Ontology into Chado using 
+            the <a href="tripal_cv/ontology_loader">Tripal Ontology Loader</a> OR create your ontology from scratch by first 
+            <a href="tripal_cv/add_cv">creating a controlled vocabulary</a> and then <a href="tripal_cv/add_cvterm">adding terms to it</a>.
+            Then go to the <a href="tripal_stock/configuration">Configuration Page for Stocks</a> and, in the "Set Stock Controlled Vocabularies" Fieldset, 
+            select the Controlled Vocaulary name for Stock Types, Stock Properties and Stock Relationship Types.</li>';
       $text .= '<ol type="i">';
         $text .= '<li>Stock Types: When you are creating stocks, the type of each stock must be indicated. This might include "DNA extraction", "Individual Plant/Animal" or even "Progeny Population".</li>';
         $text .= '<li>Stock Properties: This module also allows you to assign properties to any stock. Each property has a type and a value where type is required an value is not. Therefore, if you want to say that a stock was grown at 23 degrees Celcius then the Type would be "temperature grown at" and the value would be 23 degrees Celcius. As such the Stock Properties controlled vocabulary might include "temperature grown at", "diet", "extraction date", "stock location", etc.</li>';
         $text .= '<li>Stock Relationship Types: You can also specify relationships between stocks. For example, a stock of type="DNA extraction" (Stock 1a) is related to the stock of type="Individual Plant/Animal" (Stock 1) that it was extracted from. Thus you might specify the relationship Stock 1 is the source material for Stock 1a where the relationship type is "is the source material for". As such Stock Relationship Types might include "is the source material for", "is maternal parent of", "is individual of population", etc.</li>';
       $text .= '</ol>';
-    $text .= '</ol>';
   
-  $text .= '<p>This module also provides <b>User Permissions</b> to control which users or groups of users (roles) can view/access stock content (access chado_stock content), create stocks (create chado_stock content), edit or delete stocks (edit chado_stock content or delete chado_stock content). The default is that only the original administration account has these permissions. To allow additional users/roles any combination of the above permissions:</p>';
-  $text .= '<ol>';
-    $text .= '<li><a href="../user/roles">Add Roles</a> to provide permissions to. For example, you might want a "View Tripal Stock Content" and a "Manage Tripal Stock Content" Role. If you only want to provide permissions based on whether the user is logged in (authenticated) or not (anonymous) then you don\'t need to create roles.</li>';
-    $text .= '<li><a href="../user/permissions">Assign permissions</a> to roles. Specically focus on those mentioned above, then for each permission add a checkmark to the rolw (columns) that you want to have this permission.</li>';
-    $text .= '<li><a href="../user/user">Assign Users Roles</a>. This is what gives a given user the set of permissions associated with a given role. Notice that you can assign more than one role to a user and that each user is "Authenticated" by default. A user has permission is any of his/her roles have that permission.</li>';
-  $text .= '</ol>';
-  
-  $text .= '<p>Another important step, <b>if you chado database already contains stocks, is to sync\' Chado with Drupal</b>. This creates Drupal Content including detail pages for each stock (known as nodes in Drupal). To sync\' Chado with Drupal simply go to the <a href="tripal_stock/configuration">Configuration Page for Stocks</a> and in the "Sync Stocks" Fieldset select the Organisms whose associated stocks you would like to sync. If this list doesn\'t contain an organism which you know is in Chado go to the Organism Configuration Page and make sure it is sync\'d with Drupal.</p>';
+  $text .= '<li><p><b>Set Permissions</b>: The stock module supports the Drupal user permissions interface for 
+               controlling access to stock content and functions. These permissions include viewing, 
+               creating, editing or administering of
+               stock content. The default is that only the original site administrator has these 
+               permissions.  You can <a href="'.url('admin/user/roles').'">add roles</a> for classifying users, 
+               <a href="'.url('admin/user/user').'">assign users to roles</a> and
+               <a href="'.url('admin/user/permissions').'">assign permissions</a> for the stock content to 
+               those roles.  For a simple setup, allow anonymous users access to view organism content and 
+               allow the site administrator all other permissions.</p></li>';
   
+  $text .= '<li><b>Sync Stocks</b>: if you chado database already contains stocks, they need to be sync\'d with Drupal</b>. This creates Drupal Content including detail pages for each stock (known as nodes in Drupal). To sync\' Chado with Drupal simply go to the <a href="tripal_stock/configuration">Configuration Page for Stocks</a> and in the "Sync Stocks" Fieldset select the Organisms whose associated stocks you would like to sync. If this list doesn\'t contain an organism which you know is in Chado go to the Organism Configuration Page and make sure it is sync\'d with Drupal.</p>';
+  $text .= '</ol>';  
   $text .= '<h3>Features of this Module:</h3>';
   //================================================================================
-  $text .= '<b><a href="../../node/add/chado_stock">Create a Generic Stock:</a></b>';
+  $text .= '<ul>';
+  $text .= '<li><b><a href="../../node/add/chado_stock">Create a Generic Stock:</a></b>';
   $text .= '<p>This allows you to create content in your drupal and chado for a stock (only the unique stock identifier is duplicated). A Generic Stock must have a unique name, a type and an organism. In addition, you can optionally supply a more human-readable name, a primary database reference and even a short description. The Create Generic Stock form is a multistep form with the first step creating the Basic stock (stored in the stock table). All the remaining steps are optional and descriptions of each follow:</p>';
       $text .= '<ol type="i">';
         $text .= '<li>The Next Step is to Add Properties to the newly created stock. Properties allow you to specify additional details about a given stock. Since the types of properties you can add are goverened by a controlled vocaulary that you can create, you have complete control over what additional properties you want to allow.</li>';
         $text .= '<li>Then you can Add External Database References. A Database Reference can be thought of as a synonym for the current stock where you want to specify a source for that synonym. The source would then be thought of as the database where a database can either be online and provide automatic linking out to the synonymous record or offline and simply be a text name of the source. To create a database reference with a given source you must first add the database to chado <a href="tripal_db/add_db">here</a>.</li>';
         $text .= '<li>Finally you can Add Relationships between Stocks. This allows you to specify, for example, the source material of a stock or one of it\'s parents. To create a relationship between your newly added stock and another stock, the other stock must first be created as this one was. Also, since the types of relationships is governed by a controlled vocabulary, just like with properties you have complete control over which relationships you want to allow. Once you click "Finish" you will be re-directed to the Details Page of the new Stock.</li>';
-      $text .= '</ol>';
+      $text .= '</ol></li>';
       
-  $text .= '<b>Details Page of a Stock:</b>';
+  $text .= '<li><b>Details Page of a Stock:</b>';
   $text .= '<p>Each stock get\'s it\'s own page on this website. This page is meant to give an overall picture of the stock including listing the basic details, as well as, all properties, database references and relationships. To understand where it is -All page content in Drupal is known as a node and is given a unique identifier or nid. Thus every drupal page has a path of node/<nid>. You can get to the Details page for a given stock from either of the stock listings described below.</p>';
   $text .= '<p>If you want to customize the look of the stock Details page simply copy the PHP/HTML template node-chado_stock.tpl.php from theme_tripal to the base theme you are currently using. Then edit it as desired. There are plans to integrate this details page with Drupal Panels which will provide a much more user-friendly and no-programming-needed method to customize this page.</p>';
   
-  $text .= '<b>Adding/Updating/Deleting Stocks and their Properties, Database References and Relationships:</b>';
+  $text .= '<li><b>Adding/Updating/Deleting Stocks and their Properties, Database References and Relationships:</b>';
   $text .= '<p>The Stock Details Page also acts as a landing pad for updating/deleting stocks. To <b>update a stock</b>, go to the stocks details page and click on the Edit tab near the top of the page. This tab will only be visable if you have permission to edit chado stock content (See post installation steps above for information on setting user permissions). If you want to <b>delete a stock</b>, click the Edit tab and then near the bottom of the form, click the Delete button. This will delete the entire stock including it\'s properties, database references and any relationships including it.</p>';
   $text .= '<p>To <b>update/delete a given property of a stock</b>, click the "Edit Properties" Tab near the top of the stock details page. This form provides a listing of all existing properties for the given stock with form elements allowing you to change their value. After editing the properties you wanted to, simply click the "Update Properties" button to update all the properties for that stock. To delete a given property simply click the "Delete" Button beside the property you want to delete. You cannot undo this action! To <b>add a property to the given stock</b> simply fill out the "Add Property" form at the bottom of the "Edit Properties" Tab.</p>';
-  $text .= '<p><b>Adding, updating and deleting Database References and Relationships</b> for a given stock is exactly the same as the method for properties. To edit Database References, click the "Edit DB References" tab and to add/edit/update stock relationships, click the "Edit Relationships" tab.</p>';
+  $text .= '<p><b>Adding, updating and deleting Database References and Relationships</b> for a given stock is exactly the same as the method for properties. To edit Database References, click the "Edit DB References" tab and to add/edit/update stock relationships, click the "Edit Relationships" tab.</p></li>';
   
-  $text .= '<b><a href="../../stocks">Basic Listing of Stocks:</a></b>';
-  $text .= '<p>This module also provides a basic listing of all stocks currently sync\'d with Drupal. To access this listing, there should be a Stocks Primary Menu item which links you to <a href="../../stocks">this page</a>. This page lists each stock on it\'s own row and provides a link to each stock by clicking on it\'s name. Currently there is no way to easily customize this listing.</p>';
+  $text .= '<li><b><a href="../../stocks">Basic Listing of Stocks:</a></b>';
+  $text .= '<p>This module also provides a basic listing of all stocks currently sync\'d with Drupal. To access this listing, there should be a Stocks Primary Menu item which links you to <a href="../../stocks">this page</a>. This page lists each stock on it\'s own row and provides a link to each stock by clicking on it\'s name. Currently there is no way to easily customize this listing.</p></li>';
   
-  $text .= '<b><a href="../build/views/">Flexible Listing of Stocks using Drupal Views:</a></b>';
+  $text .= '<li><b><a href="../build/views/">Flexible Listing of Stocks using Drupal Views:</a></b>';
   $text .= '<p>In order to access a more flexible listing of stocks you must first install the <a href="http://drupal.org/project/views">Drupal Views2 module</a>. You should then be able to access the default views <a href="../build/views/">here</a>. Essentially, Views is a module which allows you to create custom SQL queries completely through the web interface without knowing SQL. Furthermore, it also does some formatting of the results allowing you to display them as HTML lists, tables or grids. You can also expose filters to the user to let them customize the results they see and even implement various sorting.</p>';
-  $text .= '<p>To use one of the Default Views simply click "Enable" and then "Edit" to change it to show exactly what you want. To view the current listing simply clikc "View Page" at the top of the Edit user interface. There are a number of good tutorials out there for Views2, any of which can be used to help you create your own custom listings of biological content. (Note: there aren\'t any tutorials specifically for tripal content but any tutorial for Views2 will show you how to use the views interface.</p>';
+  $text .= '<p>To use one of the Default Views simply click "Enable" and then "Edit" to change it to show exactly what you want. To view the current listing simply clikc "View Page" at the top of the Edit user interface. There are a number of good tutorials out there for Views2, any of which can be used to help you create your own custom listings of biological content. (Note: there aren\'t any tutorials specifically for tripal content but any tutorial for Views2 will show you how to use the views interface.</p></li>';
   
   
   return $text;