scilifelab / portal Goto Github PK
View Code? Open in Web Editor NEWSciLifeLab Genomics Customer Portal
License: Other
SciLifeLab Genomics Customer Portal
License: Other
CONTENTS OF THIS FILE --------------------- * About Drupal * Configuration and features * Appearance * Developing for Drupal ABOUT DRUPAL ------------ Drupal is an open source content management platform supporting a variety of websites ranging from personal weblogs to large community-driven websites. For more information, see the Drupal website at http://drupal.org/, and join the Drupal community at http://drupal.org/community. Legal information about Drupal: * Know your rights when using Drupal: See LICENSE.txt in the same directory as this document. * Learn about the Drupal trademark and logo policy: http://drupal.com/trademark CONFIGURATION AND FEATURES -------------------------- Drupal core (what you get when you download and extract a drupal-x.y.tar.gz or drupal-x.y.zip file from http://drupal.org/project/drupal) has what you need to get started with your website. It includes several modules (extensions that add functionality) for common website features, such as managing content, user accounts, image uploading, and search. Core comes with many options that allow site-specific configuration. In addition to the core modules, there are thousands of contributed modules (for functionality not included with Drupal core) available for download. More about configuration: * Install, upgrade, and maintain Drupal: See INSTALL.txt and UPGRADE.txt in the same directory as this document. * Learn about how to use Drupal to create your site: http://drupal.org/documentation * Download contributed modules to sites/all/modules to extend Drupal's functionality: http://drupal.org/project/modules * See also: "Developing for Drupal" for writing your own modules, below. APPEARANCE ---------- In Drupal, the appearance of your site is set by the theme (themes are extensions that set fonts, colors, and layout). Drupal core comes with several themes. More themes are available for download, and you can also create your own custom theme. More about themes: * Download contributed themes to sites/all/themes to modify Drupal's appearance: http://drupal.org/project/themes * Develop your own theme: http://drupal.org/documentation/theme DEVELOPING FOR DRUPAL --------------------- Drupal contains an extensive API that allows you to add to and modify the functionality of your site. The API consists of "hooks", which allow modules to react to system events and customize Drupal's behavior, and functions that standardize common operations such as database queries and form generation. The flexible hook architecture means that you should never need to directly modify the files that come with Drupal core to achieve the functionality you want; instead, functionality modifications take the form of modules. When you need new functionality for your Drupal site, search for existing contributed modules. If you find a module that matches except for a bug or an additional needed feature, change the module and contribute your improvements back to the project in the form of a "patch". Create new custom modules only when nothing existing comes close to what you need. More about developing: * Search for existing contributed modules: http://drupal.org/project/modules * Contribute a patch: http://drupal.org/patch/submit * Develop your own module: http://drupal.org/developing/modules * Follow best practices: http://drupal.org/best-practices * Refer to the API documentation: http://api.drupal.org/api/drupal/7
What should the portal name be?
"National Genomics Infrastructure" ?
When I go into Edit mode for the Project page, the input field "Project description" has the text "This field has been disabled because you do not have sufficient permissions to edit it." What's up with this?
If a good version handling of order forms can be designed, then we should have it.
My concern is that projects using old versions of order forms must be visible (but not necessarily editable?) in the interface. Can this be verified?
Error message when doing Save on a new order form:
Notice: Undefined index: und in field_conditional_state_entity_view() (line 146 of /var/www/html/sites/all/modules/field-conditional-state/field_conditional_state.module).
The order form page I created: https://gallus.scilifelab.se/node/127
And what to do if user needs help?
Introduce a drop-down menu of my projects from My groups. (Olga)
Not quite sure exactly what mechanism is requested. A dynamic drop-down menu, or simply a list to be displayed in the My groups page? Implement the simplest, and we will look at it to decide if that is sufficient.
An input field for submitting the Excel file describing the samples is required.
Natural place would be the Order Form, I suppose?
Complication: The customer needs to add this file when the project is in a "locked" state (since the contract has been signed, presumably). How to allow this?
Links that lead to pages for doing stuff, such as "Create" and "Edit" should be buttons, not links.
The button "Create Order Form" should also be at the top of the order form list, in the home page.
And a link to "Create Order Form" should show up in left-hand side.
The account creation mechanism has two problems: It doesn't verify the email for the user, and it requires the coordinator to first set the password, and then send it by email to the user.
It may require too much work, but could the following be found in some Drupal module?
The coordinator gets an email from the system saying that user such-and-such wants to have an account. That email contains a link which essentially is "yes". Clicking it triggers a new email to go to the user, with a one-time link which requires the user to set the password.
Or something like this.
If too much work, then postpone till later versions.
Use the term "Genomics Portal" throughout.
Change at the top of each page.
Change wherever it occurs in the text.
User tests showed problems with how to associate a group with an account.
The user didn't understand what the "Group name" field was for, and what is should say.
Maybe the following explanation should be put there:
"The group name identifies your research group and typically looks like "Sven Svensson's group" or similar."
Strangely, I now see a number of error messages in the page for a project I created today: https://gallus.scilifelab.se/node/135
But NOT in the page for a project I created a few days ago: https://gallus.scilifelab.se/node/104
Could this be due to Illumina fields in Order Form?
I am trying to access a page as JSON by appending '.json', but I get an error:
EntityMetadataWrapperException: Invalid data value given. Be sure it matches the required data type and format. in EntityDrupalWrapper->set() (line 735 of /var/www/html/sites/all/modules/entity/includes/entity.wrapper.inc).
The website encountered an unexpected error. Please try again later.
The page is https://gallus.scilifelab.se/node/187.json and I am trying this as the ordinary user henrik.stranneheim.
I have converted boolean fields to singel checkbox.
When Creating a new field now the tabs for the different instruments are showing up since NO is default on a boolean.
Should I try to find a work around or just switch to select list with the "none" as default?
User is Confused about "permissions".
Change to Principal first and last name?
If the other account creation mechanism cannot be done, then a second field for verifying the correct email address (against typos) might be considered? Or is this a waste of time?
Remove the tab page, entirely. And put the selection of technology platform on the General Information tab page.
Ideally, the selection of technology platform should determine which tabs are visible for that Order Form.
Several of the pages have a lot of empty white space. I think we need to compactify those pages, so that we can reduce the amount of scrolling a user has to do.
For example, the Project view page has a lot of empty space between the field "Customer project ref" and the section "Order forms".
Also, several of the fields have the field title on one line, and the field value on the next. I think the title and the value should be on the same line, in general. (Maybe not when the value is a whole paragraph of text.)
The "Submit" button for project is now placed so that it is visible in both View and Edit modes of the project page. But it should be visible only when in View mode, shouldn't it?
User want autofill of principal name. And address
User want link to NCBI.
All yes/no should be drop-down menus. Do we need N/A at all anywhere?
Where should the information on number of samples be input?
Suggestion: In the General Information tab of the Order Form. (Not in sub-tabs, which is now the case.)
Links that lead to pages for doing stuff, such as "Create" and "Edit" should be buttons, not links.
In the Order Form page (when in View mode), there is a button "Add new comment" just before the Comments section. This seems totally unnecessary. The input fields for the comments are below anyway, so why waste space with this button?
See https://gallus.scilifelab.se/node/110 for an example.
Restructure the input fields in the Illumina order form according to Olof's prototype at http://form.jotformeu.com/form/22772520889362
User want Bioinformatic fields moved to Project.
I just created a new project, but it doesn't show up in the Home page?
It does exist, one finds it from the Group page.
The project: https://gallus.scilifelab.se/node/129
We need to have separate "sandbox" for test and devel and one production site that are separate.
And a process to devel, test and release changes to the production site.
This means that we need a place to host the production site.
User thinks two levels of "main" tabs is confusing.
It should be possible to lock a project, i.e. set its state to "locked" from "submitted". This signifies that the coordinators are considering it, and producing a contract based on it.
The customer must not be able to modify a project that is in state "locked".
The coordinators must be able to switch a project from "locked" to "preparation" if the customer needs to modify something.
Should be directly below fields "User name" and "Password". The links "create account" and "Request password" are not part of that logical collection of input fields.
From Usability test: If not in list is it not possible to run a project?
The customer should be allowed to specify that the project should be run at Uppsala or Stockholm.
The default should be "SciLifeLab decides" (better phrase?)
If the customer wants an impossible combination (e.g. SOLID run in Stockholm), then the coordinators will have to tell her by email. Don't try using any logic for this, would be too complicated.
What permissions should the "non logged in" user have.
It needs to read the book pages.
Should it also be able to see the different Groups?
Right now they can only see title of the group.
Any other permissions you want?
Usability problems with the concept "project" and "order"
There are tons of usability tools out there that can help us in the design and testing.
Perhaps this one could be something to look at?
Here are some more also:
http://www.usefulusability.com/24-usability-testing-tools/
It would be really nice to have a good usability test stats to aid the further devel of the site.
There needs to be a page to describe the different states to the users.
Perhaps the state name on the status page can be a link to the book?
Issue to discuss what different roles to have.
From the req:
ACCOUNT ROLES: Sysadmin (system operator), Administrator (SciLifeLab coordinators, etc), User (researchers, ordinary customers).
In drupal you have the standard Role
ANONYMOUS USER every user visiting page but not logged in
AUTHENTICATED USER every logged in user
ADMINISTRATOR The super user role.
The anonymous user and authenticated user roles is locked.
The administrator I can change name of.
So should I set up
USERS=AUTHENTICATED USER
Change Administrator to SUPER ADMIN?
then ad sysadmin and administrator?
or rename simply call adminsitrator from req PLATFORM ADMIN.
Or what should the role be?`
When user creating a new "content" the user has trouble understand the meaning of the "save" button.
Jag fixar sequencing setup så snart som Mattias & Olof komer överrens om Illumina setupen.
The input field "Proposed project start" is still present in the Edit mode of the Project page. I think it is meaningless, and should be removed.
Change it to "Expected date of sample delivery", in the hope that customers will be realistic. Ha!
In a wiki? Or some other medium?
The first page of the portal - the one reachable without having to log in - must contain a link to the description of the available services. So a potential customer can decide whether to register or not.
Is the PhiX input field necessary?
Argument against: We always use it for our (Stockholm) library preps, the customer has no say about this.
Argument for: When customer submits library prep (we don't make it), it may be without PhiX. We need that info.
User do not want that field.
Now we have a lot of fields. The fields have a machine name that is stored in the sql db. And a label that is showed on the site. Later on the the portal need to interact with different LIS/LIMS that connects and gather the data stored in the fields. The machine names will aid the and simplify the integration so having a good naming convention will help things.
so a naming convention that uniquely identifies the field should be a good starting point.
Any ideas or suggestions?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.