X-Git-Url: http://git.ieval.ro/?a=blobdiff_plain;f=redis-to-postgres;h=e744c05f4a430c9c3744098fc6dd404d7e7b8e1d;hb=08b6a201ffd2a61d6ab8193c079511842df8ebac;hp=330d5a6e0cee6c140d62fc8b30443089eadc5de9;hpb=9364b433cd9e4514740a16c0d9a3df499d68eda3;p=gruntmaster-data.git diff --git a/redis-to-postgres b/redis-to-postgres index 330d5a6..e744c05 100755 --- a/redis-to-postgres +++ b/redis-to-postgres @@ -12,6 +12,7 @@ for (users) { id => $_, name => user_name, email => user_email, + phone => user_phone, town => user_town, university => user_university, level => user_level, @@ -52,6 +53,26 @@ for (contests) { }); local $Gruntmaster::OldData::contest = $_; for (problems) { + eval { + my $meta = problem_meta; + $db->problems->create({ + id => $_, + author => problem_author, + generator => problem_generator() // $meta->{generator}, + judge => problem_judge() // $meta->{judge}, + level => problem_level, + name => problem_name, + olimit => problem_olimit() // $meta->{olimit}, + owner => problem_owner, + private => (problem_private() ? 1 : 0), + runner => problem_runner() // $meta->{runner}, + statement => problem_statement, + testcnt => problem_testcnt() // $meta->{testcnt}, + timeout => problem_timeout() // $meta->{timeout}, + (problem_runner() // $meta->{runner}) eq 'File' ? (tests => encode_json $meta->{tests}) : (), + exists $meta->{files} ? (versource => $meta->{files}{ver}{content}, verformat => $meta->{files}{ver}{format}) : () + }) + }; $db->contest_problems->create({ contest => $Gruntmaster::OldData::contest, problem => $_,