summaryrefslogtreecommitdiff
path: root/server
AgeCommit message (Collapse)Author
2015-12-23Prolog: pass aux. code to problem's test functionTimotej Lazar
This allows us to simplify individual problem test functions.
2015-12-11Only try monkey.fix if we have edits for this problemTimotej Lazar
2015-12-11Use a more general method for extracting editsTimotej Lazar
This is a large overhaul of monkey code. Before, only edits within individual lines were tracked, which required a Prolog-specific method for splitting a program into a list of lines for every rule. In this version, modifications can be tracked within arbitrary code ranges. Ranges to be tracked are determined by selecting "interesting" subtrees in the AST of the starting code version. The new method is simpler, less language-dependent and easier to extend. The downside is that a program must be syntactically correct before we can attempt to fix it (the previous approach could handle programs with syntax errors in some cases). This commit also integrates a call to monkey.fix in prolog_session.hint, by running it if no other hint is found.
2015-12-11Add is_admin attribute to UserSessionTimotej Lazar
2015-12-11Remove unused importTimotej Lazar
2015-12-11Return is_admin field on loginTimotej Lazar
2015-12-10Add copyright infoTimotej Lazar
2015-11-18Handle Prolog engine exceptions in PrologSessionTimotej Lazar
2015-11-17Add optional style attribute for popup hintsTimotej Lazar
2015-11-09Bugfix: SAML login method did not return correct field for the e-mail.Aleš Smodiš
2015-11-06Fix SAML login: account upgrading is done via the email attribute, username ↵Aleš Smodiš
is eduPersonPrincipalName.
2015-11-02Modified the python server to support SAML account merge/upgrade upon first ↵Aleš Smodiš
SAML-type login of an existing user.
2015-10-21username added to login replayMarko Pušnik
2015-10-19Add method to return attempted/solved problems for given languageTimotej Lazar
2015-10-16Record solved problems in databaseTimotej Lazar
2015-10-16added gui_layout to the settings of the userRobert Zorko
2015-10-15Server-side support for SAML logout, sessions are destroyed only using an ↵Aleš Smodiš
AJAX call.
2015-10-15Implemented python login using authenticated SAML credentials.Aleš Smodiš
2015-10-15Process user stats in Python instead of SQLTimotej Lazar
Since we ultimately want to include events from traces (hints, tests) in statistics, SQL will be insufficient.
2015-10-15Store identifiers instead of IDs in Problem modelTimotej Lazar
2015-10-15Implemented minimum support for authentication via SAML with an addition of ↵Aleš Smodiš
a new daemon. TODO: python login with SAML credentials.
2015-10-14Use sandbox for testing Python programsTimotej Lazar
Use interpreter.py for running tests as well as interactive sessions. Signals are now sent with "sandbox <user> kill", so terminator is not needed anymore.
2015-10-13Use identifiers instead of names in get_statTimotej Lazar
Names have been removed from the database. This code will be updated when we decide what statistics to present to the user.
2015-10-13Store robot's address in settingsTimotej Lazar
2015-10-12Rename lang setting to gui_langTimotej Lazar
2015-10-12get basic user statisticsMarko Pušnik
2015-10-12Merge branch 'master' of ssh://212.235.189.51:22122/codeq-serverMarko Pušnik
2015-10-12attributes for profile pageMarko Pušnik
2015-10-12Remove unused server.problems.list_problemsTimotej Lazar
2015-10-12signup: +name +emailMarko Pušnik
2015-10-10Use a selector instead of polling Python interpreterTimotej Lazar
2015-10-08Reworked session handling.Aleš Smodiš
* All requests have a session ID, except for the initial create_session system messages. * User session can be in an authenticated or anonymous state. * In anonymous state it is not possible to perform user actions. * Logout has been implemented. * Sessions timeout and are cleared after a period of inactivity (1 hour). * Bugfixed the lang setting handling. * Renamed get_problem -> get_current_solution, return only the user's current solution, not the whole problem data.
2015-10-07Bugfix: make the as yet unimplemented meta protocol not generate errors on ↵Aleš Smodiš
the Python side.
2015-10-07Add a sandbox for Python interpreterTimotej Lazar
Switch to user "nobody" and set additional limits.
2015-10-06Test user's program before looking for hintsTimotej Lazar
2015-10-06Bugfix: revert to request.session.update_settings() in the Settings class.Aleš Smodiš
2015-10-06sign up, update last_loginMarko Pušnik
2015-10-06change passwordMarko Pušnik
2015-10-05Add logging to file to python server. Configure logfile paths from ↵Aleš Smodiš
environment variables CODEQ_SERVER_LOG and CODEQ_WEB_LOG.
2015-10-05Bugfix: correctly handle python-nodejs transport using bytes.Aleš Smodiš
2015-10-04Unification of language session implementations. Added load_problem and ↵Aleš Smodiš
end_problem actions so handlers get appropriately created and destroyed upon loading and unloading the problem solving screen.
2015-09-30Add RobotSessionTimotej Lazar
Currently it does nothing useful.
2015-09-29removed some debug output and actually enabled writing into the DBRobert Zorko
2015-09-29added support to save settings, currently only 'lang' will actually be ↵Robert Zorko
saved, since it is the only one already in the database
2015-09-29Merge branch 'master' of ssh://212.235.189.51:22122/codeq-serverRobert Zorko
2015-09-29added settings to the user session and the login function now also returns ↵Robert Zorko
those settings - currently only gui language is implemented. The create.sql script is updated for that change as well.
2015-09-29Add HintPopup and set hint_type on Hint* classesTimotej Lazar
2015-09-23Kill Python interpreter on excessive outputTimotej Lazar
2015-09-22Merge branch 'master' of ssh://212.235.189.51:22122/codeq-serverMartin
2015-09-22Fix an inconsequential typoTimotej Lazar