added survey group export feature

Instructors can now export survey groups. All the user has to do
is provide a name for the csv file, select the survey group set
they want and the desired fields (minimum one). Validation has
also been added to check that a file name is provided, a survey
group set is selected, and at least one field is chosen.

I've also updated the sql files to include permissions for using
survey groups' export.
Ticket #492

removed PHP GD dependency for the bar graphs in the survey
results summary. The colours may need some adjustments.
Slightly refactored the bar graphs for survey results

I have updated the background colour of the graphs and removed unused
attributes. Furthermore, I have removed bar.php and grad.png that
were used by the GD dependent graphs.
Modified some system tests

I have modified the student_survey system test due to the change
in the bar graphs using div's instead of an image. I have also
slightly changed the home tests to include the new link to the
survey group export
Filtered out usernames from groups/survey groups export

Some roles are not allowed to view usernames (eg. instructors).
However they are allowed to export groups and survey groups with
usernames as one of the fields. I have now filtered out the username
option if user does not have the permissions to view usernames.
Modified mixeval add/edit/copy to have to a self-eval section

This is the initial commit for Ticket #502. A new self-evaluation
section has been added to mixed evaluation. The questions in this
section are only for the evaluator.

The question sections were moved to the questions editor instead of
staying in the add view because we would need to echo the questions
editor element twice which will duplicate the functions.

I have modified the sql files to include a self_eval field
for the mixeval questions table to differentiate questions between
the two sections. I have also modified the numbering algorithm for
the questions so that the questions in the two sections are not
numbered together (eg. peer eval has 3 ques, self eval's first
question will be numbered 1 not 4). However behind the scenes the
questions from the two sections are numbered together (eg. from
the example above, the first self-eval question is numbered 4 in
the table).

I have also edited some model and controller tests to reflect the
changes made to mixed evaluation.
Modified mixeval view, form and indices for the new self-eval ques

I've modified mixeval's view to include a field on the top saying
whether self-evaluation questions were added. Additionally, I have
added a self-evaluation section to display the self-eval
questions. The peer evaluation and self evaluation sections only show if
the section contains questions.

I have also modified the mixed evaluation form to include self
evaluation questions. The modification also includes filling in
submitted answers for the self-evaluation questions. Modifications
have also been made to the validation to check whether all required
questions are answerd whether they are in the peer evaluation section
or the self evaluation section.

Lastly, I have added some virtual fields that counts how many questions
are in each section and modified the "score" of the evaluation mixeval
is the sum of the points scored in required peer evaluation questions.
Included self-eval to mixed evaluation results

In the instructor's detailed evaluation results view, an
accordion for self-evaluation will be created if any self-evaluation
questions are included in the evaluation. The results
are grouped by questions to allow easy comparisons.

In the instructor's basic evaluation results view, a table
for self-evaluation will be created if any self-evaluation Likert
questions are included in the evaluation. The grades displayed are
the averages of each question. This allow instructors to know
on average what the members gave themselves for the questions. Also
the question average is more useful than the sum of the marks the
students gave themselves.

In the students' detailed evaluation results view, a self-evaluation
section will be created if any self-evaluation questions are included
in the evaluation.

In the students' basic evaluation results view, a self-evaluation
section will be created if any self-evaluation Likert questions
are included.

Overall, I have also modified some of the elements to allow
customizations to the text to reflect the difference between
peer-evaluation and self-evaluation questions. Also I have added
a check whether the evaluation has peer-evaluation quesitons. This
is to introduce more flexibility where we can have evaluations
that only have self-evaluation questions.
More modifications on mixed evaluation for self-evaluation

I have removed scoredropdown from the question types for
self-evaluation because it does not make sense to have a
"distributing marks" questions for one person.

I have also removed self-evaluation questions from tutor's mixed
evaluation because in general the reflection questions are for the
students.

I have modfied export_csv to print out the self-evaluation results
in a separate table right below the peer evaluation results table.

I have modified export_pdf to include each student's self-evaluation
results right below their peer evaluation results.
Merge remote-tracking branch 'origin/dev' into ipeer3.2