From afe8597200af47cd6086a698536c62296f14f401 Mon Sep 17 00:00:00 2001 From: Stephane Glondu <steph@glondu.net> Date: Thu, 15 Mar 2012 17:29:42 +0100 Subject: [PATCH] Automatic commit: replace auth by helios_auth everywhere git ls-files|xargs sed -i -r 's/(\W|^)auth(\W|$)/\1helios_auth\2/g' --- helios/fixtures/legacy-data.json | 2 +- helios/fixtures/users.json | 2 +- helios/migrations/0001_initial.py | 66 +++++++++---------- ...0002_v3_1_new_election_and_voter_fields.py | 40 +++++------ ...election_specific_voters_with_passwords.py | 40 +++++------ .../0004_v3_1_remove_voter_fields.py | 38 +++++------ .../migrations/0005_add_quarantine_fields.py | 38 +++++------ ..._unique_voter_voter_login_id_election__.py | 38 +++++------ ..._file_content__chg_field_voterfile_vote.py | 12 ++-- helios/models.py | 10 +-- helios/security.py | 2 +- helios/stats_views.py | 2 +- helios/templates/cast_done.html | 2 +- helios/templates/election_bboard.html | 2 +- helios/templates/election_view.html | 2 +- helios/templates/voters_list.html | 2 +- helios/test.py | 2 +- helios/tests.py | 6 +- helios/utils.py | 4 +- helios/view_utils.py | 2 +- helios/views.py | 12 ++-- helios_auth/__init__.py | 4 +- helios_auth/auth_systems/cas.py | 2 +- helios_auth/auth_systems/facebook.py | 6 +- .../auth_systems/facebookclient/__init__.py | 32 ++++----- .../djangofb/context_processors.py | 2 +- .../auth_systems/facebookclient/webappfb.py | 2 +- helios_auth/auth_systems/google.py | 2 +- helios_auth/auth_systems/linkedin.py | 4 +- helios_auth/auth_systems/live.py | 4 +- helios_auth/auth_systems/password.py | 12 ++-- helios_auth/auth_systems/twitter.py | 12 ++-- helios_auth/jsonfield.py | 2 +- helios_auth/migrations/0001_initial.py | 14 ++-- helios_auth/models.py | 6 +- helios_auth/security/__init__.py | 4 +- helios_auth/templates/index.html | 2 +- helios_auth/templates/login_box.html | 6 +- helios_auth/urls.py | 2 +- helios_auth/view_utils.py | 12 ++-- helios_auth/views.py | 44 ++++++------- reset.sh | 2 +- server_ui/glue.py | 2 +- server_ui/templates/base.html | 6 +- server_ui/templates/confirm.html | 2 +- server_ui/view_utils.py | 2 +- server_ui/views.py | 6 +- settings.py | 8 +-- urls.py | 4 +- 49 files changed, 265 insertions(+), 265 deletions(-) diff --git a/helios/fixtures/legacy-data.json b/helios/fixtures/legacy-data.json index 729aea0..9fb245d 100644 --- a/helios/fixtures/legacy-data.json +++ b/helios/fixtures/legacy-data.json @@ -1 +1 @@ -[{"pk": "0183b7531c15490727b9c8e0b675b43e", "model": "sessions.session", "fields": {"expire_date": "2011-01-13 11:02:45", "session_data": "gAJ9cQEoVQpjc3JmX3Rva2VucQJVJGZjY2YwZmQ1LWU5ODctNDZjZS1iYzQ4LTg5OGE1NDc5ZjMz\nNnEDVRBhdXRoX3N5c3RlbV9uYW1lcQRYBgAAAGdvb2dsZXEFVQ5GSUVMRFNfVE9fU0FWRXEGXXEH\nKFUObGFzdF92b3RlX2hhc2hxCFUOZW5jcnlwdGVkX3ZvdGVxCWVoCFgrAAAAWE1iczhtajhJTWZX\nVElyTWVlSisxSXRSdEgxZk16cnJkYXNkb1pnaHFtc3EKaAlOVQR1c2VycQt9cQwoVQRpbmZvcQ19\ncQ5VBHR5cGVxD1UGZ29vZ2xlcRBVBXRva2VucRF9cRJVB3VzZXJfaWRxE1gUAAAAYmVuYWRpZGE3\nN0BnbWFpbC5jb21xFFUEbmFtZXEVWAkAAABCZW4gQWRpZGFxFnVVE2dvb2dsZV9yZWRpcmVjdF91\ncmxxF1UgaHR0cDovL2xvY2FsaG9zdDo4MDAwL2F1dGgvYWZ0ZXJxGHUuMWZlMjVjMDEzODA1NzY4\nNDdiNmI4YWNkZWUwMWNjMGU=\n"}}, {"pk": 1, "model": "south.migrationhistory", "fields": {"applied": "2010-12-30 19:15:49", "app_name": "helios", "migration": "0001_initial"}}, {"pk": 2, "model": "south.migrationhistory", "fields": {"applied": "2010-12-30 19:16:11", "app_name": "auth", "migration": "0001_initial"}}, {"pk": 3, "model": "south.migrationhistory", "fields": {"applied": "2010-12-30 19:38:53", "app_name": "helios", "migration": "0002_v3_1_new_election_and_voter_fields"}}, {"pk": 4, "model": "south.migrationhistory", "fields": {"applied": "2010-12-30 19:39:20", "app_name": "helios", "migration": "0003_v3_1_election_specific_voters_with_passwords"}}, {"pk": 5, "model": "south.migrationhistory", "fields": {"applied": "2010-12-30 19:39:20", "app_name": "helios", "migration": "0004_v3_1_remove_voter_fields"}}, {"pk": 6, "model": "south.migrationhistory", "fields": {"applied": "2010-12-30 21:46:47", "app_name": "helios", "migration": "0005_add_quarantine_fields"}}, {"pk": 1, "model": "auth.user", "fields": {"info": "{\"password\": \"test\"}", "user_id": "benadida", "name": null, "user_type": "password", "token": null, "admin_p": false}}, {"pk": 4, "model": "auth.user", "fields": {"info": "{\"password\": \"XEVEjStfuE\", \"email\": \"ben6@adida.net\", \"name\": \"Ben6 Adida\"}", "user_id": "benadida6", "name": null, "user_type": "password", "token": null, "admin_p": false}}, {"pk": 5, "model": "auth.user", "fields": {"info": "{\"password\": \"0VuIzsa55u\", \"email\": \"ben7@adida.net\", \"name\": \"Ben7 Adida\"}", "user_id": "benadida7", "name": null, "user_type": "password", "token": null, "admin_p": false}}, {"pk": 6, "model": "auth.user", "fields": {"info": "{\"password\": \"zeVDg9nVvh\", \"email\": \"ben8@adida.net\", \"name\": \"Ben8 Adida\"}", "user_id": "benadida8", "name": null, "user_type": "password", "token": null, "admin_p": false}}, {"pk": 3, "model": "auth.user", "fields": {"info": "{\"password\": \"PPvPcBBryM\", \"email\": \"ben5@adida.net\", \"name\": \"Ben5 Adida\"}", "user_id": "benadida5", "name": null, "user_type": "password", "token": null, "admin_p": false}}, {"pk": 2, "model": "auth.user", "fields": {"info": "{}", "user_id": "benadida77@gmail.com", "name": "Ben Adida", "user_type": "google", "token": "{}", "admin_p": false}}, {"pk": 1, "model": "helios.election", "fields": {"voting_extended_until": null, "voters_hash": null, "featured_p": false, "use_voter_aliases": false, "tallying_started_at": "2010-12-30 19:03:11", "result": "[[0, 1, 0]]", "questions": "[{\"short_name\": \"Who should be president?\", \"choice_type\": \"approval\", \"max\": 1, \"min\": 0, \"question\": \"Who should be president?\", \"answers\": [\"Alice\", \"Bob\", \"Carol\"], \"answer_urls\": [null, null, null], \"tally_type\": \"homomorphic\", \"result_type\": \"absolute\"}]", "voting_ended_at": "2010-12-30 19:03:11", "registration_starts_at": null, "cast_url": "http://localhost:8000/helios/elections/40a17486-1446-11e0-b9ec-000c293e7de1/cast", "uuid": "40a17486-1446-11e0-b9ec-000c293e7de1", "frozen_at": "2010-12-30 18:55:42", "encrypted_tally": "{\"tally\": [[{\"alpha\": \"15062600351346883972644127892142714662189690871997002860160637836650441602030002705292055229350425245338714989971657783718286387745755778873544353920087069923141558465357271862261518288218334688506364799707392611362040662936902886469092037687001218417001577231464467922549631334100757297338618251748139729964707680811665800662927067491530779427912712421946148997429722751848164735658063110170464608816677293362933159695162487677068539309388988631969504494216829146823387001428360245160741367464561945072440282718021512357600566368531501739912137646478149487913635218325375327436398982687476464381274863173109390437849\", \"beta\": \"6472995696323449481761379982226987034204671847521280173533677671800764813049225642765553350990023913842413237138994293559420693903825662068604923689287872415577051463244183680254762458861919465321996886414454802637697911164542594307379406907302286457272189409620028333641643603878239149886302645287899635957429604613780743866054390180292694767552575334318878336726590042824600404857161528120082698503521888035480554396084523318391075327196170151150017179381762494738064997274952677744062885141254893966429696256647729546503511682475164521390015781174526069960261297951569915608591534531987906457590536635969717163017\"}, {\"alpha\": \"11797341915537555476557075594487134344289042577013466250418375376870630384349304048606714535795936426595938010963895455399050161847596126018739059592043662385972723145765773438163543846757186579416754475057309926173301818771413977291177987529471270631093815995658047599876124666043571805566412571721352681563641013117117243443491777387530741635619864702428158939093621034585067648994491883088363814536499351174599683663609451037205821783508958092566632960335955512240723655648985350951040171933874789527124767479182628124872969346846033060536497255225965817197189441217993019374945875453159578803014379028048622459368\", \"beta\": \"386603140585949274399765676343225021646823837172562587253483824685501371966765713673896074723205590686430303065790627082336695351775735361487007145740387773299912412488939936995100076554454597585434254473760210886435540378154175229046102719209082777247996500554646776006238400469042159470627068048421003860492049429142953418171122350175145645388713766049983218504277012766151062997680731741281725276122652751673876491143973427719469741677235999333427047365824639448121152225086556575371711180660842261974231132982964433856082981951267337588132752488463797969108960908305840938831642503490689882743196654196818586153\"}, {\"alpha\": \"7447770187339878295993449894291489887048199488149047386007365531030411994514567126890793337686510960379699552037310153457712846898600825987067491960636123972698743027902536803313122852695834128081255673149298326081316468803638688172240293429021646722622760387789968485271656707408704015670936653538239976073086700354395913211645218184935464859540952979791617557615121821844458125737697969356374053675571600427328257161894058513558896927219556279567567385006610345737415318941082511663411931234031736832574296988507123506658418745859239378750962490244083867984466678345522975899669428543817167372204402768140225673899\", \"beta\": \"10295246473033461943758026743789596939350509698742039970315795780884125241389014443917881746198829796581532942808439005949283365779117479508160568372317140210333337134392167953936839851684527674630949696312674486436145278957756779729314631536871251419768935267394895633742684422354002503367119198418556623190787101973681238871389852824878971817620102647834188822139335392978368269353706515717026270035928407046024774088938767955368659221078544511315129408774954569106438025396242766355252175143630049198659910228039324058865260398970570436187058310718047632290796972241903647262820809895006837802544169684965043985217\"}]], \"num_tallied\": 1}", "use_advanced_audit_features": true, "result_proof": null, "voting_started_at": null, "archived_at": null, "tallying_finished_at": null, "openreg": false, "private_key": null, "description": "test1", "short_name": "test1", "eligibility": "[{\"auth_system\": \"password\"}]", "tallying_starts_at": null, "public_key": "{\"y\": \"10209996196141455592954150806595590302779517452973425513133143319891192812034378656046616286290215682512560281253780168350968078321298815359346112476103153663350347613425264137270664984993821707972591603600995748437418960965874687695519139184521329861807151368087170846679616051889191498465971754449242176181010116247194146889436200685706775658837872315899212063389435005791600156232673825152649290306522408636413180876447424057387927560622286232455842226141935616726284027452689619467330786904141326022591988410271656808992679125143841590661998535192138516435006042519265859141061154934003554664919161933342577547196\", \"p\": \"16328632084933010002384055033805457329601614771185955389739167309086214800406465799038583634953752941675645562182498120750264980492381375579367675648771293800310370964745767014243638518442553823973482995267304044326777047662957480269391322789378384619428596446446984694306187644767462460965622580087564339212631775817895958409016676398975671266179637898557687317076177218843233150695157881061257053019133078545928983562221396313169622475509818442661047018436264806901023966236718367204710755935899013750306107738002364137917426595737403871114187750804346564731250609196846638183903982387884578266136503697493474682071\", \"q\": \"61329566248342901292543872769978950870633559608669337131139375508370458778917\", \"g\": \"14887492224963187634282421537186040801304008017743492304481737382571933937568724473847106029915040150784031882206090286938661464458896494215273989547889201144857352611058572236578734319505128042602372864570426550855201448111746579871811249114781674309062693442442368697449970648232621880001709535143047913661432883287150003429802392229361583608686643243349727791976247247948618930423866180410558458272606627111270040091203073580238905303994472202930783207472394578498507764703191288249547659899997131166130259700604433891232298182348403175947450284433411265966789131024573629546048637848902243503970966798589660808533\"}", "name": "test1", "admin": 2, "voting_starts_at": null, "created_at": "2010-12-30 10:54:38", "tallies_combined_at": null, "modified_at": "2010-12-30 10:54:38", "voting_ends_at": null, "datatype": "legacy/Election", "complaint_period_ends_at": null, "private_p": false, "election_type": "election"}}, {"pk": 1, "model": "helios.electionlog", "fields": {"at": "2010-12-30 10:54:54", "election": 1, "log": "voter file added"}}, {"pk": 2, "model": "helios.electionlog", "fields": {"at": "2010-12-30 10:55:00", "election": 1, "log": "Trustee Ben for Helios added"}}, {"pk": 3, "model": "helios.electionlog", "fields": {"at": "2010-12-30 10:55:42", "election": 1, "log": "frozen"}}, {"pk": 4, "model": "helios.electionlog", "fields": {"at": "2010-12-30 11:03:19", "election": 1, "log": "decryptions combined"}}, {"pk": 1, "model": "helios.voterfile", "fields": {"processing_finished_at": "2010-12-30 18:54:56", "uploaded_at": "2010-12-30 10:54:54", "num_voters": 5, "election": 1, "processing_started_at": "2010-12-30 18:54:55", "voter_file": "voters/2010/12/30/4d0d7ebc-15bb-418e-a0b5-8664d39ffa3b"}}, {"pk": 2, "model": "helios.voter", "fields": {"voter_password": "XEVEjStfuE", "uuid": "b3e41a74-4eed-447a-ac4e-cb894be680d9", "voter_name": "Ben6 Adida", "cast_at": null, "alias": null, "user": null, "vote_hash": null, "vote": null, "voter_login_id": "benadida6", "voter_email": "ben6@adida.net", "election": 1}}, {"pk": 3, "model": "helios.voter", "fields": {"voter_password": "0VuIzsa55u", "uuid": "b5cdd49b-7af3-43a9-bf34-152171bf0652", "voter_name": "Ben7 Adida", "cast_at": null, "alias": null, "user": null, "vote_hash": null, "vote": null, "voter_login_id": "benadida7", "voter_email": "ben7@adida.net", "election": 1}}, {"pk": 4, "model": "helios.voter", "fields": {"voter_password": "zeVDg9nVvh", "uuid": "96817ccc-d3b1-491c-9d68-36823a7a2bc4", "voter_name": "Ben8 Adida", "cast_at": null, "alias": null, "user": null, "vote_hash": null, "vote": null, "voter_login_id": "benadida8", "voter_email": "ben8@adida.net", "election": 1}}, {"pk": 1, "model": "helios.voter", "fields": {"voter_password": "PPvPcBBryM", "uuid": "36cab4d2-baf5-4fe6-9316-072bb10a08c5", "voter_name": "Ben5 Adida", "cast_at": "2010-12-30 11:00:30", "alias": null, "user": null, "vote_hash": "XMbs8mj8IMfWTIrMeeJ+1ItRtH1fMzrrdasdoZghqms", "vote": "{\"election_uuid\": \"40a17486-1446-11e0-b9ec-000c293e7de1\", \"election_hash\": \"wGPQnqnzBpmLeg8ZB/G0rgaamGvKVFgpT4/2FC71eas\", \"answers\": [{\"individual_proofs\": [[{\"challenge\": \"23448591784697000965545892324810629021639188373890683375910722335603622138784\", \"commitment\": {\"A\": \"1327628315723512592520092253022813954345811633817636321461327060815545431155754937699838371154948609511354231571272734503300322585026951636488920956523182672551950508490901322669811500895795175060810855625517092521213959126412117064377577760401592872465535448172644182461127758421070618332647280802438572454887787753087987686539965858891402894686998695861222063954822180068263112093268485916206196256374623420279908267672537703676874160139012850887547187383627177839126080326025123801997793732363652198095799909736237665197875170635639393513721452483230488642329871180916160042706552228810447375634551726254656114763\", \"B\": \"12651568238845905580146731093834003015541538197207885155377455570739647990731115642751855805978467077164118286855210767852487616446322130095137621482323196926762880646794844146925307934365718148556573920173586397697773728633505957174913806486333337487959223801388056302406238391017110214970693170684905765736096447201061693237410864568109046693126318808709805263697684626506219123708702408188380145135728153486516784168065844265720923488323409470042004070431410287600339033480425760464353921573676904433306313575237328448962058283857065990334095968743257379436762608765126482553431856338280756915065371130629259833162\"}, \"response\": \"66493654499921179654532076483238061065663825681855720849779479385099600294313\"}, {\"challenge\": \"37880974463645900326997980445921662466504953698747123205418028110401621340654\", \"commitment\": {\"A\": \"11552929741476814953885315683074098091103686548723516644080511046344121473871033010567541553035322173556104503663355802077291981196609620866458230652243307217336007047616125327287070248174361784734712728026360142208785301081379339577768097307553636351066758204606067852151212136995659736744834225212988266174017146842207029877054309186325359774975424315721603313081735790862906915249402187712643905438535309489072993517767409706459101240509405310623022029051651543866804596815439974638899195343422656827451325150692577702439948168203545390620539243767450955282190940402874138622075234269541622364721163286312878986819\", \"B\": \"6329155122062386904033442921423622622147079320347985844514869678788894694074332416611216748665105335359984602999437980698165855519323382681940366700676670498208841397103135301080915366474717831310061726860563362512863054679720700745282422030751124929023148055891934168562161714897501755587548350311398415869238331591154762453581309273381060323924517084418705908387965117516648560910526056603787772182229010906379630932318790167674451145975401275892801196642017344744355317898337463259457545132684347381953362982206865463253584571797006969916721595812159297162226956121662150241089497749712184668941945856515753434583\"}, \"response\": \"40889333838309328628442514979337814302799996449096507610282589928128273346086\"}], [{\"challenge\": \"40838246976619679982594438537447216988156147901010823503082500261133646034510\", \"commitment\": {\"A\": \"7240746395320606545924818303659574319731549234658716095013175472134123703846899818801089836111944641913350487758554287853491345581528557228542267116521090883813722627295383932822769534799988278169007346954354698811871351725370440703413817798869596540753172040591555804833259365722924628910597267412752971983973099286825908075100328469111189817054592233683568840797349280531135103664238151283794163518180822346478272123336746353940825490958866084369836609057210749809398951837726387799726276790721200488289943034865614991602894496358416379863548515397992901340896111968521210996058255256378234826527429341875890954325\", \"B\": \"14360814363564966405360021475222916339844629619455505817116073918028706786972236957526914330535717891973121029017380447473243935691715817749628813781646994519966103065028319818105397007744775285803075583457045600071289431042427536327509229154776384742741650503755680262226870011332151033945281301751333262151726293854136550805821221030867126626766560317685475484257992652848092598642512843265151823549960069639481061805952898584109547777019233310314201053646724130044711428631467139016994288332446095561699988285289270533446820493287643560434681811441184380345762034361885379181472264724965318003694917150246630023674\"}, \"response\": \"32379791452380146747129274667434627989796700807725842979905511921680817488679\"}, {\"challenge\": \"20491319271723221309949434233793977920795005824525427253918918169889913365948\", \"commitment\": {\"A\": \"6249667490277917583936607671102592882918409694303397387989581556482216126368122870614174165168740657006080095721379286684627119686099144826994894421926931467679822839419322398647946960779534495161082693858576168084013669468576163333253692335647695009660221751877286994683778685376405300629183143917010861517571099244272102834874222190843107273758742282622844732413516515908311253461817503881880906475522033363486911306119901292379625845416065240305301099338032541569024074975755933787525224425365617538732320213780187894141782809997859364333867835879203172909290216548191092783192574241137558974282359389187012817936\", \"B\": \"9499112746840921330025828862313195732714191736836796633477362065391580604500493351834623100000344332078541514598802122394938451327827696985631359354944865315435059206970465412862653037841742495026775379978363725663046523355370934979512948437818087270242744189398042668453563383598014440609263097809464386385377086332856379919768588734445308364251682197283847623282458135779287780459446653554844992689069349147999153323163756277510532664441506670090088963764802003962950921958456938625791579175155142656425066425712635117449924858147057327726380659546270500021282831889329912110494100841744786647915029857722991309102\"}, \"response\": \"39881801996843034570752413025736783442023073187463315853656384552364386913204\"}], [{\"challenge\": \"43431479061562930090004922442036754678483107275940751848024215992244886343747\", \"commitment\": {\"A\": \"1270055805719836261622958888846330804638817542205324650711349305977867087050906657167153321020114772132749332223143260695672249760406765833706496501796398284185540978966142644793196415879582663634100399321765040877162609041210292145512334466387459015610330751980306692864978147960861903003237265674845225826944921430476569228083860123295338768898464268768775686988874386876491097663989219624354211056385565966546828280075259494577713355009759282723250554257459428057560064051666367969921490582847014422432367039519517232418691823528688817355615892442875262952742672229933819705525867755926536935560184321181516217379\", \"B\": \"13811522002661403186656524643430184156362000458283631439050985694312056363976044427831818381014131146340935786418326708412866699221278668866350666842389724034155760660894321943027467083331876166785006218286375036218444948819814596653763067984475369256295354933061577137097160951738083556909805645133853825940451449785781714550102697948235131202099972030859604297053943782339850793154555482391232163147687158127829886062127554444845944041291007323918037270588313481883735696620885738492026672168539201247500513346410668408666264612310030986871682638524348434676219620439025304901534964705268662494748119236717258099310\"}, \"response\": \"68215094834895276844550802238341145638824175199551659406303368956211949019503\"}, {\"challenge\": \"17898087186779971202538950329371565185390706224154511062911955610649418098256\", \"commitment\": {\"A\": \"16251021783044516022530162510375731932396648925368808712144817845848470716066393905811822426515609168500968326025256059316597643395704568352891213427889062095727127211219607578386713220335138915526877263124257302083955232156553595937713784723082774095373922632480472464901263941851494794480244523914002369035976941551571562910539299973363373412124246141349684130390967911024709851584467209367384820033560446424080918421522113745512797475927149175846813620541575734629166934167572438415311057397875639759338459893698446812426686906493776199091997749807282590016592114718036464843222410363303324286514483401243517098919\", \"B\": \"9483189503031797184976054292751366999555646527059016081956041648897995571468703398849876134946030247727478260873291252669051128569609552216633210758991866713731253996106528668922437684662967028333743543723894078765207823156516048642619579666660693500547400247407308606819581427394295455460458346347446248548838123178569076367824541766927409254628932336490038849157667580037659205992868562238203915995106969796461422020992210022408234454951887179002927611195937432114888768429519791384688384245388025993512601880012525058553458889191281451543418313914273707609311661844227170291960451878015798149129666533670296683517\"}, \"response\": \"47055844704389989755328398564006162909789771315920760315962495933998560250733\"}]], \"overall_proof\": [{\"challenge\": \"14587781194424783137694975950944071336748097811762793023623705015943510494552\", \"commitment\": {\"A\": \"11593378736638379859476775929688252170819242231855060210332622890983118661213958218991328012112542344165110060653955477862332902364013355270331585307350836027305693084343561363596117247575763301618955255170102018700927311116945258908959677914951048142668496968817639199967846759461114146494910430269004689842295064898502764043961362230065062223655965446278805522690709858469443935060447482793234174374235433634507565188762427880141668958856980254433467181819491301709455993757318818296773777159501430136689906726672323092132282409154366580941018678697554417366994112669108598689024668589495123456818830843512906688674\", \"B\": \"6379878600728866669455031437323245344320246967984106758624844794330223775770709971892885303077113095171244444904758039226852919548659167744967797598018751391128142643083704135304989646690792324977602130349887992894633902005083938751838673945697901818639788591489261000492127878191120874014218509575385139468955836491832775486846669297951819245355910267593674016013045608418799063731780991830273296297140501488361490123025242728516520596396511820557273154073549773137685859445237736658014736282257083785882592166052534473053026176229098422203905619846459265738362859679862270988452361683451440803788568300444425725175\"}, \"response\": \"57513547772483453232756705213109182719476244252346216384127374345628889196096\"}, {\"challenge\": \"46741785053918118154848896820085464925671239027904886965218169217385735685771\", \"commitment\": {\"A\": \"8204099266024548592165743253907256572259400626005080824257116250969358821428112881032863623964166849785668551229406355286331359382634645331769101479707037517762099546430650908723276543754693368667455271684098578897792561127595300435264359824607588383195142495500531186753506846013740973638543612200232991915060100923911599859500311703096013807954456945016402631348805272474587501849245909953322033069478471703687863323228444459450106965362000564995708127666403510905079448219106951983281749823638097211982776775954943253919166013537911768350016675170734384371608477815080223985654367562217980167192298657253999287104\", \"B\": \"2870925086149903448423030452890138076763256297233796443410101050851365017111617371281647635397879913615671700563753122736263788389912942674145908268974274781408271597144293339914556735961791632045526319083758346010694220520356446602340804483574622023918899449342764522287734704426777877738073462099395887561928549640312439461237876516443031500318277387173900015089048124812884318044173411856620353670467475274153454979432630814692546812357937029924995748136485935268693300760939824081854392825744349598782084275966413211045473867793489286328546376469050207965843422968984817754530256920363908998162047893721357153520\"}, \"response\": \"91469090683979584694909954417958870883208499630036944330450898325302781677348\"}], \"choices\": [{\"alpha\": \"15062600351346883972644127892142714662189690871997002860160637836650441602030002705292055229350425245338714989971657783718286387745755778873544353920087069923141558465357271862261518288218334688506364799707392611362040662936902886469092037687001218417001577231464467922549631334100757297338618251748139729964707680811665800662927067491530779427912712421946148997429722751848164735658063110170464608816677293362933159695162487677068539309388988631969504494216829146823387001428360245160741367464561945072440282718021512357600566368531501739912137646478149487913635218325375327436398982687476464381274863173109390437849\", \"beta\": \"6472995696323449481761379982226987034204671847521280173533677671800764813049225642765553350990023913842413237138994293559420693903825662068604923689287872415577051463244183680254762458861919465321996886414454802637697911164542594307379406907302286457272189409620028333641643603878239149886302645287899635957429604613780743866054390180292694767552575334318878336726590042824600404857161528120082698503521888035480554396084523318391075327196170151150017179381762494738064997274952677744062885141254893966429696256647729546503511682475164521390015781174526069960261297951569915608591534531987906457590536635969717163017\"}, {\"alpha\": \"11797341915537555476557075594487134344289042577013466250418375376870630384349304048606714535795936426595938010963895455399050161847596126018739059592043662385972723145765773438163543846757186579416754475057309926173301818771413977291177987529471270631093815995658047599876124666043571805566412571721352681563641013117117243443491777387530741635619864702428158939093621034585067648994491883088363814536499351174599683663609451037205821783508958092566632960335955512240723655648985350951040171933874789527124767479182628124872969346846033060536497255225965817197189441217993019374945875453159578803014379028048622459368\", \"beta\": \"386603140585949274399765676343225021646823837172562587253483824685501371966765713673896074723205590686430303065790627082336695351775735361487007145740387773299912412488939936995100076554454597585434254473760210886435540378154175229046102719209082777247996500554646776006238400469042159470627068048421003860492049429142953418171122350175145645388713766049983218504277012766151062997680731741281725276122652751673876491143973427719469741677235999333427047365824639448121152225086556575371711180660842261974231132982964433856082981951267337588132752488463797969108960908305840938831642503490689882743196654196818586153\"}, {\"alpha\": \"7447770187339878295993449894291489887048199488149047386007365531030411994514567126890793337686510960379699552037310153457712846898600825987067491960636123972698743027902536803313122852695834128081255673149298326081316468803638688172240293429021646722622760387789968485271656707408704015670936653538239976073086700354395913211645218184935464859540952979791617557615121821844458125737697969356374053675571600427328257161894058513558896927219556279567567385006610345737415318941082511663411931234031736832574296988507123506658418745859239378750962490244083867984466678345522975899669428543817167372204402768140225673899\", \"beta\": \"10295246473033461943758026743789596939350509698742039970315795780884125241389014443917881746198829796581532942808439005949283365779117479508160568372317140210333337134392167953936839851684527674630949696312674486436145278957756779729314631536871251419768935267394895633742684422354002503367119198418556623190787101973681238871389852824878971817620102647834188822139335392978368269353706515717026270035928407046024774088938767955368659221078544511315129408774954569106438025396242766355252175143630049198659910228039324058865260398970570436187058310718047632290796972241903647262820809895006837802544169684965043985217\"}]}]}", "voter_login_id": "benadida5", "voter_email": "ben5@adida.net", "election": 1}}, {"pk": 1, "model": "helios.castvote", "fields": {"cast_at": "2010-12-30 11:00:30", "voter": 1, "quarantined_p": false, "invalidated_at": null, "verified_at": "2010-12-30 19:00:31", "vote_tinyhash": null, "released_from_quarantine_at": null, "vote_hash": "XMbs8mj8IMfWTIrMeeJ+1ItRtH1fMzrrdasdoZghqms", "vote": "{\"election_uuid\": \"40a17486-1446-11e0-b9ec-000c293e7de1\", \"election_hash\": \"wGPQnqnzBpmLeg8ZB/G0rgaamGvKVFgpT4/2FC71eas\", \"answers\": [{\"individual_proofs\": [[{\"challenge\": \"23448591784697000965545892324810629021639188373890683375910722335603622138784\", \"commitment\": {\"A\": \"1327628315723512592520092253022813954345811633817636321461327060815545431155754937699838371154948609511354231571272734503300322585026951636488920956523182672551950508490901322669811500895795175060810855625517092521213959126412117064377577760401592872465535448172644182461127758421070618332647280802438572454887787753087987686539965858891402894686998695861222063954822180068263112093268485916206196256374623420279908267672537703676874160139012850887547187383627177839126080326025123801997793732363652198095799909736237665197875170635639393513721452483230488642329871180916160042706552228810447375634551726254656114763\", \"B\": \"12651568238845905580146731093834003015541538197207885155377455570739647990731115642751855805978467077164118286855210767852487616446322130095137621482323196926762880646794844146925307934365718148556573920173586397697773728633505957174913806486333337487959223801388056302406238391017110214970693170684905765736096447201061693237410864568109046693126318808709805263697684626506219123708702408188380145135728153486516784168065844265720923488323409470042004070431410287600339033480425760464353921573676904433306313575237328448962058283857065990334095968743257379436762608765126482553431856338280756915065371130629259833162\"}, \"response\": \"66493654499921179654532076483238061065663825681855720849779479385099600294313\"}, {\"challenge\": \"37880974463645900326997980445921662466504953698747123205418028110401621340654\", \"commitment\": {\"A\": \"11552929741476814953885315683074098091103686548723516644080511046344121473871033010567541553035322173556104503663355802077291981196609620866458230652243307217336007047616125327287070248174361784734712728026360142208785301081379339577768097307553636351066758204606067852151212136995659736744834225212988266174017146842207029877054309186325359774975424315721603313081735790862906915249402187712643905438535309489072993517767409706459101240509405310623022029051651543866804596815439974638899195343422656827451325150692577702439948168203545390620539243767450955282190940402874138622075234269541622364721163286312878986819\", \"B\": \"6329155122062386904033442921423622622147079320347985844514869678788894694074332416611216748665105335359984602999437980698165855519323382681940366700676670498208841397103135301080915366474717831310061726860563362512863054679720700745282422030751124929023148055891934168562161714897501755587548350311398415869238331591154762453581309273381060323924517084418705908387965117516648560910526056603787772182229010906379630932318790167674451145975401275892801196642017344744355317898337463259457545132684347381953362982206865463253584571797006969916721595812159297162226956121662150241089497749712184668941945856515753434583\"}, \"response\": \"40889333838309328628442514979337814302799996449096507610282589928128273346086\"}], [{\"challenge\": \"40838246976619679982594438537447216988156147901010823503082500261133646034510\", \"commitment\": {\"A\": \"7240746395320606545924818303659574319731549234658716095013175472134123703846899818801089836111944641913350487758554287853491345581528557228542267116521090883813722627295383932822769534799988278169007346954354698811871351725370440703413817798869596540753172040591555804833259365722924628910597267412752971983973099286825908075100328469111189817054592233683568840797349280531135103664238151283794163518180822346478272123336746353940825490958866084369836609057210749809398951837726387799726276790721200488289943034865614991602894496358416379863548515397992901340896111968521210996058255256378234826527429341875890954325\", \"B\": \"14360814363564966405360021475222916339844629619455505817116073918028706786972236957526914330535717891973121029017380447473243935691715817749628813781646994519966103065028319818105397007744775285803075583457045600071289431042427536327509229154776384742741650503755680262226870011332151033945281301751333262151726293854136550805821221030867126626766560317685475484257992652848092598642512843265151823549960069639481061805952898584109547777019233310314201053646724130044711428631467139016994288332446095561699988285289270533446820493287643560434681811441184380345762034361885379181472264724965318003694917150246630023674\"}, \"response\": \"32379791452380146747129274667434627989796700807725842979905511921680817488679\"}, {\"challenge\": \"20491319271723221309949434233793977920795005824525427253918918169889913365948\", \"commitment\": {\"A\": \"6249667490277917583936607671102592882918409694303397387989581556482216126368122870614174165168740657006080095721379286684627119686099144826994894421926931467679822839419322398647946960779534495161082693858576168084013669468576163333253692335647695009660221751877286994683778685376405300629183143917010861517571099244272102834874222190843107273758742282622844732413516515908311253461817503881880906475522033363486911306119901292379625845416065240305301099338032541569024074975755933787525224425365617538732320213780187894141782809997859364333867835879203172909290216548191092783192574241137558974282359389187012817936\", \"B\": \"9499112746840921330025828862313195732714191736836796633477362065391580604500493351834623100000344332078541514598802122394938451327827696985631359354944865315435059206970465412862653037841742495026775379978363725663046523355370934979512948437818087270242744189398042668453563383598014440609263097809464386385377086332856379919768588734445308364251682197283847623282458135779287780459446653554844992689069349147999153323163756277510532664441506670090088963764802003962950921958456938625791579175155142656425066425712635117449924858147057327726380659546270500021282831889329912110494100841744786647915029857722991309102\"}, \"response\": \"39881801996843034570752413025736783442023073187463315853656384552364386913204\"}], [{\"challenge\": \"43431479061562930090004922442036754678483107275940751848024215992244886343747\", \"commitment\": {\"A\": \"1270055805719836261622958888846330804638817542205324650711349305977867087050906657167153321020114772132749332223143260695672249760406765833706496501796398284185540978966142644793196415879582663634100399321765040877162609041210292145512334466387459015610330751980306692864978147960861903003237265674845225826944921430476569228083860123295338768898464268768775686988874386876491097663989219624354211056385565966546828280075259494577713355009759282723250554257459428057560064051666367969921490582847014422432367039519517232418691823528688817355615892442875262952742672229933819705525867755926536935560184321181516217379\", \"B\": \"13811522002661403186656524643430184156362000458283631439050985694312056363976044427831818381014131146340935786418326708412866699221278668866350666842389724034155760660894321943027467083331876166785006218286375036218444948819814596653763067984475369256295354933061577137097160951738083556909805645133853825940451449785781714550102697948235131202099972030859604297053943782339850793154555482391232163147687158127829886062127554444845944041291007323918037270588313481883735696620885738492026672168539201247500513346410668408666264612310030986871682638524348434676219620439025304901534964705268662494748119236717258099310\"}, \"response\": \"68215094834895276844550802238341145638824175199551659406303368956211949019503\"}, {\"challenge\": \"17898087186779971202538950329371565185390706224154511062911955610649418098256\", \"commitment\": {\"A\": \"16251021783044516022530162510375731932396648925368808712144817845848470716066393905811822426515609168500968326025256059316597643395704568352891213427889062095727127211219607578386713220335138915526877263124257302083955232156553595937713784723082774095373922632480472464901263941851494794480244523914002369035976941551571562910539299973363373412124246141349684130390967911024709851584467209367384820033560446424080918421522113745512797475927149175846813620541575734629166934167572438415311057397875639759338459893698446812426686906493776199091997749807282590016592114718036464843222410363303324286514483401243517098919\", \"B\": \"9483189503031797184976054292751366999555646527059016081956041648897995571468703398849876134946030247727478260873291252669051128569609552216633210758991866713731253996106528668922437684662967028333743543723894078765207823156516048642619579666660693500547400247407308606819581427394295455460458346347446248548838123178569076367824541766927409254628932336490038849157667580037659205992868562238203915995106969796461422020992210022408234454951887179002927611195937432114888768429519791384688384245388025993512601880012525058553458889191281451543418313914273707609311661844227170291960451878015798149129666533670296683517\"}, \"response\": \"47055844704389989755328398564006162909789771315920760315962495933998560250733\"}]], \"overall_proof\": [{\"challenge\": \"14587781194424783137694975950944071336748097811762793023623705015943510494552\", \"commitment\": {\"A\": \"11593378736638379859476775929688252170819242231855060210332622890983118661213958218991328012112542344165110060653955477862332902364013355270331585307350836027305693084343561363596117247575763301618955255170102018700927311116945258908959677914951048142668496968817639199967846759461114146494910430269004689842295064898502764043961362230065062223655965446278805522690709858469443935060447482793234174374235433634507565188762427880141668958856980254433467181819491301709455993757318818296773777159501430136689906726672323092132282409154366580941018678697554417366994112669108598689024668589495123456818830843512906688674\", \"B\": \"6379878600728866669455031437323245344320246967984106758624844794330223775770709971892885303077113095171244444904758039226852919548659167744967797598018751391128142643083704135304989646690792324977602130349887992894633902005083938751838673945697901818639788591489261000492127878191120874014218509575385139468955836491832775486846669297951819245355910267593674016013045608418799063731780991830273296297140501488361490123025242728516520596396511820557273154073549773137685859445237736658014736282257083785882592166052534473053026176229098422203905619846459265738362859679862270988452361683451440803788568300444425725175\"}, \"response\": \"57513547772483453232756705213109182719476244252346216384127374345628889196096\"}, {\"challenge\": \"46741785053918118154848896820085464925671239027904886965218169217385735685771\", \"commitment\": {\"A\": \"8204099266024548592165743253907256572259400626005080824257116250969358821428112881032863623964166849785668551229406355286331359382634645331769101479707037517762099546430650908723276543754693368667455271684098578897792561127595300435264359824607588383195142495500531186753506846013740973638543612200232991915060100923911599859500311703096013807954456945016402631348805272474587501849245909953322033069478471703687863323228444459450106965362000564995708127666403510905079448219106951983281749823638097211982776775954943253919166013537911768350016675170734384371608477815080223985654367562217980167192298657253999287104\", \"B\": \"2870925086149903448423030452890138076763256297233796443410101050851365017111617371281647635397879913615671700563753122736263788389912942674145908268974274781408271597144293339914556735961791632045526319083758346010694220520356446602340804483574622023918899449342764522287734704426777877738073462099395887561928549640312439461237876516443031500318277387173900015089048124812884318044173411856620353670467475274153454979432630814692546812357937029924995748136485935268693300760939824081854392825744349598782084275966413211045473867793489286328546376469050207965843422968984817754530256920363908998162047893721357153520\"}, \"response\": \"91469090683979584694909954417958870883208499630036944330450898325302781677348\"}], \"choices\": [{\"alpha\": \"15062600351346883972644127892142714662189690871997002860160637836650441602030002705292055229350425245338714989971657783718286387745755778873544353920087069923141558465357271862261518288218334688506364799707392611362040662936902886469092037687001218417001577231464467922549631334100757297338618251748139729964707680811665800662927067491530779427912712421946148997429722751848164735658063110170464608816677293362933159695162487677068539309388988631969504494216829146823387001428360245160741367464561945072440282718021512357600566368531501739912137646478149487913635218325375327436398982687476464381274863173109390437849\", \"beta\": \"6472995696323449481761379982226987034204671847521280173533677671800764813049225642765553350990023913842413237138994293559420693903825662068604923689287872415577051463244183680254762458861919465321996886414454802637697911164542594307379406907302286457272189409620028333641643603878239149886302645287899635957429604613780743866054390180292694767552575334318878336726590042824600404857161528120082698503521888035480554396084523318391075327196170151150017179381762494738064997274952677744062885141254893966429696256647729546503511682475164521390015781174526069960261297951569915608591534531987906457590536635969717163017\"}, {\"alpha\": \"11797341915537555476557075594487134344289042577013466250418375376870630384349304048606714535795936426595938010963895455399050161847596126018739059592043662385972723145765773438163543846757186579416754475057309926173301818771413977291177987529471270631093815995658047599876124666043571805566412571721352681563641013117117243443491777387530741635619864702428158939093621034585067648994491883088363814536499351174599683663609451037205821783508958092566632960335955512240723655648985350951040171933874789527124767479182628124872969346846033060536497255225965817197189441217993019374945875453159578803014379028048622459368\", \"beta\": \"386603140585949274399765676343225021646823837172562587253483824685501371966765713673896074723205590686430303065790627082336695351775735361487007145740387773299912412488939936995100076554454597585434254473760210886435540378154175229046102719209082777247996500554646776006238400469042159470627068048421003860492049429142953418171122350175145645388713766049983218504277012766151062997680731741281725276122652751673876491143973427719469741677235999333427047365824639448121152225086556575371711180660842261974231132982964433856082981951267337588132752488463797969108960908305840938831642503490689882743196654196818586153\"}, {\"alpha\": \"7447770187339878295993449894291489887048199488149047386007365531030411994514567126890793337686510960379699552037310153457712846898600825987067491960636123972698743027902536803313122852695834128081255673149298326081316468803638688172240293429021646722622760387789968485271656707408704015670936653538239976073086700354395913211645218184935464859540952979791617557615121821844458125737697969356374053675571600427328257161894058513558896927219556279567567385006610345737415318941082511663411931234031736832574296988507123506658418745859239378750962490244083867984466678345522975899669428543817167372204402768140225673899\", \"beta\": \"10295246473033461943758026743789596939350509698742039970315795780884125241389014443917881746198829796581532942808439005949283365779117479508160568372317140210333337134392167953936839851684527674630949696312674486436145278957756779729314631536871251419768935267394895633742684422354002503367119198418556623190787101973681238871389852824878971817620102647834188822139335392978368269353706515717026270035928407046024774088938767955368659221078544511315129408774954569106438025396242766355252175143630049198659910228039324058865260398970570436187058310718047632290796972241903647262820809895006837802544169684965043985217\"}]}]}"}}, {"pk": 1, "model": "helios.trustee", "fields": {"public_key": "{\"y\": \"10209996196141455592954150806595590302779517452973425513133143319891192812034378656046616286290215682512560281253780168350968078321298815359346112476103153663350347613425264137270664984993821707972591603600995748437418960965874687695519139184521329861807151368087170846679616051889191498465971754449242176181010116247194146889436200685706775658837872315899212063389435005791600156232673825152649290306522408636413180876447424057387927560622286232455842226141935616726284027452689619467330786904141326022591988410271656808992679125143841590661998535192138516435006042519265859141061154934003554664919161933342577547196\", \"p\": \"16328632084933010002384055033805457329601614771185955389739167309086214800406465799038583634953752941675645562182498120750264980492381375579367675648771293800310370964745767014243638518442553823973482995267304044326777047662957480269391322789378384619428596446446984694306187644767462460965622580087564339212631775817895958409016676398975671266179637898557687317076177218843233150695157881061257053019133078545928983562221396313169622475509818442661047018436264806901023966236718367204710755935899013750306107738002364137917426595737403871114187750804346564731250609196846638183903982387884578266136503697493474682071\", \"q\": \"61329566248342901292543872769978950870633559608669337131139375508370458778917\", \"g\": \"14887492224963187634282421537186040801304008017743492304481737382571933937568724473847106029915040150784031882206090286938661464458896494215273989547889201144857352611058572236578734319505128042602372864570426550855201448111746579871811249114781674309062693442442368697449970648232621880001709535143047913661432883287150003429802392229361583608686643243349727791976247247948618930423866180410558458272606627111270040091203073580238905303994472202930783207472394578498507764703191288249547659899997131166130259700604433891232298182348403175947450284433411265966789131024573629546048637848902243503970966798589660808533\"}", "pok": "{\"challenge\": \"1332480086668557441201643372581202887936359529158\", \"commitment\": \"7293717602937930303539334035585992874848225578069230321020475395302271618251676625339394037113615768448191844038177138377398628710618534554579159024696839244259150329975275908657630895950271024845960009174103501808710068228131410574426743388071115904258299345649002261830811651722360713255177643626318539836219484536768879576493216269723082810883816923164505226562312363786695925147039779580512980526559772797170383031088424275717164298259873455954031483604235513390512830986257955559268237959148131455635082412955562162650368183295042919718548235596451502134150497646725301296162346004092475784579091583032361772546\", \"response\": \"36391699599264859021278138939148792146348548118365171047783454096022492035033\"}", "name": "Ben for Helios", "decryption_proofs": "[[{\"challenge\": \"1380551719414920400171525057971082717628333383331\", \"commitment\": {\"A\": \"7507017710713706541866854087239255878832243462282927934861869264579266153414135774039907501610333661411307392124516064716169762187793122422653392413694719341072929833428803311467184790384552952122962719439993321491850563305827711174757159530056482044086113086278819776836755900476312486344691968144982867821153845953505709371731535352078308509107142372383678069818043698670113799637374050281502657094511525050466016215603846575745518886258884256517535305086140932732185093382337472216944115745914507235107089359391149241488464243538039888427232320387045242147289454894324102498622240371772307962377543359644138050732\", \"B\": \"9380537358717287794361139802208298689612038093915331354273755926136271364418368655784719731999399724919985020788675784918253914203053520739646207663258321982296961284260527867979102137369345188902946846882488328401755614672409311174738591638094760071468127665833627085404365535363865725138469740172195165916006849929747492989908204997577576884613794053639111878642291186924488222075700172352004236504102819795276258902217943337913405984290899494969828003129050711264077492215521097345600028545889724146142447720830350928361819900593545829887714375518026393470442073999043111656408350218492657773508327008142722765323\"}, \"response\": \"14968183763730862563804542741411408992850421513002294375208895154010692113473\"}, {\"challenge\": \"928781902643353178142869485767256501013266757862\", \"commitment\": {\"A\": \"15633563423080526706419747992138418264348782035013504564013594194243510158773485945327967048961356486383215212483462348169538997687212412994065370129208651376716134738309040011956812348225502246726068743645442345760299758855171800338513471629907181869261235290967637848308843443030196462480968462064736152282506400094906707590048929424501814668795548146042465351489547617128013409539657112623382498325505218672820602470148627899073221474369783740192103073229959882697932789244332982166130368921202267521575861224848623085043804713412700008533796217785099336299831697244176527202186978470212364757532134819680354563148\", \"B\": \"12096486616787847940422910780868545368459722844257079241138940841283178564454214852156457535709117643371874960603512077501609448142224981337250893956754326973500016429330818806066472007235463129546869618768400286717676281057649118636738883493045882628597975596370121648765372944460751900559383299236537662147422350456179701023239887170947370958443802128313476878264884880050610028894804375661112294041896485336368667604232816382543157191078316625625754668916289488659228524702708688069886061853971910775735555019155194573765265940727358626391662769501006863366189078852671910748052355802446751747021021118425535805993\"}, \"response\": \"28211487355296799049673241288040839050179434119064067463499443482498217208519\"}, {\"challenge\": \"1185875285287724841734729620564063765892683320674\", \"commitment\": {\"A\": \"7001208902949083725612528497286173590963128243388233050364170894167119730650686852382051453769934272573826748192906372573117172855830955054429366729378203493623800707261267780120888516763713550790929472508859603645362641253784170132183853580904592671772431762071089997631711457767213127284054889939710921678409142902073069362109320972478847445503275495123009954969192201274037955597083943422722576587379742825967553563854890578564608501050212319484234660576151814389620150885481795600159904595945676049646628070476825084214555838090776625145999421406237953264094965910871533178888382695722903443177374943370529435835\", \"B\": \"9283256001439934493735625502538426523693868357198892770123498611555555299897475884431602692985751553635974299868188199546120099533813550264738209145580148682133736994277447303232404855460267466835171618461494856527451536401919045811368542455888163074798675752166973030905486052563091739924121583631082909857054169008129824182126348494239756670544488941688557994938824882239628149105470894355324069394350165968806256153572521355852908171187431792943362931378932369391344262912306194221041082329544009406130999320321982717816319748626422183292293407260745830456452071148377105696849366938448681719121826747318585394449\"}, \"response\": \"35940004930824655560273271912769310469877395464343390517827902063029021070522\"}]]", "secret": "cCckQxMt34gi", "election": 1, "public_key_hash": "hSeyI5ZlWhNshRfur8uhRHxqbi/vVqKGb4P+FdUnR8o", "secret_key": "{\"x\": \"16005388145081131844879702159816380093588036047451384431130259662992029443624026318970562260272120587261393284363542518569391452382369249932333676351315398477129891095120523003328480376873958075985143480062804837658107571391518376403590301476378514425362741872602623178825738994339324021624724807784600813090052134766237887122838918167022578896510027628605349253760682883849478673881175379345895010771593356545048012214886174088387364386859743113585615521057884719510571320329089457413362774250338248390404419684724069497574413459557247072960862781228007880248431226584871900019890901724707636999442425643478871203395\", \"public_key\": {\"y\": \"10209996196141455592954150806595590302779517452973425513133143319891192812034378656046616286290215682512560281253780168350968078321298815359346112476103153663350347613425264137270664984993821707972591603600995748437418960965874687695519139184521329861807151368087170846679616051889191498465971754449242176181010116247194146889436200685706775658837872315899212063389435005791600156232673825152649290306522408636413180876447424057387927560622286232455842226141935616726284027452689619467330786904141326022591988410271656808992679125143841590661998535192138516435006042519265859141061154934003554664919161933342577547196\", \"p\": \"16328632084933010002384055033805457329601614771185955389739167309086214800406465799038583634953752941675645562182498120750264980492381375579367675648771293800310370964745767014243638518442553823973482995267304044326777047662957480269391322789378384619428596446446984694306187644767462460965622580087564339212631775817895958409016676398975671266179637898557687317076177218843233150695157881061257053019133078545928983562221396313169622475509818442661047018436264806901023966236718367204710755935899013750306107738002364137917426595737403871114187750804346564731250609196846638183903982387884578266136503697493474682071\", \"q\": \"61329566248342901292543872769978950870633559608669337131139375508370458778917\", \"g\": \"14887492224963187634282421537186040801304008017743492304481737382571933937568724473847106029915040150784031882206090286938661464458896494215273989547889201144857352611058572236578734319505128042602372864570426550855201448111746579871811249114781674309062693442442368697449970648232621880001709535143047913661432883287150003429802392229361583608686643243349727791976247247948618930423866180410558458272606627111270040091203073580238905303994472202930783207472394578498507764703191288249547659899997131166130259700604433891232298182348403175947450284433411265966789131024573629546048637848902243503970966798589660808533\"}}", "decryption_factors": "[[\"6472995696323449481761379982226987034204671847521280173533677671800764813049225642765553350990023913842413237138994293559420693903825662068604923689287872415577051463244183680254762458861919465321996886414454802637697911164542594307379406907302286457272189409620028333641643603878239149886302645287899635957429604613780743866054390180292694767552575334318878336726590042824600404857161528120082698503521888035480554396084523318391075327196170151150017179381762494738064997274952677744062885141254893966429696256647729546503511682475164521390015781174526069960261297951569915608591534531987906457590536635969717163017\", \"4694987036530822221969862722934807245252033236096286470958607647670667339966405067211401183900486152849338828231866947753384000515948363917537698461367938226635095051908983060837577141637079223791250760708100706116554435071563140176091228666812675154652983071813350108415009127448215287774568670658220922979555810609621103674935794988428755665984799963804061832930765121869645042320772546611747793882117497557727049006950340697861932746306602015638014326057316264719067026691985946612284378220471949526380850668823330863033387059030694538020710485275895898243819680400129463078761698466522349987023411487281520474883\", \"10295246473033461943758026743789596939350509698742039970315795780884125241389014443917881746198829796581532942808439005949283365779117479508160568372317140210333337134392167953936839851684527674630949696312674486436145278957756779729314631536871251419768935267394895633742684422354002503367119198418556623190787101973681238871389852824878971817620102647834188822139335392978368269353706515717026270035928407046024774088938767955368659221078544511315129408774954569106438025396242766355252175143630049198659910228039324058865260398970570436187058310718047632290796972241903647262820809895006837802544169684965043985217\"]]", "email": "ben@adida.net", "uuid": "4269f398-0eae-4351-9027-c2d9ee1767c3"}}] \ No newline at end of file +[{"pk": "0183b7531c15490727b9c8e0b675b43e", "model": "sessions.session", "fields": {"expire_date": "2011-01-13 11:02:45", "session_data": "gAJ9cQEoVQpjc3JmX3Rva2VucQJVJGZjY2YwZmQ1LWU5ODctNDZjZS1iYzQ4LTg5OGE1NDc5ZjMz\nNnEDVRBhdXRoX3N5c3RlbV9uYW1lcQRYBgAAAGdvb2dsZXEFVQ5GSUVMRFNfVE9fU0FWRXEGXXEH\nKFUObGFzdF92b3RlX2hhc2hxCFUOZW5jcnlwdGVkX3ZvdGVxCWVoCFgrAAAAWE1iczhtajhJTWZX\nVElyTWVlSisxSXRSdEgxZk16cnJkYXNkb1pnaHFtc3EKaAlOVQR1c2VycQt9cQwoVQRpbmZvcQ19\ncQ5VBHR5cGVxD1UGZ29vZ2xlcRBVBXRva2VucRF9cRJVB3VzZXJfaWRxE1gUAAAAYmVuYWRpZGE3\nN0BnbWFpbC5jb21xFFUEbmFtZXEVWAkAAABCZW4gQWRpZGFxFnVVE2dvb2dsZV9yZWRpcmVjdF91\ncmxxF1UgaHR0cDovL2xvY2FsaG9zdDo4MDAwL2F1dGgvYWZ0ZXJxGHUuMWZlMjVjMDEzODA1NzY4\nNDdiNmI4YWNkZWUwMWNjMGU=\n"}}, {"pk": 1, "model": "south.migrationhistory", "fields": {"applied": "2010-12-30 19:15:49", "app_name": "helios", "migration": "0001_initial"}}, {"pk": 2, "model": "south.migrationhistory", "fields": {"applied": "2010-12-30 19:16:11", "app_name": "helios_auth", "migration": "0001_initial"}}, {"pk": 3, "model": "south.migrationhistory", "fields": {"applied": "2010-12-30 19:38:53", "app_name": "helios", "migration": "0002_v3_1_new_election_and_voter_fields"}}, {"pk": 4, "model": "south.migrationhistory", "fields": {"applied": "2010-12-30 19:39:20", "app_name": "helios", "migration": "0003_v3_1_election_specific_voters_with_passwords"}}, {"pk": 5, "model": "south.migrationhistory", "fields": {"applied": "2010-12-30 19:39:20", "app_name": "helios", "migration": "0004_v3_1_remove_voter_fields"}}, {"pk": 6, "model": "south.migrationhistory", "fields": {"applied": "2010-12-30 21:46:47", "app_name": "helios", "migration": "0005_add_quarantine_fields"}}, {"pk": 1, "model": "helios_auth.user", "fields": {"info": "{\"password\": \"test\"}", "user_id": "benadida", "name": null, "user_type": "password", "token": null, "admin_p": false}}, {"pk": 4, "model": "helios_auth.user", "fields": {"info": "{\"password\": \"XEVEjStfuE\", \"email\": \"ben6@adida.net\", \"name\": \"Ben6 Adida\"}", "user_id": "benadida6", "name": null, "user_type": "password", "token": null, "admin_p": false}}, {"pk": 5, "model": "helios_auth.user", "fields": {"info": "{\"password\": \"0VuIzsa55u\", \"email\": \"ben7@adida.net\", \"name\": \"Ben7 Adida\"}", "user_id": "benadida7", "name": null, "user_type": "password", "token": null, "admin_p": false}}, {"pk": 6, "model": "helios_auth.user", "fields": {"info": "{\"password\": \"zeVDg9nVvh\", \"email\": \"ben8@adida.net\", \"name\": \"Ben8 Adida\"}", "user_id": "benadida8", "name": null, "user_type": "password", "token": null, "admin_p": false}}, {"pk": 3, "model": "helios_auth.user", "fields": {"info": "{\"password\": \"PPvPcBBryM\", \"email\": \"ben5@adida.net\", \"name\": \"Ben5 Adida\"}", "user_id": "benadida5", "name": null, "user_type": "password", "token": null, "admin_p": false}}, {"pk": 2, "model": "helios_auth.user", "fields": {"info": "{}", "user_id": "benadida77@gmail.com", "name": "Ben Adida", "user_type": "google", "token": "{}", "admin_p": false}}, {"pk": 1, "model": "helios.election", "fields": {"voting_extended_until": null, "voters_hash": null, "featured_p": false, "use_voter_aliases": false, "tallying_started_at": "2010-12-30 19:03:11", "result": "[[0, 1, 0]]", "questions": "[{\"short_name\": \"Who should be president?\", \"choice_type\": \"approval\", \"max\": 1, \"min\": 0, \"question\": \"Who should be president?\", \"answers\": [\"Alice\", \"Bob\", \"Carol\"], \"answer_urls\": [null, null, null], \"tally_type\": \"homomorphic\", \"result_type\": \"absolute\"}]", "voting_ended_at": "2010-12-30 19:03:11", "registration_starts_at": null, "cast_url": "http://localhost:8000/helios/elections/40a17486-1446-11e0-b9ec-000c293e7de1/cast", "uuid": "40a17486-1446-11e0-b9ec-000c293e7de1", "frozen_at": "2010-12-30 18:55:42", "encrypted_tally": "{\"tally\": [[{\"alpha\": \"15062600351346883972644127892142714662189690871997002860160637836650441602030002705292055229350425245338714989971657783718286387745755778873544353920087069923141558465357271862261518288218334688506364799707392611362040662936902886469092037687001218417001577231464467922549631334100757297338618251748139729964707680811665800662927067491530779427912712421946148997429722751848164735658063110170464608816677293362933159695162487677068539309388988631969504494216829146823387001428360245160741367464561945072440282718021512357600566368531501739912137646478149487913635218325375327436398982687476464381274863173109390437849\", \"beta\": \"6472995696323449481761379982226987034204671847521280173533677671800764813049225642765553350990023913842413237138994293559420693903825662068604923689287872415577051463244183680254762458861919465321996886414454802637697911164542594307379406907302286457272189409620028333641643603878239149886302645287899635957429604613780743866054390180292694767552575334318878336726590042824600404857161528120082698503521888035480554396084523318391075327196170151150017179381762494738064997274952677744062885141254893966429696256647729546503511682475164521390015781174526069960261297951569915608591534531987906457590536635969717163017\"}, {\"alpha\": \"11797341915537555476557075594487134344289042577013466250418375376870630384349304048606714535795936426595938010963895455399050161847596126018739059592043662385972723145765773438163543846757186579416754475057309926173301818771413977291177987529471270631093815995658047599876124666043571805566412571721352681563641013117117243443491777387530741635619864702428158939093621034585067648994491883088363814536499351174599683663609451037205821783508958092566632960335955512240723655648985350951040171933874789527124767479182628124872969346846033060536497255225965817197189441217993019374945875453159578803014379028048622459368\", \"beta\": \"386603140585949274399765676343225021646823837172562587253483824685501371966765713673896074723205590686430303065790627082336695351775735361487007145740387773299912412488939936995100076554454597585434254473760210886435540378154175229046102719209082777247996500554646776006238400469042159470627068048421003860492049429142953418171122350175145645388713766049983218504277012766151062997680731741281725276122652751673876491143973427719469741677235999333427047365824639448121152225086556575371711180660842261974231132982964433856082981951267337588132752488463797969108960908305840938831642503490689882743196654196818586153\"}, {\"alpha\": \"7447770187339878295993449894291489887048199488149047386007365531030411994514567126890793337686510960379699552037310153457712846898600825987067491960636123972698743027902536803313122852695834128081255673149298326081316468803638688172240293429021646722622760387789968485271656707408704015670936653538239976073086700354395913211645218184935464859540952979791617557615121821844458125737697969356374053675571600427328257161894058513558896927219556279567567385006610345737415318941082511663411931234031736832574296988507123506658418745859239378750962490244083867984466678345522975899669428543817167372204402768140225673899\", \"beta\": \"10295246473033461943758026743789596939350509698742039970315795780884125241389014443917881746198829796581532942808439005949283365779117479508160568372317140210333337134392167953936839851684527674630949696312674486436145278957756779729314631536871251419768935267394895633742684422354002503367119198418556623190787101973681238871389852824878971817620102647834188822139335392978368269353706515717026270035928407046024774088938767955368659221078544511315129408774954569106438025396242766355252175143630049198659910228039324058865260398970570436187058310718047632290796972241903647262820809895006837802544169684965043985217\"}]], \"num_tallied\": 1}", "use_advanced_audit_features": true, "result_proof": null, "voting_started_at": null, "archived_at": null, "tallying_finished_at": null, "openreg": false, "private_key": null, "description": "test1", "short_name": "test1", "eligibility": "[{\"auth_system\": \"password\"}]", "tallying_starts_at": null, "public_key": "{\"y\": \"10209996196141455592954150806595590302779517452973425513133143319891192812034378656046616286290215682512560281253780168350968078321298815359346112476103153663350347613425264137270664984993821707972591603600995748437418960965874687695519139184521329861807151368087170846679616051889191498465971754449242176181010116247194146889436200685706775658837872315899212063389435005791600156232673825152649290306522408636413180876447424057387927560622286232455842226141935616726284027452689619467330786904141326022591988410271656808992679125143841590661998535192138516435006042519265859141061154934003554664919161933342577547196\", \"p\": \"16328632084933010002384055033805457329601614771185955389739167309086214800406465799038583634953752941675645562182498120750264980492381375579367675648771293800310370964745767014243638518442553823973482995267304044326777047662957480269391322789378384619428596446446984694306187644767462460965622580087564339212631775817895958409016676398975671266179637898557687317076177218843233150695157881061257053019133078545928983562221396313169622475509818442661047018436264806901023966236718367204710755935899013750306107738002364137917426595737403871114187750804346564731250609196846638183903982387884578266136503697493474682071\", \"q\": \"61329566248342901292543872769978950870633559608669337131139375508370458778917\", \"g\": \"14887492224963187634282421537186040801304008017743492304481737382571933937568724473847106029915040150784031882206090286938661464458896494215273989547889201144857352611058572236578734319505128042602372864570426550855201448111746579871811249114781674309062693442442368697449970648232621880001709535143047913661432883287150003429802392229361583608686643243349727791976247247948618930423866180410558458272606627111270040091203073580238905303994472202930783207472394578498507764703191288249547659899997131166130259700604433891232298182348403175947450284433411265966789131024573629546048637848902243503970966798589660808533\"}", "name": "test1", "admin": 2, "voting_starts_at": null, "created_at": "2010-12-30 10:54:38", "tallies_combined_at": null, "modified_at": "2010-12-30 10:54:38", "voting_ends_at": null, "datatype": "legacy/Election", "complaint_period_ends_at": null, "private_p": false, "election_type": "election"}}, {"pk": 1, "model": "helios.electionlog", "fields": {"at": "2010-12-30 10:54:54", "election": 1, "log": "voter file added"}}, {"pk": 2, "model": "helios.electionlog", "fields": {"at": "2010-12-30 10:55:00", "election": 1, "log": "Trustee Ben for Helios added"}}, {"pk": 3, "model": "helios.electionlog", "fields": {"at": "2010-12-30 10:55:42", "election": 1, "log": "frozen"}}, {"pk": 4, "model": "helios.electionlog", "fields": {"at": "2010-12-30 11:03:19", "election": 1, "log": "decryptions combined"}}, {"pk": 1, "model": "helios.voterfile", "fields": {"processing_finished_at": "2010-12-30 18:54:56", "uploaded_at": "2010-12-30 10:54:54", "num_voters": 5, "election": 1, "processing_started_at": "2010-12-30 18:54:55", "voter_file": "voters/2010/12/30/4d0d7ebc-15bb-418e-a0b5-8664d39ffa3b"}}, {"pk": 2, "model": "helios.voter", "fields": {"voter_password": "XEVEjStfuE", "uuid": "b3e41a74-4eed-447a-ac4e-cb894be680d9", "voter_name": "Ben6 Adida", "cast_at": null, "alias": null, "user": null, "vote_hash": null, "vote": null, "voter_login_id": "benadida6", "voter_email": "ben6@adida.net", "election": 1}}, {"pk": 3, "model": "helios.voter", "fields": {"voter_password": "0VuIzsa55u", "uuid": "b5cdd49b-7af3-43a9-bf34-152171bf0652", "voter_name": "Ben7 Adida", "cast_at": null, "alias": null, "user": null, "vote_hash": null, "vote": null, "voter_login_id": "benadida7", "voter_email": "ben7@adida.net", "election": 1}}, {"pk": 4, "model": "helios.voter", "fields": {"voter_password": "zeVDg9nVvh", "uuid": "96817ccc-d3b1-491c-9d68-36823a7a2bc4", "voter_name": "Ben8 Adida", "cast_at": null, "alias": null, "user": null, "vote_hash": null, "vote": null, "voter_login_id": "benadida8", "voter_email": "ben8@adida.net", "election": 1}}, {"pk": 1, "model": "helios.voter", "fields": {"voter_password": "PPvPcBBryM", "uuid": "36cab4d2-baf5-4fe6-9316-072bb10a08c5", "voter_name": "Ben5 Adida", "cast_at": "2010-12-30 11:00:30", "alias": null, "user": null, "vote_hash": "XMbs8mj8IMfWTIrMeeJ+1ItRtH1fMzrrdasdoZghqms", "vote": "{\"election_uuid\": \"40a17486-1446-11e0-b9ec-000c293e7de1\", \"election_hash\": \"wGPQnqnzBpmLeg8ZB/G0rgaamGvKVFgpT4/2FC71eas\", \"answers\": [{\"individual_proofs\": [[{\"challenge\": \"23448591784697000965545892324810629021639188373890683375910722335603622138784\", \"commitment\": {\"A\": \"1327628315723512592520092253022813954345811633817636321461327060815545431155754937699838371154948609511354231571272734503300322585026951636488920956523182672551950508490901322669811500895795175060810855625517092521213959126412117064377577760401592872465535448172644182461127758421070618332647280802438572454887787753087987686539965858891402894686998695861222063954822180068263112093268485916206196256374623420279908267672537703676874160139012850887547187383627177839126080326025123801997793732363652198095799909736237665197875170635639393513721452483230488642329871180916160042706552228810447375634551726254656114763\", \"B\": \"12651568238845905580146731093834003015541538197207885155377455570739647990731115642751855805978467077164118286855210767852487616446322130095137621482323196926762880646794844146925307934365718148556573920173586397697773728633505957174913806486333337487959223801388056302406238391017110214970693170684905765736096447201061693237410864568109046693126318808709805263697684626506219123708702408188380145135728153486516784168065844265720923488323409470042004070431410287600339033480425760464353921573676904433306313575237328448962058283857065990334095968743257379436762608765126482553431856338280756915065371130629259833162\"}, \"response\": \"66493654499921179654532076483238061065663825681855720849779479385099600294313\"}, {\"challenge\": \"37880974463645900326997980445921662466504953698747123205418028110401621340654\", \"commitment\": {\"A\": \"11552929741476814953885315683074098091103686548723516644080511046344121473871033010567541553035322173556104503663355802077291981196609620866458230652243307217336007047616125327287070248174361784734712728026360142208785301081379339577768097307553636351066758204606067852151212136995659736744834225212988266174017146842207029877054309186325359774975424315721603313081735790862906915249402187712643905438535309489072993517767409706459101240509405310623022029051651543866804596815439974638899195343422656827451325150692577702439948168203545390620539243767450955282190940402874138622075234269541622364721163286312878986819\", \"B\": \"6329155122062386904033442921423622622147079320347985844514869678788894694074332416611216748665105335359984602999437980698165855519323382681940366700676670498208841397103135301080915366474717831310061726860563362512863054679720700745282422030751124929023148055891934168562161714897501755587548350311398415869238331591154762453581309273381060323924517084418705908387965117516648560910526056603787772182229010906379630932318790167674451145975401275892801196642017344744355317898337463259457545132684347381953362982206865463253584571797006969916721595812159297162226956121662150241089497749712184668941945856515753434583\"}, \"response\": \"40889333838309328628442514979337814302799996449096507610282589928128273346086\"}], [{\"challenge\": \"40838246976619679982594438537447216988156147901010823503082500261133646034510\", \"commitment\": {\"A\": \"7240746395320606545924818303659574319731549234658716095013175472134123703846899818801089836111944641913350487758554287853491345581528557228542267116521090883813722627295383932822769534799988278169007346954354698811871351725370440703413817798869596540753172040591555804833259365722924628910597267412752971983973099286825908075100328469111189817054592233683568840797349280531135103664238151283794163518180822346478272123336746353940825490958866084369836609057210749809398951837726387799726276790721200488289943034865614991602894496358416379863548515397992901340896111968521210996058255256378234826527429341875890954325\", \"B\": \"14360814363564966405360021475222916339844629619455505817116073918028706786972236957526914330535717891973121029017380447473243935691715817749628813781646994519966103065028319818105397007744775285803075583457045600071289431042427536327509229154776384742741650503755680262226870011332151033945281301751333262151726293854136550805821221030867126626766560317685475484257992652848092598642512843265151823549960069639481061805952898584109547777019233310314201053646724130044711428631467139016994288332446095561699988285289270533446820493287643560434681811441184380345762034361885379181472264724965318003694917150246630023674\"}, \"response\": \"32379791452380146747129274667434627989796700807725842979905511921680817488679\"}, {\"challenge\": \"20491319271723221309949434233793977920795005824525427253918918169889913365948\", \"commitment\": {\"A\": \"6249667490277917583936607671102592882918409694303397387989581556482216126368122870614174165168740657006080095721379286684627119686099144826994894421926931467679822839419322398647946960779534495161082693858576168084013669468576163333253692335647695009660221751877286994683778685376405300629183143917010861517571099244272102834874222190843107273758742282622844732413516515908311253461817503881880906475522033363486911306119901292379625845416065240305301099338032541569024074975755933787525224425365617538732320213780187894141782809997859364333867835879203172909290216548191092783192574241137558974282359389187012817936\", \"B\": \"9499112746840921330025828862313195732714191736836796633477362065391580604500493351834623100000344332078541514598802122394938451327827696985631359354944865315435059206970465412862653037841742495026775379978363725663046523355370934979512948437818087270242744189398042668453563383598014440609263097809464386385377086332856379919768588734445308364251682197283847623282458135779287780459446653554844992689069349147999153323163756277510532664441506670090088963764802003962950921958456938625791579175155142656425066425712635117449924858147057327726380659546270500021282831889329912110494100841744786647915029857722991309102\"}, \"response\": \"39881801996843034570752413025736783442023073187463315853656384552364386913204\"}], [{\"challenge\": \"43431479061562930090004922442036754678483107275940751848024215992244886343747\", \"commitment\": {\"A\": \"1270055805719836261622958888846330804638817542205324650711349305977867087050906657167153321020114772132749332223143260695672249760406765833706496501796398284185540978966142644793196415879582663634100399321765040877162609041210292145512334466387459015610330751980306692864978147960861903003237265674845225826944921430476569228083860123295338768898464268768775686988874386876491097663989219624354211056385565966546828280075259494577713355009759282723250554257459428057560064051666367969921490582847014422432367039519517232418691823528688817355615892442875262952742672229933819705525867755926536935560184321181516217379\", \"B\": \"13811522002661403186656524643430184156362000458283631439050985694312056363976044427831818381014131146340935786418326708412866699221278668866350666842389724034155760660894321943027467083331876166785006218286375036218444948819814596653763067984475369256295354933061577137097160951738083556909805645133853825940451449785781714550102697948235131202099972030859604297053943782339850793154555482391232163147687158127829886062127554444845944041291007323918037270588313481883735696620885738492026672168539201247500513346410668408666264612310030986871682638524348434676219620439025304901534964705268662494748119236717258099310\"}, \"response\": \"68215094834895276844550802238341145638824175199551659406303368956211949019503\"}, {\"challenge\": \"17898087186779971202538950329371565185390706224154511062911955610649418098256\", \"commitment\": {\"A\": \"16251021783044516022530162510375731932396648925368808712144817845848470716066393905811822426515609168500968326025256059316597643395704568352891213427889062095727127211219607578386713220335138915526877263124257302083955232156553595937713784723082774095373922632480472464901263941851494794480244523914002369035976941551571562910539299973363373412124246141349684130390967911024709851584467209367384820033560446424080918421522113745512797475927149175846813620541575734629166934167572438415311057397875639759338459893698446812426686906493776199091997749807282590016592114718036464843222410363303324286514483401243517098919\", \"B\": \"9483189503031797184976054292751366999555646527059016081956041648897995571468703398849876134946030247727478260873291252669051128569609552216633210758991866713731253996106528668922437684662967028333743543723894078765207823156516048642619579666660693500547400247407308606819581427394295455460458346347446248548838123178569076367824541766927409254628932336490038849157667580037659205992868562238203915995106969796461422020992210022408234454951887179002927611195937432114888768429519791384688384245388025993512601880012525058553458889191281451543418313914273707609311661844227170291960451878015798149129666533670296683517\"}, \"response\": \"47055844704389989755328398564006162909789771315920760315962495933998560250733\"}]], \"overall_proof\": [{\"challenge\": \"14587781194424783137694975950944071336748097811762793023623705015943510494552\", \"commitment\": {\"A\": \"11593378736638379859476775929688252170819242231855060210332622890983118661213958218991328012112542344165110060653955477862332902364013355270331585307350836027305693084343561363596117247575763301618955255170102018700927311116945258908959677914951048142668496968817639199967846759461114146494910430269004689842295064898502764043961362230065062223655965446278805522690709858469443935060447482793234174374235433634507565188762427880141668958856980254433467181819491301709455993757318818296773777159501430136689906726672323092132282409154366580941018678697554417366994112669108598689024668589495123456818830843512906688674\", \"B\": \"6379878600728866669455031437323245344320246967984106758624844794330223775770709971892885303077113095171244444904758039226852919548659167744967797598018751391128142643083704135304989646690792324977602130349887992894633902005083938751838673945697901818639788591489261000492127878191120874014218509575385139468955836491832775486846669297951819245355910267593674016013045608418799063731780991830273296297140501488361490123025242728516520596396511820557273154073549773137685859445237736658014736282257083785882592166052534473053026176229098422203905619846459265738362859679862270988452361683451440803788568300444425725175\"}, \"response\": \"57513547772483453232756705213109182719476244252346216384127374345628889196096\"}, {\"challenge\": \"46741785053918118154848896820085464925671239027904886965218169217385735685771\", \"commitment\": {\"A\": \"8204099266024548592165743253907256572259400626005080824257116250969358821428112881032863623964166849785668551229406355286331359382634645331769101479707037517762099546430650908723276543754693368667455271684098578897792561127595300435264359824607588383195142495500531186753506846013740973638543612200232991915060100923911599859500311703096013807954456945016402631348805272474587501849245909953322033069478471703687863323228444459450106965362000564995708127666403510905079448219106951983281749823638097211982776775954943253919166013537911768350016675170734384371608477815080223985654367562217980167192298657253999287104\", \"B\": \"2870925086149903448423030452890138076763256297233796443410101050851365017111617371281647635397879913615671700563753122736263788389912942674145908268974274781408271597144293339914556735961791632045526319083758346010694220520356446602340804483574622023918899449342764522287734704426777877738073462099395887561928549640312439461237876516443031500318277387173900015089048124812884318044173411856620353670467475274153454979432630814692546812357937029924995748136485935268693300760939824081854392825744349598782084275966413211045473867793489286328546376469050207965843422968984817754530256920363908998162047893721357153520\"}, \"response\": \"91469090683979584694909954417958870883208499630036944330450898325302781677348\"}], \"choices\": [{\"alpha\": \"15062600351346883972644127892142714662189690871997002860160637836650441602030002705292055229350425245338714989971657783718286387745755778873544353920087069923141558465357271862261518288218334688506364799707392611362040662936902886469092037687001218417001577231464467922549631334100757297338618251748139729964707680811665800662927067491530779427912712421946148997429722751848164735658063110170464608816677293362933159695162487677068539309388988631969504494216829146823387001428360245160741367464561945072440282718021512357600566368531501739912137646478149487913635218325375327436398982687476464381274863173109390437849\", \"beta\": \"6472995696323449481761379982226987034204671847521280173533677671800764813049225642765553350990023913842413237138994293559420693903825662068604923689287872415577051463244183680254762458861919465321996886414454802637697911164542594307379406907302286457272189409620028333641643603878239149886302645287899635957429604613780743866054390180292694767552575334318878336726590042824600404857161528120082698503521888035480554396084523318391075327196170151150017179381762494738064997274952677744062885141254893966429696256647729546503511682475164521390015781174526069960261297951569915608591534531987906457590536635969717163017\"}, {\"alpha\": \"11797341915537555476557075594487134344289042577013466250418375376870630384349304048606714535795936426595938010963895455399050161847596126018739059592043662385972723145765773438163543846757186579416754475057309926173301818771413977291177987529471270631093815995658047599876124666043571805566412571721352681563641013117117243443491777387530741635619864702428158939093621034585067648994491883088363814536499351174599683663609451037205821783508958092566632960335955512240723655648985350951040171933874789527124767479182628124872969346846033060536497255225965817197189441217993019374945875453159578803014379028048622459368\", \"beta\": \"386603140585949274399765676343225021646823837172562587253483824685501371966765713673896074723205590686430303065790627082336695351775735361487007145740387773299912412488939936995100076554454597585434254473760210886435540378154175229046102719209082777247996500554646776006238400469042159470627068048421003860492049429142953418171122350175145645388713766049983218504277012766151062997680731741281725276122652751673876491143973427719469741677235999333427047365824639448121152225086556575371711180660842261974231132982964433856082981951267337588132752488463797969108960908305840938831642503490689882743196654196818586153\"}, {\"alpha\": \"7447770187339878295993449894291489887048199488149047386007365531030411994514567126890793337686510960379699552037310153457712846898600825987067491960636123972698743027902536803313122852695834128081255673149298326081316468803638688172240293429021646722622760387789968485271656707408704015670936653538239976073086700354395913211645218184935464859540952979791617557615121821844458125737697969356374053675571600427328257161894058513558896927219556279567567385006610345737415318941082511663411931234031736832574296988507123506658418745859239378750962490244083867984466678345522975899669428543817167372204402768140225673899\", \"beta\": \"10295246473033461943758026743789596939350509698742039970315795780884125241389014443917881746198829796581532942808439005949283365779117479508160568372317140210333337134392167953936839851684527674630949696312674486436145278957756779729314631536871251419768935267394895633742684422354002503367119198418556623190787101973681238871389852824878971817620102647834188822139335392978368269353706515717026270035928407046024774088938767955368659221078544511315129408774954569106438025396242766355252175143630049198659910228039324058865260398970570436187058310718047632290796972241903647262820809895006837802544169684965043985217\"}]}]}", "voter_login_id": "benadida5", "voter_email": "ben5@adida.net", "election": 1}}, {"pk": 1, "model": "helios.castvote", "fields": {"cast_at": "2010-12-30 11:00:30", "voter": 1, "quarantined_p": false, "invalidated_at": null, "verified_at": "2010-12-30 19:00:31", "vote_tinyhash": null, "released_from_quarantine_at": null, "vote_hash": "XMbs8mj8IMfWTIrMeeJ+1ItRtH1fMzrrdasdoZghqms", "vote": "{\"election_uuid\": \"40a17486-1446-11e0-b9ec-000c293e7de1\", \"election_hash\": \"wGPQnqnzBpmLeg8ZB/G0rgaamGvKVFgpT4/2FC71eas\", \"answers\": [{\"individual_proofs\": [[{\"challenge\": \"23448591784697000965545892324810629021639188373890683375910722335603622138784\", \"commitment\": {\"A\": \"1327628315723512592520092253022813954345811633817636321461327060815545431155754937699838371154948609511354231571272734503300322585026951636488920956523182672551950508490901322669811500895795175060810855625517092521213959126412117064377577760401592872465535448172644182461127758421070618332647280802438572454887787753087987686539965858891402894686998695861222063954822180068263112093268485916206196256374623420279908267672537703676874160139012850887547187383627177839126080326025123801997793732363652198095799909736237665197875170635639393513721452483230488642329871180916160042706552228810447375634551726254656114763\", \"B\": \"12651568238845905580146731093834003015541538197207885155377455570739647990731115642751855805978467077164118286855210767852487616446322130095137621482323196926762880646794844146925307934365718148556573920173586397697773728633505957174913806486333337487959223801388056302406238391017110214970693170684905765736096447201061693237410864568109046693126318808709805263697684626506219123708702408188380145135728153486516784168065844265720923488323409470042004070431410287600339033480425760464353921573676904433306313575237328448962058283857065990334095968743257379436762608765126482553431856338280756915065371130629259833162\"}, \"response\": \"66493654499921179654532076483238061065663825681855720849779479385099600294313\"}, {\"challenge\": \"37880974463645900326997980445921662466504953698747123205418028110401621340654\", \"commitment\": {\"A\": \"11552929741476814953885315683074098091103686548723516644080511046344121473871033010567541553035322173556104503663355802077291981196609620866458230652243307217336007047616125327287070248174361784734712728026360142208785301081379339577768097307553636351066758204606067852151212136995659736744834225212988266174017146842207029877054309186325359774975424315721603313081735790862906915249402187712643905438535309489072993517767409706459101240509405310623022029051651543866804596815439974638899195343422656827451325150692577702439948168203545390620539243767450955282190940402874138622075234269541622364721163286312878986819\", \"B\": \"6329155122062386904033442921423622622147079320347985844514869678788894694074332416611216748665105335359984602999437980698165855519323382681940366700676670498208841397103135301080915366474717831310061726860563362512863054679720700745282422030751124929023148055891934168562161714897501755587548350311398415869238331591154762453581309273381060323924517084418705908387965117516648560910526056603787772182229010906379630932318790167674451145975401275892801196642017344744355317898337463259457545132684347381953362982206865463253584571797006969916721595812159297162226956121662150241089497749712184668941945856515753434583\"}, \"response\": \"40889333838309328628442514979337814302799996449096507610282589928128273346086\"}], [{\"challenge\": \"40838246976619679982594438537447216988156147901010823503082500261133646034510\", \"commitment\": {\"A\": \"7240746395320606545924818303659574319731549234658716095013175472134123703846899818801089836111944641913350487758554287853491345581528557228542267116521090883813722627295383932822769534799988278169007346954354698811871351725370440703413817798869596540753172040591555804833259365722924628910597267412752971983973099286825908075100328469111189817054592233683568840797349280531135103664238151283794163518180822346478272123336746353940825490958866084369836609057210749809398951837726387799726276790721200488289943034865614991602894496358416379863548515397992901340896111968521210996058255256378234826527429341875890954325\", \"B\": \"14360814363564966405360021475222916339844629619455505817116073918028706786972236957526914330535717891973121029017380447473243935691715817749628813781646994519966103065028319818105397007744775285803075583457045600071289431042427536327509229154776384742741650503755680262226870011332151033945281301751333262151726293854136550805821221030867126626766560317685475484257992652848092598642512843265151823549960069639481061805952898584109547777019233310314201053646724130044711428631467139016994288332446095561699988285289270533446820493287643560434681811441184380345762034361885379181472264724965318003694917150246630023674\"}, \"response\": \"32379791452380146747129274667434627989796700807725842979905511921680817488679\"}, {\"challenge\": \"20491319271723221309949434233793977920795005824525427253918918169889913365948\", \"commitment\": {\"A\": \"6249667490277917583936607671102592882918409694303397387989581556482216126368122870614174165168740657006080095721379286684627119686099144826994894421926931467679822839419322398647946960779534495161082693858576168084013669468576163333253692335647695009660221751877286994683778685376405300629183143917010861517571099244272102834874222190843107273758742282622844732413516515908311253461817503881880906475522033363486911306119901292379625845416065240305301099338032541569024074975755933787525224425365617538732320213780187894141782809997859364333867835879203172909290216548191092783192574241137558974282359389187012817936\", \"B\": \"9499112746840921330025828862313195732714191736836796633477362065391580604500493351834623100000344332078541514598802122394938451327827696985631359354944865315435059206970465412862653037841742495026775379978363725663046523355370934979512948437818087270242744189398042668453563383598014440609263097809464386385377086332856379919768588734445308364251682197283847623282458135779287780459446653554844992689069349147999153323163756277510532664441506670090088963764802003962950921958456938625791579175155142656425066425712635117449924858147057327726380659546270500021282831889329912110494100841744786647915029857722991309102\"}, \"response\": \"39881801996843034570752413025736783442023073187463315853656384552364386913204\"}], [{\"challenge\": \"43431479061562930090004922442036754678483107275940751848024215992244886343747\", \"commitment\": {\"A\": \"1270055805719836261622958888846330804638817542205324650711349305977867087050906657167153321020114772132749332223143260695672249760406765833706496501796398284185540978966142644793196415879582663634100399321765040877162609041210292145512334466387459015610330751980306692864978147960861903003237265674845225826944921430476569228083860123295338768898464268768775686988874386876491097663989219624354211056385565966546828280075259494577713355009759282723250554257459428057560064051666367969921490582847014422432367039519517232418691823528688817355615892442875262952742672229933819705525867755926536935560184321181516217379\", \"B\": \"13811522002661403186656524643430184156362000458283631439050985694312056363976044427831818381014131146340935786418326708412866699221278668866350666842389724034155760660894321943027467083331876166785006218286375036218444948819814596653763067984475369256295354933061577137097160951738083556909805645133853825940451449785781714550102697948235131202099972030859604297053943782339850793154555482391232163147687158127829886062127554444845944041291007323918037270588313481883735696620885738492026672168539201247500513346410668408666264612310030986871682638524348434676219620439025304901534964705268662494748119236717258099310\"}, \"response\": \"68215094834895276844550802238341145638824175199551659406303368956211949019503\"}, {\"challenge\": \"17898087186779971202538950329371565185390706224154511062911955610649418098256\", \"commitment\": {\"A\": \"16251021783044516022530162510375731932396648925368808712144817845848470716066393905811822426515609168500968326025256059316597643395704568352891213427889062095727127211219607578386713220335138915526877263124257302083955232156553595937713784723082774095373922632480472464901263941851494794480244523914002369035976941551571562910539299973363373412124246141349684130390967911024709851584467209367384820033560446424080918421522113745512797475927149175846813620541575734629166934167572438415311057397875639759338459893698446812426686906493776199091997749807282590016592114718036464843222410363303324286514483401243517098919\", \"B\": \"9483189503031797184976054292751366999555646527059016081956041648897995571468703398849876134946030247727478260873291252669051128569609552216633210758991866713731253996106528668922437684662967028333743543723894078765207823156516048642619579666660693500547400247407308606819581427394295455460458346347446248548838123178569076367824541766927409254628932336490038849157667580037659205992868562238203915995106969796461422020992210022408234454951887179002927611195937432114888768429519791384688384245388025993512601880012525058553458889191281451543418313914273707609311661844227170291960451878015798149129666533670296683517\"}, \"response\": \"47055844704389989755328398564006162909789771315920760315962495933998560250733\"}]], \"overall_proof\": [{\"challenge\": \"14587781194424783137694975950944071336748097811762793023623705015943510494552\", \"commitment\": {\"A\": \"11593378736638379859476775929688252170819242231855060210332622890983118661213958218991328012112542344165110060653955477862332902364013355270331585307350836027305693084343561363596117247575763301618955255170102018700927311116945258908959677914951048142668496968817639199967846759461114146494910430269004689842295064898502764043961362230065062223655965446278805522690709858469443935060447482793234174374235433634507565188762427880141668958856980254433467181819491301709455993757318818296773777159501430136689906726672323092132282409154366580941018678697554417366994112669108598689024668589495123456818830843512906688674\", \"B\": \"6379878600728866669455031437323245344320246967984106758624844794330223775770709971892885303077113095171244444904758039226852919548659167744967797598018751391128142643083704135304989646690792324977602130349887992894633902005083938751838673945697901818639788591489261000492127878191120874014218509575385139468955836491832775486846669297951819245355910267593674016013045608418799063731780991830273296297140501488361490123025242728516520596396511820557273154073549773137685859445237736658014736282257083785882592166052534473053026176229098422203905619846459265738362859679862270988452361683451440803788568300444425725175\"}, \"response\": \"57513547772483453232756705213109182719476244252346216384127374345628889196096\"}, {\"challenge\": \"46741785053918118154848896820085464925671239027904886965218169217385735685771\", \"commitment\": {\"A\": \"8204099266024548592165743253907256572259400626005080824257116250969358821428112881032863623964166849785668551229406355286331359382634645331769101479707037517762099546430650908723276543754693368667455271684098578897792561127595300435264359824607588383195142495500531186753506846013740973638543612200232991915060100923911599859500311703096013807954456945016402631348805272474587501849245909953322033069478471703687863323228444459450106965362000564995708127666403510905079448219106951983281749823638097211982776775954943253919166013537911768350016675170734384371608477815080223985654367562217980167192298657253999287104\", \"B\": \"2870925086149903448423030452890138076763256297233796443410101050851365017111617371281647635397879913615671700563753122736263788389912942674145908268974274781408271597144293339914556735961791632045526319083758346010694220520356446602340804483574622023918899449342764522287734704426777877738073462099395887561928549640312439461237876516443031500318277387173900015089048124812884318044173411856620353670467475274153454979432630814692546812357937029924995748136485935268693300760939824081854392825744349598782084275966413211045473867793489286328546376469050207965843422968984817754530256920363908998162047893721357153520\"}, \"response\": \"91469090683979584694909954417958870883208499630036944330450898325302781677348\"}], \"choices\": [{\"alpha\": \"15062600351346883972644127892142714662189690871997002860160637836650441602030002705292055229350425245338714989971657783718286387745755778873544353920087069923141558465357271862261518288218334688506364799707392611362040662936902886469092037687001218417001577231464467922549631334100757297338618251748139729964707680811665800662927067491530779427912712421946148997429722751848164735658063110170464608816677293362933159695162487677068539309388988631969504494216829146823387001428360245160741367464561945072440282718021512357600566368531501739912137646478149487913635218325375327436398982687476464381274863173109390437849\", \"beta\": \"6472995696323449481761379982226987034204671847521280173533677671800764813049225642765553350990023913842413237138994293559420693903825662068604923689287872415577051463244183680254762458861919465321996886414454802637697911164542594307379406907302286457272189409620028333641643603878239149886302645287899635957429604613780743866054390180292694767552575334318878336726590042824600404857161528120082698503521888035480554396084523318391075327196170151150017179381762494738064997274952677744062885141254893966429696256647729546503511682475164521390015781174526069960261297951569915608591534531987906457590536635969717163017\"}, {\"alpha\": \"11797341915537555476557075594487134344289042577013466250418375376870630384349304048606714535795936426595938010963895455399050161847596126018739059592043662385972723145765773438163543846757186579416754475057309926173301818771413977291177987529471270631093815995658047599876124666043571805566412571721352681563641013117117243443491777387530741635619864702428158939093621034585067648994491883088363814536499351174599683663609451037205821783508958092566632960335955512240723655648985350951040171933874789527124767479182628124872969346846033060536497255225965817197189441217993019374945875453159578803014379028048622459368\", \"beta\": \"386603140585949274399765676343225021646823837172562587253483824685501371966765713673896074723205590686430303065790627082336695351775735361487007145740387773299912412488939936995100076554454597585434254473760210886435540378154175229046102719209082777247996500554646776006238400469042159470627068048421003860492049429142953418171122350175145645388713766049983218504277012766151062997680731741281725276122652751673876491143973427719469741677235999333427047365824639448121152225086556575371711180660842261974231132982964433856082981951267337588132752488463797969108960908305840938831642503490689882743196654196818586153\"}, {\"alpha\": \"7447770187339878295993449894291489887048199488149047386007365531030411994514567126890793337686510960379699552037310153457712846898600825987067491960636123972698743027902536803313122852695834128081255673149298326081316468803638688172240293429021646722622760387789968485271656707408704015670936653538239976073086700354395913211645218184935464859540952979791617557615121821844458125737697969356374053675571600427328257161894058513558896927219556279567567385006610345737415318941082511663411931234031736832574296988507123506658418745859239378750962490244083867984466678345522975899669428543817167372204402768140225673899\", \"beta\": \"10295246473033461943758026743789596939350509698742039970315795780884125241389014443917881746198829796581532942808439005949283365779117479508160568372317140210333337134392167953936839851684527674630949696312674486436145278957756779729314631536871251419768935267394895633742684422354002503367119198418556623190787101973681238871389852824878971817620102647834188822139335392978368269353706515717026270035928407046024774088938767955368659221078544511315129408774954569106438025396242766355252175143630049198659910228039324058865260398970570436187058310718047632290796972241903647262820809895006837802544169684965043985217\"}]}]}"}}, {"pk": 1, "model": "helios.trustee", "fields": {"public_key": "{\"y\": \"10209996196141455592954150806595590302779517452973425513133143319891192812034378656046616286290215682512560281253780168350968078321298815359346112476103153663350347613425264137270664984993821707972591603600995748437418960965874687695519139184521329861807151368087170846679616051889191498465971754449242176181010116247194146889436200685706775658837872315899212063389435005791600156232673825152649290306522408636413180876447424057387927560622286232455842226141935616726284027452689619467330786904141326022591988410271656808992679125143841590661998535192138516435006042519265859141061154934003554664919161933342577547196\", \"p\": \"16328632084933010002384055033805457329601614771185955389739167309086214800406465799038583634953752941675645562182498120750264980492381375579367675648771293800310370964745767014243638518442553823973482995267304044326777047662957480269391322789378384619428596446446984694306187644767462460965622580087564339212631775817895958409016676398975671266179637898557687317076177218843233150695157881061257053019133078545928983562221396313169622475509818442661047018436264806901023966236718367204710755935899013750306107738002364137917426595737403871114187750804346564731250609196846638183903982387884578266136503697493474682071\", \"q\": \"61329566248342901292543872769978950870633559608669337131139375508370458778917\", \"g\": \"14887492224963187634282421537186040801304008017743492304481737382571933937568724473847106029915040150784031882206090286938661464458896494215273989547889201144857352611058572236578734319505128042602372864570426550855201448111746579871811249114781674309062693442442368697449970648232621880001709535143047913661432883287150003429802392229361583608686643243349727791976247247948618930423866180410558458272606627111270040091203073580238905303994472202930783207472394578498507764703191288249547659899997131166130259700604433891232298182348403175947450284433411265966789131024573629546048637848902243503970966798589660808533\"}", "pok": "{\"challenge\": \"1332480086668557441201643372581202887936359529158\", \"commitment\": \"7293717602937930303539334035585992874848225578069230321020475395302271618251676625339394037113615768448191844038177138377398628710618534554579159024696839244259150329975275908657630895950271024845960009174103501808710068228131410574426743388071115904258299345649002261830811651722360713255177643626318539836219484536768879576493216269723082810883816923164505226562312363786695925147039779580512980526559772797170383031088424275717164298259873455954031483604235513390512830986257955559268237959148131455635082412955562162650368183295042919718548235596451502134150497646725301296162346004092475784579091583032361772546\", \"response\": \"36391699599264859021278138939148792146348548118365171047783454096022492035033\"}", "name": "Ben for Helios", "decryption_proofs": "[[{\"challenge\": \"1380551719414920400171525057971082717628333383331\", \"commitment\": {\"A\": \"7507017710713706541866854087239255878832243462282927934861869264579266153414135774039907501610333661411307392124516064716169762187793122422653392413694719341072929833428803311467184790384552952122962719439993321491850563305827711174757159530056482044086113086278819776836755900476312486344691968144982867821153845953505709371731535352078308509107142372383678069818043698670113799637374050281502657094511525050466016215603846575745518886258884256517535305086140932732185093382337472216944115745914507235107089359391149241488464243538039888427232320387045242147289454894324102498622240371772307962377543359644138050732\", \"B\": \"9380537358717287794361139802208298689612038093915331354273755926136271364418368655784719731999399724919985020788675784918253914203053520739646207663258321982296961284260527867979102137369345188902946846882488328401755614672409311174738591638094760071468127665833627085404365535363865725138469740172195165916006849929747492989908204997577576884613794053639111878642291186924488222075700172352004236504102819795276258902217943337913405984290899494969828003129050711264077492215521097345600028545889724146142447720830350928361819900593545829887714375518026393470442073999043111656408350218492657773508327008142722765323\"}, \"response\": \"14968183763730862563804542741411408992850421513002294375208895154010692113473\"}, {\"challenge\": \"928781902643353178142869485767256501013266757862\", \"commitment\": {\"A\": \"15633563423080526706419747992138418264348782035013504564013594194243510158773485945327967048961356486383215212483462348169538997687212412994065370129208651376716134738309040011956812348225502246726068743645442345760299758855171800338513471629907181869261235290967637848308843443030196462480968462064736152282506400094906707590048929424501814668795548146042465351489547617128013409539657112623382498325505218672820602470148627899073221474369783740192103073229959882697932789244332982166130368921202267521575861224848623085043804713412700008533796217785099336299831697244176527202186978470212364757532134819680354563148\", \"B\": \"12096486616787847940422910780868545368459722844257079241138940841283178564454214852156457535709117643371874960603512077501609448142224981337250893956754326973500016429330818806066472007235463129546869618768400286717676281057649118636738883493045882628597975596370121648765372944460751900559383299236537662147422350456179701023239887170947370958443802128313476878264884880050610028894804375661112294041896485336368667604232816382543157191078316625625754668916289488659228524702708688069886061853971910775735555019155194573765265940727358626391662769501006863366189078852671910748052355802446751747021021118425535805993\"}, \"response\": \"28211487355296799049673241288040839050179434119064067463499443482498217208519\"}, {\"challenge\": \"1185875285287724841734729620564063765892683320674\", \"commitment\": {\"A\": \"7001208902949083725612528497286173590963128243388233050364170894167119730650686852382051453769934272573826748192906372573117172855830955054429366729378203493623800707261267780120888516763713550790929472508859603645362641253784170132183853580904592671772431762071089997631711457767213127284054889939710921678409142902073069362109320972478847445503275495123009954969192201274037955597083943422722576587379742825967553563854890578564608501050212319484234660576151814389620150885481795600159904595945676049646628070476825084214555838090776625145999421406237953264094965910871533178888382695722903443177374943370529435835\", \"B\": \"9283256001439934493735625502538426523693868357198892770123498611555555299897475884431602692985751553635974299868188199546120099533813550264738209145580148682133736994277447303232404855460267466835171618461494856527451536401919045811368542455888163074798675752166973030905486052563091739924121583631082909857054169008129824182126348494239756670544488941688557994938824882239628149105470894355324069394350165968806256153572521355852908171187431792943362931378932369391344262912306194221041082329544009406130999320321982717816319748626422183292293407260745830456452071148377105696849366938448681719121826747318585394449\"}, \"response\": \"35940004930824655560273271912769310469877395464343390517827902063029021070522\"}]]", "secret": "cCckQxMt34gi", "election": 1, "public_key_hash": "hSeyI5ZlWhNshRfur8uhRHxqbi/vVqKGb4P+FdUnR8o", "secret_key": "{\"x\": \"16005388145081131844879702159816380093588036047451384431130259662992029443624026318970562260272120587261393284363542518569391452382369249932333676351315398477129891095120523003328480376873958075985143480062804837658107571391518376403590301476378514425362741872602623178825738994339324021624724807784600813090052134766237887122838918167022578896510027628605349253760682883849478673881175379345895010771593356545048012214886174088387364386859743113585615521057884719510571320329089457413362774250338248390404419684724069497574413459557247072960862781228007880248431226584871900019890901724707636999442425643478871203395\", \"public_key\": {\"y\": \"10209996196141455592954150806595590302779517452973425513133143319891192812034378656046616286290215682512560281253780168350968078321298815359346112476103153663350347613425264137270664984993821707972591603600995748437418960965874687695519139184521329861807151368087170846679616051889191498465971754449242176181010116247194146889436200685706775658837872315899212063389435005791600156232673825152649290306522408636413180876447424057387927560622286232455842226141935616726284027452689619467330786904141326022591988410271656808992679125143841590661998535192138516435006042519265859141061154934003554664919161933342577547196\", \"p\": \"16328632084933010002384055033805457329601614771185955389739167309086214800406465799038583634953752941675645562182498120750264980492381375579367675648771293800310370964745767014243638518442553823973482995267304044326777047662957480269391322789378384619428596446446984694306187644767462460965622580087564339212631775817895958409016676398975671266179637898557687317076177218843233150695157881061257053019133078545928983562221396313169622475509818442661047018436264806901023966236718367204710755935899013750306107738002364137917426595737403871114187750804346564731250609196846638183903982387884578266136503697493474682071\", \"q\": \"61329566248342901292543872769978950870633559608669337131139375508370458778917\", \"g\": \"14887492224963187634282421537186040801304008017743492304481737382571933937568724473847106029915040150784031882206090286938661464458896494215273989547889201144857352611058572236578734319505128042602372864570426550855201448111746579871811249114781674309062693442442368697449970648232621880001709535143047913661432883287150003429802392229361583608686643243349727791976247247948618930423866180410558458272606627111270040091203073580238905303994472202930783207472394578498507764703191288249547659899997131166130259700604433891232298182348403175947450284433411265966789131024573629546048637848902243503970966798589660808533\"}}", "decryption_factors": "[[\"6472995696323449481761379982226987034204671847521280173533677671800764813049225642765553350990023913842413237138994293559420693903825662068604923689287872415577051463244183680254762458861919465321996886414454802637697911164542594307379406907302286457272189409620028333641643603878239149886302645287899635957429604613780743866054390180292694767552575334318878336726590042824600404857161528120082698503521888035480554396084523318391075327196170151150017179381762494738064997274952677744062885141254893966429696256647729546503511682475164521390015781174526069960261297951569915608591534531987906457590536635969717163017\", \"4694987036530822221969862722934807245252033236096286470958607647670667339966405067211401183900486152849338828231866947753384000515948363917537698461367938226635095051908983060837577141637079223791250760708100706116554435071563140176091228666812675154652983071813350108415009127448215287774568670658220922979555810609621103674935794988428755665984799963804061832930765121869645042320772546611747793882117497557727049006950340697861932746306602015638014326057316264719067026691985946612284378220471949526380850668823330863033387059030694538020710485275895898243819680400129463078761698466522349987023411487281520474883\", \"10295246473033461943758026743789596939350509698742039970315795780884125241389014443917881746198829796581532942808439005949283365779117479508160568372317140210333337134392167953936839851684527674630949696312674486436145278957756779729314631536871251419768935267394895633742684422354002503367119198418556623190787101973681238871389852824878971817620102647834188822139335392978368269353706515717026270035928407046024774088938767955368659221078544511315129408774954569106438025396242766355252175143630049198659910228039324058865260398970570436187058310718047632290796972241903647262820809895006837802544169684965043985217\"]]", "email": "ben@adida.net", "uuid": "4269f398-0eae-4351-9027-c2d9ee1767c3"}}] \ No newline at end of file diff --git a/helios/fixtures/users.json b/helios/fixtures/users.json index 62f2a32..c588ce4 100644 --- a/helios/fixtures/users.json +++ b/helios/fixtures/users.json @@ -1 +1 @@ -[{"pk": 1, "model": "auth.user", "fields": {"info": "{}", "user_id": "ben@adida.net", "name": "Ben Adida", "user_type": "google", "token": null, "admin_p": false}},{"pk": 2, "model": "auth.user", "fields": {"info": "{}", "user_id": "12345", "name": "Ben Adida", "user_type": "facebook", "token": {"access_token":"1234"}, "admin_p": false}}] \ No newline at end of file +[{"pk": 1, "model": "helios_auth.user", "fields": {"info": "{}", "user_id": "ben@adida.net", "name": "Ben Adida", "user_type": "google", "token": null, "admin_p": false}},{"pk": 2, "model": "helios_auth.user", "fields": {"info": "{}", "user_id": "12345", "name": "Ben Adida", "user_type": "facebook", "token": {"access_token":"1234"}, "admin_p": false}}] \ No newline at end of file diff --git a/helios/migrations/0001_initial.py b/helios/migrations/0001_initial.py index 5d3b723..4fa118c 100644 --- a/helios/migrations/0001_initial.py +++ b/helios/migrations/0001_initial.py @@ -11,15 +11,15 @@ class Migration(SchemaMigration): # Adding model 'Election' db.create_table('helios_election', ( ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('admin', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['auth.User'])), + ('admin', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['helios_auth.User'])), ('uuid', self.gf('django.db.models.fields.CharField')(max_length=50)), ('short_name', self.gf('django.db.models.fields.CharField')(max_length=100)), ('name', self.gf('django.db.models.fields.CharField')(max_length=250)), ('description', self.gf('django.db.models.fields.TextField')()), - ('public_key', self.gf('auth.jsonfield.JSONField')(null=True)), - ('private_key', self.gf('auth.jsonfield.JSONField')(null=True)), - ('questions', self.gf('auth.jsonfield.JSONField')(null=True)), - ('eligibility', self.gf('auth.jsonfield.JSONField')(null=True)), + ('public_key', self.gf('helios_auth.jsonfield.JSONField')(null=True)), + ('private_key', self.gf('helios_auth.jsonfield.JSONField')(null=True)), + ('questions', self.gf('helios_auth.jsonfield.JSONField')(null=True)), + ('eligibility', self.gf('helios_auth.jsonfield.JSONField')(null=True)), ('openreg', self.gf('django.db.models.fields.BooleanField')(default=False)), ('featured_p', self.gf('django.db.models.fields.BooleanField')(default=False)), ('use_voter_aliases', self.gf('django.db.models.fields.BooleanField')(default=False)), @@ -39,9 +39,9 @@ class Migration(SchemaMigration): ('tallying_finished_at', self.gf('django.db.models.fields.DateTimeField')(default=None, null=True)), ('tallies_combined_at', self.gf('django.db.models.fields.DateTimeField')(default=None, null=True)), ('voters_hash', self.gf('django.db.models.fields.CharField')(max_length=100, null=True)), - ('encrypted_tally', self.gf('auth.jsonfield.JSONField')(null=True)), - ('result', self.gf('auth.jsonfield.JSONField')(null=True)), - ('result_proof', self.gf('auth.jsonfield.JSONField')(null=True)), + ('encrypted_tally', self.gf('helios_auth.jsonfield.JSONField')(null=True)), + ('result', self.gf('helios_auth.jsonfield.JSONField')(null=True)), + ('result_proof', self.gf('helios_auth.jsonfield.JSONField')(null=True)), )) db.send_create_signal('helios', ['Election']) @@ -75,7 +75,7 @@ class Migration(SchemaMigration): ('voter_id', self.gf('django.db.models.fields.CharField')(max_length=100)), ('uuid', self.gf('django.db.models.fields.CharField')(max_length=50)), ('alias', self.gf('django.db.models.fields.CharField')(max_length=100, null=True)), - ('vote', self.gf('auth.jsonfield.JSONField')(null=True)), + ('vote', self.gf('helios_auth.jsonfield.JSONField')(null=True)), ('vote_hash', self.gf('django.db.models.fields.CharField')(max_length=100, null=True)), ('cast_at', self.gf('django.db.models.fields.DateTimeField')(null=True)), )) @@ -85,7 +85,7 @@ class Migration(SchemaMigration): db.create_table('helios_castvote', ( ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), ('voter', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['helios.Voter'])), - ('vote', self.gf('auth.jsonfield.JSONField')()), + ('vote', self.gf('helios_auth.jsonfield.JSONField')()), ('vote_hash', self.gf('django.db.models.fields.CharField')(max_length=100)), ('cast_at', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, blank=True)), ('verified_at', self.gf('django.db.models.fields.DateTimeField')(null=True)), @@ -111,12 +111,12 @@ class Migration(SchemaMigration): ('name', self.gf('django.db.models.fields.CharField')(max_length=200)), ('email', self.gf('django.db.models.fields.EmailField')(max_length=75)), ('secret', self.gf('django.db.models.fields.CharField')(max_length=100)), - ('public_key', self.gf('auth.jsonfield.JSONField')(null=True)), + ('public_key', self.gf('helios_auth.jsonfield.JSONField')(null=True)), ('public_key_hash', self.gf('django.db.models.fields.CharField')(max_length=100)), - ('secret_key', self.gf('auth.jsonfield.JSONField')(null=True)), - ('pok', self.gf('auth.jsonfield.JSONField')(null=True)), - ('decryption_factors', self.gf('auth.jsonfield.JSONField')(null=True)), - ('decryption_proofs', self.gf('auth.jsonfield.JSONField')(null=True)), + ('secret_key', self.gf('helios_auth.jsonfield.JSONField')(null=True)), + ('pok', self.gf('helios_auth.jsonfield.JSONField')(null=True)), + ('decryption_factors', self.gf('helios_auth.jsonfield.JSONField')(null=True)), + ('decryption_proofs', self.gf('helios_auth.jsonfield.JSONField')(null=True)), )) db.send_create_signal('helios', ['Trustee']) @@ -146,13 +146,13 @@ class Migration(SchemaMigration): models = { - 'auth.user': { + 'helios_auth.user': { 'Meta': {'unique_together': "(('user_type', 'user_id'),)", 'object_name': 'User'}, 'admin_p': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'info': ('auth.jsonfield.JSONField', [], {}), + 'info': ('helios_auth.jsonfield.JSONField', [], {}), 'name': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True'}), - 'token': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'token': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'user_id': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'user_type': ('django.db.models.fields.CharField', [], {'max_length': '50'}) }, @@ -170,31 +170,31 @@ class Migration(SchemaMigration): 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), 'invalidated_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), 'verified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'vote': ('auth.jsonfield.JSONField', [], {}), + 'vote': ('helios_auth.jsonfield.JSONField', [], {}), 'vote_hash': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'voter': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios.Voter']"}) }, 'helios.election': { 'Meta': {'object_name': 'Election'}, - 'admin': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']"}), + 'admin': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios_auth.User']"}), 'archived_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), 'cast_url': ('django.db.models.fields.CharField', [], {'max_length': '500'}), 'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), 'description': ('django.db.models.fields.TextField', [], {}), - 'eligibility': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'encrypted_tally': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'eligibility': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'encrypted_tally': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'featured_p': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), 'frozen_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), 'modified_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), 'name': ('django.db.models.fields.CharField', [], {'max_length': '250'}), 'openreg': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'private_key': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'public_key': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'questions': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'private_key': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'public_key': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'questions': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'registration_starts_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), - 'result': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'result_proof': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'result': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'result_proof': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'short_name': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'tallies_combined_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), 'tallying_finished_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), @@ -218,17 +218,17 @@ class Migration(SchemaMigration): }, 'helios.trustee': { 'Meta': {'object_name': 'Trustee'}, - 'decryption_factors': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'decryption_proofs': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'decryption_factors': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'decryption_proofs': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'election': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios.Election']"}), 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75'}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), 'name': ('django.db.models.fields.CharField', [], {'max_length': '200'}), - 'pok': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'public_key': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'pok': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'public_key': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'public_key_hash': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'secret': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'secret_key': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'secret_key': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'uuid': ('django.db.models.fields.CharField', [], {'max_length': '50'}) }, 'helios.voter': { @@ -239,7 +239,7 @@ class Migration(SchemaMigration): 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), 'name': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True'}), 'uuid': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'vote': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'vote': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'vote_hash': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True'}), 'voter_id': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'voter_type': ('django.db.models.fields.CharField', [], {'max_length': '100'}) diff --git a/helios/migrations/0002_v3_1_new_election_and_voter_fields.py b/helios/migrations/0002_v3_1_new_election_and_voter_fields.py index 1bb3919..a5d4e1d 100644 --- a/helios/migrations/0002_v3_1_new_election_and_voter_fields.py +++ b/helios/migrations/0002_v3_1_new_election_and_voter_fields.py @@ -9,7 +9,7 @@ class Migration(SchemaMigration): def forwards(self, orm): # Adding field 'Voter.user' - db.add_column('helios_voter', 'user', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['auth.User'], null=True), keep_default=False) + db.add_column('helios_voter', 'user', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['helios_auth.User'], null=True), keep_default=False) # Adding field 'Voter.voter_login_id' db.add_column('helios_voter', 'voter_login_id', self.gf('django.db.models.fields.CharField')(max_length=100, null=True), keep_default=False) @@ -73,13 +73,13 @@ class Migration(SchemaMigration): models = { - 'auth.user': { + 'helios_auth.user': { 'Meta': {'unique_together': "(('user_type', 'user_id'),)", 'object_name': 'User'}, 'admin_p': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'info': ('auth.jsonfield.JSONField', [], {}), + 'info': ('helios_auth.jsonfield.JSONField', [], {}), 'name': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True'}), - 'token': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'token': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'user_id': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'user_type': ('django.db.models.fields.CharField', [], {'max_length': '50'}) }, @@ -97,35 +97,35 @@ class Migration(SchemaMigration): 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), 'invalidated_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), 'verified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'vote': ('auth.jsonfield.JSONField', [], {}), + 'vote': ('helios_auth.jsonfield.JSONField', [], {}), 'vote_hash': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'vote_tinyhash': ('django.db.models.fields.CharField', [], {'max_length': '50', 'unique': 'True', 'null': 'True'}), 'voter': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios.Voter']"}) }, 'helios.election': { 'Meta': {'object_name': 'Election'}, - 'admin': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']"}), + 'admin': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios_auth.User']"}), 'archived_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), 'cast_url': ('django.db.models.fields.CharField', [], {'max_length': '500'}), 'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), 'datatype': ('django.db.models.fields.CharField', [], {'default': "'legacy/Election'", 'max_length': '250'}), 'description': ('django.db.models.fields.TextField', [], {}), 'election_type': ('django.db.models.fields.CharField', [], {'default': "'election'", 'max_length': '250'}), - 'eligibility': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'encrypted_tally': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'eligibility': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'encrypted_tally': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'featured_p': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), 'frozen_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), 'modified_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), 'name': ('django.db.models.fields.CharField', [], {'max_length': '250'}), 'openreg': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'private_key': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'private_key': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'private_p': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'public_key': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'questions': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'public_key': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'questions': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'registration_starts_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), - 'result': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'result_proof': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'result': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'result_proof': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'short_name': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'tallies_combined_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), 'tallying_finished_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), @@ -150,17 +150,17 @@ class Migration(SchemaMigration): }, 'helios.trustee': { 'Meta': {'object_name': 'Trustee'}, - 'decryption_factors': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'decryption_proofs': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'decryption_factors': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'decryption_proofs': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'election': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios.Election']"}), 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75'}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), 'name': ('django.db.models.fields.CharField', [], {'max_length': '200'}), - 'pok': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'public_key': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'pok': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'public_key': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'public_key_hash': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'secret': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'secret_key': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'secret_key': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'uuid': ('django.db.models.fields.CharField', [], {'max_length': '50'}) }, 'helios.voter': { @@ -170,9 +170,9 @@ class Migration(SchemaMigration): 'election': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios.Election']"}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), 'name': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True'}), + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios_auth.User']", 'null': 'True'}), 'uuid': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'vote': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'vote': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'vote_hash': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True'}), 'voter_email': ('django.db.models.fields.CharField', [], {'max_length': '250', 'null': 'True'}), 'voter_id': ('django.db.models.fields.CharField', [], {'max_length': '100'}), diff --git a/helios/migrations/0003_v3_1_election_specific_voters_with_passwords.py b/helios/migrations/0003_v3_1_election_specific_voters_with_passwords.py index cd9c3d3..573279f 100644 --- a/helios/migrations/0003_v3_1_election_specific_voters_with_passwords.py +++ b/helios/migrations/0003_v3_1_election_specific_voters_with_passwords.py @@ -19,7 +19,7 @@ class Migration(DataMigration): # use the .iterator() call to reduce caching and make this more efficient # so as not to trigger a memory error for v in orm.Voter.objects.all().iterator(): - user = orm['auth.User'].objects.get(user_type = v.voter_type, user_id = v.voter_id) + user = orm['helios_auth.User'].objects.get(user_type = v.voter_type, user_id = v.voter_id) if v.voter_type == 'password': v.voter_login_id = v.voter_id @@ -55,13 +55,13 @@ class Migration(DataMigration): models = { - 'auth.user': { + 'helios_auth.user': { 'Meta': {'unique_together': "(('user_type', 'user_id'),)", 'object_name': 'User'}, 'admin_p': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'info': ('auth.jsonfield.JSONField', [], {}), + 'info': ('helios_auth.jsonfield.JSONField', [], {}), 'name': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True'}), - 'token': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'token': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'user_id': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'user_type': ('django.db.models.fields.CharField', [], {'max_length': '50'}) }, @@ -79,35 +79,35 @@ class Migration(DataMigration): 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), 'invalidated_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), 'verified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'vote': ('auth.jsonfield.JSONField', [], {}), + 'vote': ('helios_auth.jsonfield.JSONField', [], {}), 'vote_hash': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'vote_tinyhash': ('django.db.models.fields.CharField', [], {'max_length': '50', 'unique': 'True', 'null': 'True'}), 'voter': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios.Voter']"}) }, 'helios.election': { 'Meta': {'object_name': 'Election'}, - 'admin': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']"}), + 'admin': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios_auth.User']"}), 'archived_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), 'cast_url': ('django.db.models.fields.CharField', [], {'max_length': '500'}), 'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), 'datatype': ('django.db.models.fields.CharField', [], {'default': "'legacy/Election'", 'max_length': '250'}), 'description': ('django.db.models.fields.TextField', [], {}), 'election_type': ('django.db.models.fields.CharField', [], {'default': "'election'", 'max_length': '250'}), - 'eligibility': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'encrypted_tally': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'eligibility': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'encrypted_tally': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'featured_p': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), 'frozen_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), 'modified_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), 'name': ('django.db.models.fields.CharField', [], {'max_length': '250'}), 'openreg': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'private_key': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'private_key': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'private_p': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'public_key': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'questions': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'public_key': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'questions': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'registration_starts_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), - 'result': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'result_proof': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'result': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'result_proof': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'short_name': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'tallies_combined_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), 'tallying_finished_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), @@ -132,17 +132,17 @@ class Migration(DataMigration): }, 'helios.trustee': { 'Meta': {'object_name': 'Trustee'}, - 'decryption_factors': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'decryption_proofs': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'decryption_factors': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'decryption_proofs': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'election': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios.Election']"}), 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75'}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), 'name': ('django.db.models.fields.CharField', [], {'max_length': '200'}), - 'pok': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'public_key': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'pok': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'public_key': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'public_key_hash': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'secret': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'secret_key': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'secret_key': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'uuid': ('django.db.models.fields.CharField', [], {'max_length': '50'}) }, 'helios.voter': { @@ -152,9 +152,9 @@ class Migration(DataMigration): 'election': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios.Election']"}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), 'name': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True'}), + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios_auth.User']", 'null': 'True'}), 'uuid': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'vote': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'vote': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'vote_hash': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True'}), 'voter_email': ('django.db.models.fields.CharField', [], {'max_length': '250', 'null': 'True'}), 'voter_id': ('django.db.models.fields.CharField', [], {'max_length': '100'}), diff --git a/helios/migrations/0004_v3_1_remove_voter_fields.py b/helios/migrations/0004_v3_1_remove_voter_fields.py index 620152e..b934e94 100644 --- a/helios/migrations/0004_v3_1_remove_voter_fields.py +++ b/helios/migrations/0004_v3_1_remove_voter_fields.py @@ -33,13 +33,13 @@ class Migration(SchemaMigration): models = { - 'auth.user': { + 'helios_auth.user': { 'Meta': {'unique_together': "(('user_type', 'user_id'),)", 'object_name': 'User'}, 'admin_p': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'info': ('auth.jsonfield.JSONField', [], {}), + 'info': ('helios_auth.jsonfield.JSONField', [], {}), 'name': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True'}), - 'token': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'token': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'user_id': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'user_type': ('django.db.models.fields.CharField', [], {'max_length': '50'}) }, @@ -57,35 +57,35 @@ class Migration(SchemaMigration): 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), 'invalidated_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), 'verified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'vote': ('auth.jsonfield.JSONField', [], {}), + 'vote': ('helios_auth.jsonfield.JSONField', [], {}), 'vote_hash': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'vote_tinyhash': ('django.db.models.fields.CharField', [], {'max_length': '50', 'unique': 'True', 'null': 'True'}), 'voter': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios.Voter']"}) }, 'helios.election': { 'Meta': {'object_name': 'Election'}, - 'admin': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']"}), + 'admin': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios_auth.User']"}), 'archived_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), 'cast_url': ('django.db.models.fields.CharField', [], {'max_length': '500'}), 'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), 'datatype': ('django.db.models.fields.CharField', [], {'default': "'legacy/Election'", 'max_length': '250'}), 'description': ('django.db.models.fields.TextField', [], {}), 'election_type': ('django.db.models.fields.CharField', [], {'default': "'election'", 'max_length': '250'}), - 'eligibility': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'encrypted_tally': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'eligibility': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'encrypted_tally': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'featured_p': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), 'frozen_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), 'modified_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), 'name': ('django.db.models.fields.CharField', [], {'max_length': '250'}), 'openreg': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'private_key': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'private_key': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'private_p': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'public_key': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'questions': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'public_key': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'questions': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'registration_starts_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), - 'result': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'result_proof': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'result': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'result_proof': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'short_name': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'tallies_combined_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), 'tallying_finished_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), @@ -110,17 +110,17 @@ class Migration(SchemaMigration): }, 'helios.trustee': { 'Meta': {'object_name': 'Trustee'}, - 'decryption_factors': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'decryption_proofs': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'decryption_factors': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'decryption_proofs': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'election': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios.Election']"}), 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75'}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), 'name': ('django.db.models.fields.CharField', [], {'max_length': '200'}), - 'pok': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'public_key': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'pok': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'public_key': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'public_key_hash': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'secret': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'secret_key': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'secret_key': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'uuid': ('django.db.models.fields.CharField', [], {'max_length': '50'}) }, 'helios.voter': { @@ -129,9 +129,9 @@ class Migration(SchemaMigration): 'cast_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), 'election': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios.Election']"}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True'}), + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios_auth.User']", 'null': 'True'}), 'uuid': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'vote': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'vote': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'vote_hash': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True'}), 'voter_email': ('django.db.models.fields.CharField', [], {'max_length': '250', 'null': 'True'}), 'voter_login_id': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True'}), diff --git a/helios/migrations/0005_add_quarantine_fields.py b/helios/migrations/0005_add_quarantine_fields.py index 51cfc99..b0f9f1d 100644 --- a/helios/migrations/0005_add_quarantine_fields.py +++ b/helios/migrations/0005_add_quarantine_fields.py @@ -31,13 +31,13 @@ class Migration(SchemaMigration): models = { - 'auth.user': { + 'helios_auth.user': { 'Meta': {'unique_together': "(('user_type', 'user_id'),)", 'object_name': 'User'}, 'admin_p': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'info': ('auth.jsonfield.JSONField', [], {}), + 'info': ('helios_auth.jsonfield.JSONField', [], {}), 'name': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True'}), - 'token': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'token': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'user_id': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'user_type': ('django.db.models.fields.CharField', [], {'max_length': '50'}) }, @@ -57,14 +57,14 @@ class Migration(SchemaMigration): 'quarantined_p': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), 'released_from_quarantine_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), 'verified_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), - 'vote': ('auth.jsonfield.JSONField', [], {}), + 'vote': ('helios_auth.jsonfield.JSONField', [], {}), 'vote_hash': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'vote_tinyhash': ('django.db.models.fields.CharField', [], {'max_length': '50', 'unique': 'True', 'null': 'True'}), 'voter': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios.Voter']"}) }, 'helios.election': { 'Meta': {'object_name': 'Election'}, - 'admin': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']"}), + 'admin': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios_auth.User']"}), 'archived_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), 'cast_url': ('django.db.models.fields.CharField', [], {'max_length': '500'}), 'complaint_period_ends_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), @@ -72,21 +72,21 @@ class Migration(SchemaMigration): 'datatype': ('django.db.models.fields.CharField', [], {'default': "'legacy/Election'", 'max_length': '250'}), 'description': ('django.db.models.fields.TextField', [], {}), 'election_type': ('django.db.models.fields.CharField', [], {'default': "'election'", 'max_length': '250'}), - 'eligibility': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'encrypted_tally': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'eligibility': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'encrypted_tally': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'featured_p': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), 'frozen_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), 'modified_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), 'name': ('django.db.models.fields.CharField', [], {'max_length': '250'}), 'openreg': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'private_key': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'private_key': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'private_p': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'public_key': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'questions': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'public_key': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'questions': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'registration_starts_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), - 'result': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'result_proof': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'result': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'result_proof': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'short_name': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'tallies_combined_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), 'tallying_finished_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), @@ -111,17 +111,17 @@ class Migration(SchemaMigration): }, 'helios.trustee': { 'Meta': {'object_name': 'Trustee'}, - 'decryption_factors': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'decryption_proofs': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'decryption_factors': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'decryption_proofs': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'election': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios.Election']"}), 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75'}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), 'name': ('django.db.models.fields.CharField', [], {'max_length': '200'}), - 'pok': ('auth.jsonfield.JSONField', [], {'null': 'True'}), - 'public_key': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'pok': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), + 'public_key': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'public_key_hash': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'secret': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'secret_key': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'secret_key': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'uuid': ('django.db.models.fields.CharField', [], {'max_length': '50'}) }, 'helios.voter': { @@ -130,9 +130,9 @@ class Migration(SchemaMigration): 'cast_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), 'election': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios.Election']"}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True'}), + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios_auth.User']", 'null': 'True'}), 'uuid': ('django.db.models.fields.CharField', [], {'max_length': '50'}), - 'vote': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'vote': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'vote_hash': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True'}), 'voter_email': ('django.db.models.fields.CharField', [], {'max_length': '250', 'null': 'True'}), 'voter_login_id': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True'}), diff --git a/helios/migrations/0006_auto__chg_field_voter_vote__add_unique_voter_voter_login_id_election__.py b/helios/migrations/0006_auto__chg_field_voter_vote__add_unique_voter_voter_login_id_election__.py index 2674608..2791e49 100644 --- a/helios/migrations/0006_auto__chg_field_voter_vote__add_unique_voter_voter_login_id_election__.py +++ b/helios/migrations/0006_auto__chg_field_voter_vote__add_unique_voter_voter_login_id_election__.py @@ -57,53 +57,53 @@ class Migration(SchemaMigration): db.delete_unique('helios_voter', ['voter_login_id', 'election_id']) # Changing field 'Voter.vote' - db.alter_column('helios_voter', 'vote', self.gf('auth.jsonfield.JSONField')(null=True)) + db.alter_column('helios_voter', 'vote', self.gf('helios_auth.jsonfield.JSONField')(null=True)) # Changing field 'Election.result' - db.alter_column('helios_election', 'result', self.gf('auth.jsonfield.JSONField')(null=True)) + db.alter_column('helios_election', 'result', self.gf('helios_auth.jsonfield.JSONField')(null=True)) # Changing field 'Election.questions' - db.alter_column('helios_election', 'questions', self.gf('auth.jsonfield.JSONField')(null=True)) + db.alter_column('helios_election', 'questions', self.gf('helios_auth.jsonfield.JSONField')(null=True)) # Changing field 'Election.encrypted_tally' - db.alter_column('helios_election', 'encrypted_tally', self.gf('auth.jsonfield.JSONField')(null=True)) + db.alter_column('helios_election', 'encrypted_tally', self.gf('helios_auth.jsonfield.JSONField')(null=True)) # Changing field 'Election.eligibility' - db.alter_column('helios_election', 'eligibility', self.gf('auth.jsonfield.JSONField')(null=True)) + db.alter_column('helios_election', 'eligibility', self.gf('helios_auth.jsonfield.JSONField')(null=True)) # Changing field 'Election.private_key' - db.alter_column('helios_election', 'private_key', self.gf('auth.jsonfield.JSONField')(null=True)) + db.alter_column('helios_election', 'private_key', self.gf('helios_auth.jsonfield.JSONField')(null=True)) # Changing field 'Election.public_key' - db.alter_column('helios_election', 'public_key', self.gf('auth.jsonfield.JSONField')(null=True)) + db.alter_column('helios_election', 'public_key', self.gf('helios_auth.jsonfield.JSONField')(null=True)) # Changing field 'Trustee.public_key' - db.alter_column('helios_trustee', 'public_key', self.gf('auth.jsonfield.JSONField')(null=True)) + db.alter_column('helios_trustee', 'public_key', self.gf('helios_auth.jsonfield.JSONField')(null=True)) # Changing field 'Trustee.decryption_proofs' - db.alter_column('helios_trustee', 'decryption_proofs', self.gf('auth.jsonfield.JSONField')(null=True)) + db.alter_column('helios_trustee', 'decryption_proofs', self.gf('helios_auth.jsonfield.JSONField')(null=True)) # Changing field 'Trustee.pok' - db.alter_column('helios_trustee', 'pok', self.gf('auth.jsonfield.JSONField')(null=True)) + db.alter_column('helios_trustee', 'pok', self.gf('helios_auth.jsonfield.JSONField')(null=True)) # Changing field 'Trustee.secret_key' - db.alter_column('helios_trustee', 'secret_key', self.gf('auth.jsonfield.JSONField')(null=True)) + db.alter_column('helios_trustee', 'secret_key', self.gf('helios_auth.jsonfield.JSONField')(null=True)) # Changing field 'Trustee.decryption_factors' - db.alter_column('helios_trustee', 'decryption_factors', self.gf('auth.jsonfield.JSONField')(null=True)) + db.alter_column('helios_trustee', 'decryption_factors', self.gf('helios_auth.jsonfield.JSONField')(null=True)) # Changing field 'CastVote.vote' - db.alter_column('helios_castvote', 'vote', self.gf('auth.jsonfield.JSONField')()) + db.alter_column('helios_castvote', 'vote', self.gf('helios_auth.jsonfield.JSONField')()) models = { - 'auth.user': { + 'helios_auth.user': { 'Meta': {'unique_together': "(('user_type', 'user_id'),)", 'object_name': 'User'}, 'admin_p': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'info': ('auth.jsonfield.JSONField', [], {}), + 'info': ('helios_auth.jsonfield.JSONField', [], {}), 'name': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True'}), - 'token': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'token': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'user_id': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'user_type': ('django.db.models.fields.CharField', [], {'max_length': '50'}) }, @@ -130,7 +130,7 @@ class Migration(SchemaMigration): }, 'helios.election': { 'Meta': {'object_name': 'Election'}, - 'admin': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']"}), + 'admin': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios_auth.User']"}), 'archived_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), 'cast_url': ('django.db.models.fields.CharField', [], {'max_length': '500'}), 'complaint_period_ends_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), @@ -152,7 +152,7 @@ class Migration(SchemaMigration): 'questions': ('helios.datatypes.djangofield.LDObjectField', [], {'null': 'True'}), 'registration_starts_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), 'result': ('helios.datatypes.djangofield.LDObjectField', [], {'null': 'True'}), - 'result_proof': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'result_proof': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'short_name': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'tallies_combined_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), 'tallying_finished_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), @@ -196,7 +196,7 @@ class Migration(SchemaMigration): 'cast_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), 'election': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios.Election']"}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True'}), + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios_auth.User']", 'null': 'True'}), 'uuid': ('django.db.models.fields.CharField', [], {'max_length': '50'}), 'vote': ('helios.datatypes.djangofield.LDObjectField', [], {'null': 'True'}), 'vote_hash': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True'}), diff --git a/helios/migrations/0007_auto__add_field_voterfile_voter_file_content__chg_field_voterfile_vote.py b/helios/migrations/0007_auto__add_field_voterfile_voter_file_content__chg_field_voterfile_vote.py index 7cd3983..04a7f00 100644 --- a/helios/migrations/0007_auto__add_field_voterfile_voter_file_content__chg_field_voterfile_vote.py +++ b/helios/migrations/0007_auto__add_field_voterfile_voter_file_content__chg_field_voterfile_vote.py @@ -25,13 +25,13 @@ class Migration(SchemaMigration): models = { - 'auth.user': { + 'helios_auth.user': { 'Meta': {'unique_together': "(('user_type', 'user_id'),)", 'object_name': 'User'}, 'admin_p': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'info': ('auth.jsonfield.JSONField', [], {}), + 'info': ('helios_auth.jsonfield.JSONField', [], {}), 'name': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True'}), - 'token': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'token': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'user_id': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'user_type': ('django.db.models.fields.CharField', [], {'max_length': '50'}) }, @@ -58,7 +58,7 @@ class Migration(SchemaMigration): }, 'helios.election': { 'Meta': {'object_name': 'Election'}, - 'admin': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']"}), + 'admin': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios_auth.User']"}), 'archived_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), 'cast_url': ('django.db.models.fields.CharField', [], {'max_length': '500'}), 'complaint_period_ends_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), @@ -80,7 +80,7 @@ class Migration(SchemaMigration): 'questions': ('helios.datatypes.djangofield.LDObjectField', [], {'null': 'True'}), 'registration_starts_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), 'result': ('helios.datatypes.djangofield.LDObjectField', [], {'null': 'True'}), - 'result_proof': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'result_proof': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'short_name': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'tallies_combined_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), 'tallying_finished_at': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}), @@ -124,7 +124,7 @@ class Migration(SchemaMigration): 'cast_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True'}), 'election': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios.Election']"}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True'}), + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['helios_auth.User']", 'null': 'True'}), 'uuid': ('django.db.models.fields.CharField', [], {'max_length': '50'}), 'vote': ('helios.datatypes.djangofield.LDObjectField', [], {'null': 'True'}), 'vote_hash': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True'}), diff --git a/helios/models.py b/helios/models.py index 3947b64..be0fa2f 100644 --- a/helios/models.py +++ b/helios/models.py @@ -20,9 +20,9 @@ import helios.views from helios import datatypes -# useful stuff in auth -from auth.models import User, AUTH_SYSTEMS -from auth.jsonfield import JSONField +# useful stuff in helios_auth +from helios_auth.models import User, AUTH_SYSTEMS +from helios_auth.jsonfield import JSONField from helios.datatypes.djangofield import LDObjectField import csv, copy @@ -428,7 +428,7 @@ class Election(HeliosModel): if self.voter_set.filter(user=None).count() > 0: voter_types.append('password') else: - # no password users, remove password from the possible auth systems + # no password users, remove password from the possible helios_auth systems if 'password' in auth_systems: auth_systems.remove('password') @@ -750,7 +750,7 @@ class Voter(HeliosModel): # for users of type password, no user object is created # but a dynamic user object is created automatically - user = models.ForeignKey('auth.User', null=True) + user = models.ForeignKey('helios_auth.User', null=True) # if user is null, then you need a voter login ID and password voter_login_id = models.CharField(max_length = 100, null=True) diff --git a/helios/security.py b/helios/security.py index f946052..41d2e48 100644 --- a/helios/security.py +++ b/helios/security.py @@ -13,7 +13,7 @@ from django.http import * from django.conf import settings from models import * -from auth.security import get_user +from helios_auth.security import get_user from django.http import HttpResponseRedirect import urllib diff --git a/helios/stats_views.py b/helios/stats_views.py index 456b12a..1d9bba1 100644 --- a/helios/stats_views.py +++ b/helios/stats_views.py @@ -10,7 +10,7 @@ from django.db import transaction from django.db.models import * from security import * -from auth.security import get_user, save_in_session_across_logouts +from helios_auth.security import get_user, save_in_session_across_logouts from view_utils import * from helios import tasks diff --git a/helios/templates/cast_done.html b/helios/templates/cast_done.html index 14b61fb..450d4ac 100644 --- a/helios/templates/cast_done.html +++ b/helios/templates/cast_done.html @@ -19,7 +19,7 @@ {% if logout %} <p><b>For your safety, we have logged you out.</b></p> -<iframe width="0" height="0" border="0" frameborder="0" src="/auth/logout"> +<iframe width="0" height="0" border="0" frameborder="0" src="/helios_auth/logout"> </iframe> {% endif %} diff --git a/helios/templates/election_bboard.html b/helios/templates/election_bboard.html index d170e66..cff3d1a 100644 --- a/helios/templates/election_bboard.html +++ b/helios/templates/election_bboard.html @@ -39,7 +39,7 @@ Name {% if election.use_voter_aliases %} {{voter.alias}} {% else %} -<img border="0" height="20" src="/static/auth/login-icons/{{voter.voter_type}}.png" alt="{{voter.voter_type}}" /> {% if voter.name %}{{voter.name}}{% else %}{{voter.voter_id}}{% endif %} +<img border="0" height="20" src="/static/helios_auth/login-icons/{{voter.voter_type}}.png" alt="{{voter.voter_type}}" /> {% if voter.name %}{{voter.name}}{% else %}{{voter.voter_id}}{% endif %} {% endif %}</td><td><tt style="font-size: 1.4em;;">{% if voter.vote_hash %}{{voter.vote_hash}} <span style="font-size:0.8em;">[<a href="{% url helios.views.voter_last_vote election_uuid=election.uuid,voter_uuid=voter.uuid %}">view</a>]</span>{% else %}—{% endif %}</tt></td></tr> {% endfor %} </table> diff --git a/helios/templates/election_view.html b/helios/templates/election_view.html index 6580d50..75900bf 100644 --- a/helios/templates/election_view.html +++ b/helios/templates/election_view.html @@ -244,7 +244,7 @@ You are <em>not eligible</em> to vote in this {{election.election_type}}. {% if election.openreg %} {% if election.eligibility %} This election is open to: {{election.pretty_eligibility|safe}} -<a href="{{settings.SECURE_URL_HOST}}{% url auth.views.index %}?return_url={{CURRENT_URL}}">Log in</a> to check your eligibility. +<a href="{{settings.SECURE_URL_HOST}}{% url helios_auth.views.index %}?return_url={{CURRENT_URL}}">Log in</a> to check your eligibility. {% else %} Anyone can vote in this election. {% endif %} diff --git a/helios/templates/voters_list.html b/helios/templates/voters_list.html index ce32bd1..051d449 100644 --- a/helios/templates/voters_list.html +++ b/helios/templates/voters_list.html @@ -127,7 +127,7 @@ Voters {{voters_page.start_index}} - {{voters_page.end_index}} (of {{total_voter [<a href="{% url helios.views.voters_email election.uuid %}?voter_id={{voter.voter_login_id}}">email</a>] [<a onclick="return confirm('are you sure you want to remove {{voter.name}} ?');" href="{% url helios.views.voter_delete election.uuid, voter.uuid %}">x</a>] {% endif %} -<img border="0" height="20" src="/static/auth/login-icons/{{voter.voter_type}}.png" alt="{{voter.voter_type}}" /> {{voter.name}}</td> +<img border="0" height="20" src="/static/helios_auth/login-icons/{{voter.voter_type}}.png" alt="{{voter.voter_type}}" /> {{voter.name}}</td> {% endif %} {% if election.use_voter_aliases %} <td>{{voter.alias}}</td> diff --git a/helios/test.py b/helios/test.py index 82eb2ab..086f117 100644 --- a/helios/test.py +++ b/helios/test.py @@ -3,7 +3,7 @@ Testing Helios Features """ from helios.models import * -from auth.models import * +from helios_auth.models import * import uuid def generate_voters(election, num_voters = 1000, start_with = 1): diff --git a/helios/tests.py b/helios/tests.py index 85d9b81..40be0f3 100644 --- a/helios/tests.py +++ b/helios/tests.py @@ -8,7 +8,7 @@ import django_webtest import models import datatypes -from auth import models as auth_models +from helios_auth import models as auth_models from views import ELGAMAL_PARAMS import views import utils @@ -161,7 +161,7 @@ class ElectionModelTests(TestCase): # fake out the facebook constraint checking, since # our access_token is obviously wrong - from auth.auth_systems import facebook + from helios_auth.auth_systems import facebook def fake_check_constraint(constraint, user): return constraint == {'group': {'id': '123', 'name':'Fake Group'}} and user == self.fb_user @@ -465,7 +465,7 @@ class ElectionBlackboxTests(WebTest): "use_advanced_audit_features": "1", "private_p" : "0"}) - self.assertRedirects(response, "/auth/?return_url=/helios/elections/new") + self.assertRedirects(response, "/helios_auth/?return_url=/helios/elections/new") def test_election_edit(self): # a bogus call to set up the session diff --git a/helios/utils.py b/helios/utils.py index 2ed4a77..5bb805b 100644 --- a/helios/utils.py +++ b/helios/utils.py @@ -8,8 +8,8 @@ Ben Adida - ben@adida.net import urllib, re, sys, datetime, urlparse, string import threading -# utils from auth, too -from auth.utils import * +# utils from helios_auth, too +from helios_auth.utils import * from django.conf import settings diff --git a/helios/view_utils.py b/helios/view_utils.py index 64ab748..70b85f6 100644 --- a/helios/view_utils.py +++ b/helios/view_utils.py @@ -15,7 +15,7 @@ from helios import datatypes # nicely update the wrapper function from functools import update_wrapper -from auth.security import get_user +from helios_auth.security import get_user import helios diff --git a/helios/views.py b/helios/views.py index 5721f20..c2cf8e3 100644 --- a/helios/views.py +++ b/helios/views.py @@ -21,17 +21,17 @@ from workflows import homomorphic from helios import utils as helios_utils from view_utils import * -from auth.security import * -from auth.auth_systems import AUTH_SYSTEMS, can_list_categories -from auth.models import AuthenticationExpired +from helios_auth.security import * +from helios_auth.auth_systems import AUTH_SYSTEMS, can_list_categories +from helios_auth.models import AuthenticationExpired from helios import security -from auth import views as auth_views +from helios_auth import views as auth_views import tasks from security import * -from auth.security import get_user, save_in_session_across_logouts +from helios_auth.security import get_user, save_in_session_across_logouts import uuid, datetime @@ -79,7 +79,7 @@ def get_socialbuttons_url(url, text): ## -## remote auth utils +## remote helios_auth utils def user_reauth(request, user): # FIXME: should we be wary of infinite redirects here, and diff --git a/helios_auth/__init__.py b/helios_auth/__init__.py index 5b4536c..c9382b2 100644 --- a/helios_auth/__init__.py +++ b/helios_auth/__init__.py @@ -1,9 +1,9 @@ from django.conf import settings -TEMPLATE_BASE = settings.AUTH_TEMPLATE_BASE or "auth/templates/base.html" +TEMPLATE_BASE = settings.AUTH_TEMPLATE_BASE or "helios_auth/templates/base.html" -# enabled auth systems +# enabled helios_auth systems import auth_systems ENABLED_AUTH_SYSTEMS = settings.AUTH_ENABLED_AUTH_SYSTEMS or auth_systems.AUTH_SYSTEMS.keys() DEFAULT_AUTH_SYSTEM = settings.AUTH_DEFAULT_AUTH_SYSTEM or None diff --git a/helios_auth/auth_systems/cas.py b/helios_auth/auth_systems/cas.py index d89f6fe..139a6d7 100644 --- a/helios_auth/auth_systems/cas.py +++ b/helios_auth/auth_systems/cas.py @@ -31,7 +31,7 @@ STATUS_UPDATES = False def _get_service_url(): # FIXME current URL - from auth.views import after + from helios_auth.views import after from django.conf import settings from django.core.urlresolvers import reverse diff --git a/helios_auth/auth_systems/facebook.py b/helios_auth/auth_systems/facebook.py index 1586fc6..53799e1 100644 --- a/helios_auth/auth_systems/facebook.py +++ b/helios_auth/auth_systems/facebook.py @@ -18,7 +18,7 @@ import urllib, urllib2, cgi STATUS_UPDATES = True STATUS_UPDATE_WORDING_TEMPLATE = "Send %s to your facebook status" -from auth import utils +from helios_auth import utils def facebook_url(url, params): if params: @@ -31,7 +31,7 @@ def facebook_get(url, params): try: return urllib2.urlopen(full_url).read() except urllib2.HTTPError: - from auth.models import AuthenticationExpired + from helios_auth.models import AuthenticationExpired raise AuthenticationExpired() def facebook_post(url, params): @@ -61,7 +61,7 @@ def get_user_info_after_auth(request): def update_status(user_id, user_info, token, message): """ - post a message to the auth system's update stream, e.g. twitter stream + post a message to the helios_auth system's update stream, e.g. twitter stream """ result = facebook_post('/me/feed', { 'access_token': token['access_token'], diff --git a/helios_auth/auth_systems/facebookclient/__init__.py b/helios_auth/auth_systems/facebookclient/__init__.py index 6e5e6ce..b1cda2a 100644 --- a/helios_auth/auth_systems/facebookclient/__init__.py +++ b/helios_auth/auth_systems/facebookclient/__init__.py @@ -126,8 +126,8 @@ METHODS = { ], }, - # auth methods - 'auth': { + # helios_auth methods + 'helios_auth': { 'revokeAuthorization': [ ('uid', int, ['optional']), ], @@ -655,10 +655,10 @@ class FacebookError(Exception): class AuthProxy(AuthProxy): - """Special proxy for facebook.auth.""" + """Special proxy for facebook.helios_auth.""" def getSession(self): - """Facebook API call. See http://developers.facebook.com/documentation.php?v=1.0&method=auth.getSession""" + """Facebook API call. See http://developers.facebook.com/documentation.php?v=1.0&method=helios_auth.getSession""" args = {} try: args['auth_token'] = self._client.auth_token @@ -672,7 +672,7 @@ class AuthProxy(AuthProxy): return result def createToken(self): - """Facebook API call. See http://developers.facebook.com/documentation.php?v=1.0&method=auth.createToken""" + """Facebook API call. See http://developers.facebook.com/documentation.php?v=1.0&method=helios_auth.createToken""" token = self._client('%s.createToken' % self._name) self._client.auth_token = token return token @@ -829,7 +829,7 @@ class Facebook(object): to canvas pages. auth_token - The auth token that Facebook gives you, either with facebook.auth.createToken, + The helios_auth token that Facebook gives you, either with facebook.helios_auth.createToken, or through a GET parameter. callback_path @@ -882,7 +882,7 @@ class Facebook(object): Your application's secret key, as set in the constructor. session_key - The current session key. Set automatically by auth.getSession, but can be set + The current session key. Set automatically by helios_auth.getSession, but can be set manually for doing infinite sessions. session_key_expires @@ -890,7 +890,7 @@ class Facebook(object): uid After a session is created, you can get the user's UID with this variable. Set - automatically by auth.getSession. + automatically by helios_auth.getSession. ---------------------------------------------------------------------- @@ -902,15 +902,15 @@ class Facebook(object): If this is a desktop application, the next couple of steps you might want to take are: - facebook.auth.createToken() # create an auth token + facebook.helios_auth.createToken() # create an helios_auth token facebook.login() # show a browser window wait_login() # somehow wait for the user to log in - facebook.auth.getSession() # get a session key + facebook.helios_auth.getSession() # get a session key For web apps, if you are passed an auth_token from Facebook, pass that in as a named parameter. Then call: - facebook.auth.getSession() + facebook.helios_auth.getSession() """ self.api_key = api_key @@ -1034,7 +1034,7 @@ class Facebook(object): if not self.session_key: return args #some calls don't need a session anymore. this might be better done in the markup - #raise RuntimeError('Session key not set. Make sure auth.getSession has been called.') + #raise RuntimeError('Session key not set. Make sure helios_auth.getSession has been called.') args['session_key'] = self.session_key args['call_id'] = str(int(time.time() * 1000)) @@ -1226,7 +1226,7 @@ class Facebook(object): def check_session(self, request): """ Checks the given Django HttpRequest for Facebook parameters such as - POST variables or an auth token. If the session is valid, returns True + POST variables or an helios_auth token. If the session is valid, returns True and this object can now be used to access the Facebook API. Otherwise, it returns False, and the application should take the appropriate action (either log the user in or have him add the application). @@ -1251,7 +1251,7 @@ class Facebook(object): self.auth_token = request.GET['auth_token'] try: - self.auth.getSession() + self.helios_auth.getSession() except FacebookError, e: self.auth_token = None return False @@ -1396,7 +1396,7 @@ if __name__ == '__main__': facebook = Facebook(api_key, secret_key) - facebook.auth.createToken() + facebook.helios_auth.createToken() # Show login window # Set popup=True if you want login without navigational elements @@ -1406,7 +1406,7 @@ if __name__ == '__main__': print 'After logging in, press enter...' raw_input() - facebook.auth.getSession() + facebook.helios_auth.getSession() print 'Session Key: ', facebook.session_key print 'Your UID: ', facebook.uid diff --git a/helios_auth/auth_systems/facebookclient/djangofb/context_processors.py b/helios_auth/auth_systems/facebookclient/djangofb/context_processors.py index 6f95439..551c4df 100644 --- a/helios_auth/auth_systems/facebookclient/djangofb/context_processors.py +++ b/helios_auth/auth_systems/facebookclient/djangofb/context_processors.py @@ -1,5 +1,5 @@ def messages(request): - """Returns messages similar to ``django.core.context_processors.auth``.""" + """Returns messages similar to ``django.core.context_processors.helios_auth``.""" if hasattr(request, 'facebook') and request.facebook.uid is not None: from models import Message messages = Message.objects.get_and_delete_all(uid=request.facebook.uid) diff --git a/helios_auth/auth_systems/facebookclient/webappfb.py b/helios_auth/auth_systems/facebookclient/webappfb.py index 5fdf77a..5fdfe0f 100644 --- a/helios_auth/auth_systems/facebookclient/webappfb.py +++ b/helios_auth/auth_systems/facebookclient/webappfb.py @@ -93,7 +93,7 @@ class FacebookRequestHandler(RequestHandler): return if not (require_app or require_login) and need_session: - self.facebook.auth.getSession() + self.facebook.helios_auth.getSession() def redirect(self, url, **kwargs): """ diff --git a/helios_auth/auth_systems/google.py b/helios_auth/auth_systems/google.py index 4a50f44..17325ba 100644 --- a/helios_auth/auth_systems/google.py +++ b/helios_auth/auth_systems/google.py @@ -21,7 +21,7 @@ OPENID_ENDPOINT = 'https://www.google.com/accounts/o8/id' # FIXME! # TRUST_ROOT = 'http://localhost:8000' -# RETURN_TO = 'http://localhost:8000/auth/after' +# RETURN_TO = 'http://localhost:8000/helios_auth/after' def get_auth_url(request, redirect_url): # FIXME?? TRUST_ROOT should be diff than return_url? diff --git a/helios_auth/auth_systems/linkedin.py b/helios_auth/auth_systems/linkedin.py index 9a939e2..a54d82f 100644 --- a/helios_auth/auth_systems/linkedin.py +++ b/helios_auth/auth_systems/linkedin.py @@ -7,7 +7,7 @@ from oauthclient import client from django.core.urlresolvers import reverse from django.http import HttpResponseRedirect -from auth import utils +from helios_auth import utils from xml.etree import ElementTree @@ -76,7 +76,7 @@ def _get_client_by_request(request): def update_status(user_id, user_info, token, message): """ - post a message to the auth system's update stream, e.g. twitter stream + post a message to the helios_auth system's update stream, e.g. twitter stream """ return #twitter_client = _get_client_by_token(token) diff --git a/helios_auth/auth_systems/live.py b/helios_auth/auth_systems/live.py index 21eaf7c..aece51d 100644 --- a/helios_auth/auth_systems/live.py +++ b/helios_auth/auth_systems/live.py @@ -17,7 +17,7 @@ import urllib, urllib2, cgi STATUS_UPDATES = False # STATUS_UPDATE_WORDING_TEMPLATE = "Send %s to your facebook status" -from auth import utils +from helios_auth import utils def live_url(url, params): if params: @@ -56,7 +56,7 @@ def get_user_info_after_auth(request): def update_status(user_id, user_info, token, message): """ - post a message to the auth system's update stream, e.g. twitter stream + post a message to the helios_auth system's update stream, e.g. twitter stream """ result = facebook_post('/me/feed', { 'access_token': token['access_token'], diff --git a/helios_auth/auth_systems/password.py b/helios_auth/auth_systems/password.py index cbec6c9..8ad7be0 100644 --- a/helios_auth/auth_systems/password.py +++ b/helios_auth/auth_systems/password.py @@ -15,7 +15,7 @@ STATUS_UPDATES = False def create_user(username, password, name = None): - from auth.models import User + from helios_auth.models import User user = User.get_by_type_and_id('password', username) if user: @@ -34,9 +34,9 @@ def password_check(user, password): # the view for logging in def password_login_view(request): - from auth.view_utils import render_template - from auth.views import after - from auth.models import User + from helios_auth.view_utils import render_template + from helios_auth.views import after + from helios_auth.models import User error = None @@ -70,8 +70,8 @@ def password_forgotten_view(request): forgotten password view and submit. includes return_url """ - from auth.view_utils import render_template - from auth.models import User + from helios_auth.view_utils import render_template + from helios_auth.models import User if request.method == "GET": return render_template(request, 'password/forgot', {'return_url': request.GET.get('return_url', '')}) diff --git a/helios_auth/auth_systems/twitter.py b/helios_auth/auth_systems/twitter.py index a0ae9a0..04ed4b8 100644 --- a/helios_auth/auth_systems/twitter.py +++ b/helios_auth/auth_systems/twitter.py @@ -7,7 +7,7 @@ from oauthclient import client from django.core.urlresolvers import reverse from django.http import HttpResponseRedirect -from auth import utils +from helios_auth import utils import logging @@ -78,7 +78,7 @@ def _get_client_by_request(request): def update_status(user_id, user_info, token, message): """ - post a message to the auth system's update stream, e.g. twitter stream + post a message to the helios_auth system's update stream, e.g. twitter stream """ twitter_client = _get_client_by_token(token) result = twitter_client.oauth_request('http://api.twitter.com/1/statuses/update.json', args={'status': message}, method='POST') @@ -99,8 +99,8 @@ def send_notification(user_id, user_info, message): def follow_view(request): if request.method == "GET": - from auth.view_utils import render_template - from auth.views import after + from helios_auth.view_utils import render_template + from helios_auth.views import after return render_template(request, 'twitter/follow', {'user_to_follow': USER_TO_FOLLOW, 'reason_to_follow' : REASON_TO_FOLLOW}) @@ -108,13 +108,13 @@ def follow_view(request): follow_p = bool(request.POST.get('follow_p',False)) if follow_p: - from auth.security import get_user + from helios_auth.security import get_user user = get_user(request) twitter_client = _get_client_by_token(user.token) result = twitter_client.oauth_request('http://api.twitter.com/1/friendships/create.json', args={'screen_name': USER_TO_FOLLOW}, method='POST') - from auth.views import after_intervention + from helios_auth.views import after_intervention return HttpResponseRedirect(reverse(after_intervention)) diff --git a/helios_auth/jsonfield.py b/helios_auth/jsonfield.py index 808d031..61b26ac 100644 --- a/helios_auth/jsonfield.py +++ b/helios_auth/jsonfield.py @@ -78,4 +78,4 @@ class JSONField(models.TextField): ## basically that it's the same as its parent class ## from south.modelsinspector import add_introspection_rules -add_introspection_rules([], ["^auth\.jsonfield\.JSONField"]) +add_introspection_rules([], ["^helios_auth\.jsonfield\.JSONField"]) diff --git a/helios_auth/migrations/0001_initial.py b/helios_auth/migrations/0001_initial.py index 35ba118..bd39c99 100644 --- a/helios_auth/migrations/0001_initial.py +++ b/helios_auth/migrations/0001_initial.py @@ -14,11 +14,11 @@ class Migration(SchemaMigration): ('user_type', self.gf('django.db.models.fields.CharField')(max_length=50)), ('user_id', self.gf('django.db.models.fields.CharField')(max_length=100)), ('name', self.gf('django.db.models.fields.CharField')(max_length=200, null=True)), - ('info', self.gf('auth.jsonfield.JSONField')()), - ('token', self.gf('auth.jsonfield.JSONField')(null=True)), + ('info', self.gf('helios_auth.jsonfield.JSONField')()), + ('token', self.gf('helios_auth.jsonfield.JSONField')(null=True)), ('admin_p', self.gf('django.db.models.fields.BooleanField')(default=False)), )) - db.send_create_signal('auth', ['User']) + db.send_create_signal('helios_auth', ['User']) # Adding unique constraint on 'User', fields ['user_type', 'user_id'] db.create_unique('auth_user', ['user_type', 'user_id']) @@ -34,16 +34,16 @@ class Migration(SchemaMigration): models = { - 'auth.user': { + 'helios_auth.user': { 'Meta': {'unique_together': "(('user_type', 'user_id'),)", 'object_name': 'User'}, 'admin_p': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'info': ('auth.jsonfield.JSONField', [], {}), + 'info': ('helios_auth.jsonfield.JSONField', [], {}), 'name': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True'}), - 'token': ('auth.jsonfield.JSONField', [], {'null': 'True'}), + 'token': ('helios_auth.jsonfield.JSONField', [], {'null': 'True'}), 'user_id': ('django.db.models.fields.CharField', [], {'max_length': '100'}), 'user_type': ('django.db.models.fields.CharField', [], {'max_length': '50'}) } } - complete_apps = ['auth'] + complete_apps = ['helios_auth'] diff --git a/helios_auth/models.py b/helios_auth/models.py index d34b129..81d0e69 100644 --- a/helios_auth/models.py +++ b/helios_auth/models.py @@ -104,11 +104,11 @@ class User(models.Model): if not eligibility_case.has_key('constraint'): return True - # from here on we know we match the auth system, but do we match one of the constraints? + # from here on we know we match the helios_auth system, but do we match one of the constraints? auth_system = AUTH_SYSTEMS[self.user_type] - # does the auth system allow for checking a constraint? + # does the helios_auth system allow for checking a constraint? if not hasattr(auth_system, 'check_constraint'): return False @@ -153,7 +153,7 @@ class User(models.Model): else: name_display = self.pretty_name - return """<img border="0" height="%s" src="/static/auth/login-icons/%s.png" alt="%s" /> %s""" % ( + return """<img border="0" height="%s" src="/static/helios_auth/login-icons/%s.png" alt="%s" /> %s""" % ( str(int(size)), self.user_type, self.user_type, name_display) @property diff --git a/helios_auth/security/__init__.py b/helios_auth/security/__init__.py index 28aa6fa..c49a2df 100644 --- a/helios_auth/security/__init__.py +++ b/helios_auth/security/__init__.py @@ -1,5 +1,5 @@ """ -Generic Security -- for the auth system +Generic Security -- for the helios_auth system Ben Adida (ben@adida.net) """ @@ -15,7 +15,7 @@ import oauth import uuid -from auth.models import * +from helios_auth.models import * FIELDS_TO_SAVE = 'FIELDS_TO_SAVE' diff --git a/helios_auth/templates/index.html b/helios_auth/templates/index.html index 3af9a06..604c370 100644 --- a/helios_auth/templates/index.html +++ b/helios_auth/templates/index.html @@ -8,7 +8,7 @@ You are currently logged in as<br /><b>{{user.user_id}}</b> via <b>{{user.user_type}}</b>. </p> <p> - <a href="{% url auth.views.logout %}">logout</a> + <a href="{% url helios_auth.views.logout %}">logout</a> </p> {% else %} diff --git a/helios_auth/templates/login_box.html b/helios_auth/templates/login_box.html index 4ed3f81..5b2d52b 100644 --- a/helios_auth/templates/login_box.html +++ b/helios_auth/templates/login_box.html @@ -1,12 +1,12 @@ {% if default_auth_system %} -<p><a style="font-size:1.3em; border: 1px solid #bbb; padding: 5px;" href="{% url auth.views.start system_name=default_auth_system %}?return_url={{return_url}}">{{default_auth_system_obj.LOGIN_MESSAGE}}</a></p> +<p><a style="font-size:1.3em; border: 1px solid #bbb; padding: 5px;" href="{% url helios_auth.views.start system_name=default_auth_system %}?return_url={{return_url}}">{{default_auth_system_obj.LOGIN_MESSAGE}}</a></p> {% else %} {% for auth_system in enabled_auth_systems %} {% ifequal auth_system "password" %} {% else %} <p> - <a href="{{SECURE_URL_HOST}}{% url auth.views.start system_name=auth_system %}?return_url={{return_url}}" style="font-size: 1.4em;"> -<img border="0" height="35" src="/static/auth/login-icons/{{auth_system}}.png" alt="{{auth_system}}" /> {{auth_system}} + <a href="{{SECURE_URL_HOST}}{% url helios_auth.views.start system_name=auth_system %}?return_url={{return_url}}" style="font-size: 1.4em;"> +<img border="0" height="35" src="/static/helios_auth/login-icons/{{auth_system}}.png" alt="{{auth_system}}" /> {{auth_system}} {% endifequal %} </a> </p> diff --git a/helios_auth/urls.py b/helios_auth/urls.py index 9db44e4..9dd3676 100644 --- a/helios_auth/urls.py +++ b/helios_auth/urls.py @@ -22,7 +22,7 @@ urlpatterns = patterns('', ## should make the following modular - # password auth + # password helios_auth (r'^password/login', password_login_view), (r'^password/forgot', password_forgotten_view), diff --git a/helios_auth/view_utils.py b/helios_auth/view_utils.py index e4bb203..42d4e33 100644 --- a/helios_auth/view_utils.py +++ b/helios_auth/view_utils.py @@ -8,9 +8,9 @@ from django.template import Context, Template, loader from django.http import HttpResponse, Http404 from django.shortcuts import render_to_response -from auth.security import get_user +from helios_auth.security import get_user -import auth +import helios_auth from django.conf import settings @@ -32,9 +32,9 @@ def prepare_vars(request, vars): vars_with_user['csrf_token'] = request.session['csrf_token'] vars_with_user['SECURE_URL_HOST'] = settings.SECURE_URL_HOST - vars_with_user['STATIC'] = '/static/auth' - vars_with_user['MEDIA_URL'] = '/static/auth/' - vars_with_user['TEMPLATE_BASE'] = auth.TEMPLATE_BASE + vars_with_user['STATIC'] = '/static/helios_auth' + vars_with_user['MEDIA_URL'] = '/static/helios_auth/' + vars_with_user['TEMPLATE_BASE'] = helios_auth.TEMPLATE_BASE vars_with_user['settings'] = settings @@ -45,7 +45,7 @@ def render_template(request, template_name, vars = {}): vars_with_user = prepare_vars(request, vars) - return render_to_response('auth/templates/%s.html' % template_name, vars_with_user) + return render_to_response('helios_auth/templates/%s.html' % template_name, vars_with_user) def render_template_raw(request, template_name, vars={}): t = loader.get_template(template_name + '.html') diff --git a/helios_auth/views.py b/helios_auth/views.py index fda1dfc..1249445 100644 --- a/helios_auth/views.py +++ b/helios_auth/views.py @@ -9,12 +9,12 @@ from django.http import * from django.core.urlresolvers import reverse from view_utils import * -from auth.security import get_user +from helios_auth.security import get_user import auth_systems from auth_systems import AUTH_SYSTEMS from auth_systems import password -import auth +import helios_auth import copy, urllib @@ -29,22 +29,22 @@ def index(request): user = get_user(request) - # single auth system? - if len(auth.ENABLED_AUTH_SYSTEMS) == 1 and not user: - return HttpResponseRedirect(reverse(start, args=[auth.ENABLED_AUTH_SYSTEMS[0]])+ '?return_url=' + request.GET.get('return_url', '')) + # single helios_auth system? + if len(helios_auth.ENABLED_AUTH_SYSTEMS) == 1 and not user: + return HttpResponseRedirect(reverse(start, args=[helios_auth.ENABLED_AUTH_SYSTEMS[0]])+ '?return_url=' + request.GET.get('return_url', '')) - #if auth.DEFAULT_AUTH_SYSTEM and not user: - # return HttpResponseRedirect(reverse(start, args=[auth.DEFAULT_AUTH_SYSTEM])+ '?return_url=' + request.GET.get('return_url', '')) + #if helios_auth.DEFAULT_AUTH_SYSTEM and not user: + # return HttpResponseRedirect(reverse(start, args=[helios_auth.DEFAULT_AUTH_SYSTEM])+ '?return_url=' + request.GET.get('return_url', '')) default_auth_system_obj = None - if auth.DEFAULT_AUTH_SYSTEM: - default_auth_system_obj = AUTH_SYSTEMS[auth.DEFAULT_AUTH_SYSTEM] + if helios_auth.DEFAULT_AUTH_SYSTEM: + default_auth_system_obj = AUTH_SYSTEMS[helios_auth.DEFAULT_AUTH_SYSTEM] #form = password.LoginForm() return render_template(request,'index', {'return_url' : request.GET.get('return_url', '/'), - 'enabled_auth_systems' : auth.ENABLED_AUTH_SYSTEMS, - 'default_auth_system': auth.DEFAULT_AUTH_SYSTEM, + 'enabled_auth_systems' : helios_auth.ENABLED_AUTH_SYSTEMS, + 'default_auth_system': helios_auth.DEFAULT_AUTH_SYSTEM, 'default_auth_system_obj': default_auth_system_obj}) def login_box_raw(request, return_url='/', auth_systems = None): @@ -52,20 +52,20 @@ def login_box_raw(request, return_url='/', auth_systems = None): a chunk of HTML that shows the various login options """ default_auth_system_obj = None - if auth.DEFAULT_AUTH_SYSTEM: - default_auth_system_obj = AUTH_SYSTEMS[auth.DEFAULT_AUTH_SYSTEM] + if helios_auth.DEFAULT_AUTH_SYSTEM: + default_auth_system_obj = AUTH_SYSTEMS[helios_auth.DEFAULT_AUTH_SYSTEM] - # make sure that auth_systems includes only available and enabled auth systems + # make sure that auth_systems includes only available and enabled helios_auth systems if auth_systems != None: - enabled_auth_systems = set(auth_systems).intersection(set(auth.ENABLED_AUTH_SYSTEMS)).intersection(set(AUTH_SYSTEMS.keys())) + enabled_auth_systems = set(auth_systems).intersection(set(helios_auth.ENABLED_AUTH_SYSTEMS)).intersection(set(AUTH_SYSTEMS.keys())) else: - enabled_auth_systems = set(auth.ENABLED_AUTH_SYSTEMS).intersection(set(AUTH_SYSTEMS.keys())) + enabled_auth_systems = set(helios_auth.ENABLED_AUTH_SYSTEMS).intersection(set(AUTH_SYSTEMS.keys())) form = password.LoginForm() return render_template_raw(request, 'login_box', { 'enabled_auth_systems': enabled_auth_systems, 'return_url': return_url, - 'default_auth_system': auth.DEFAULT_AUTH_SYSTEM, 'default_auth_system_obj': default_auth_system_obj, + 'default_auth_system': helios_auth.DEFAULT_AUTH_SYSTEM, 'default_auth_system_obj': default_auth_system_obj, 'form' : form}) def do_local_logout(request): @@ -109,7 +109,7 @@ def do_remote_logout(request, user, return_url="/"): # FIXME: do something with return_url auth_system = AUTH_SYSTEMS[user['type']] - # does the auth system have a special logout procedure? + # does the helios_auth system have a special logout procedure? user_for_remote_logout = request.session.get('user_for_remote_logout', None) del request.session['user_for_remote_logout'] if hasattr(auth_system, 'do_logout'): @@ -153,13 +153,13 @@ def _do_auth(request): return HttpResponse("an error occurred trying to contact " + system_name +", try again later") def start(request, system_name): - if not (system_name in auth.ENABLED_AUTH_SYSTEMS): + if not (system_name in helios_auth.ENABLED_AUTH_SYSTEMS): return HttpResponseRedirect(reverse(index)) # why is this here? Let's try without it # request.session.save() - # store in the session the name of the system used for auth + # store in the session the name of the system used for helios_auth request.session['auth_system_name'] = system_name # where to return to when done @@ -174,7 +174,7 @@ def perms_why(request): return _do_auth(request) def after(request): - # which auth system were we using? + # which helios_auth system were we using? if not request.session.has_key('auth_system_name'): do_local_logout(request) return HttpResponseRedirect("/") @@ -192,7 +192,7 @@ def after(request): else: return HttpResponseRedirect("%s?%s" % (reverse(perms_why), urllib.urlencode({'system_name' : request.session['auth_system_name']}))) - # does the auth system want to present an additional view? + # does the helios_auth system want to present an additional view? # this is, for example, to prompt the user to follow @heliosvoting # so they can hear about election results if hasattr(system, 'user_needs_intervention'): diff --git a/reset.sh b/reset.sh index c409b73..f7ad853 100755 --- a/reset.sh +++ b/reset.sh @@ -3,4 +3,4 @@ dropdb helios createdb helios python manage.py syncdb python manage.py migrate -echo "from auth.models import User; User.objects.create(user_type='google',user_id='ben@adida.net', info={'name':'Ben Adida'})" | python manage.py shell \ No newline at end of file +echo "from helios_auth.models import User; User.objects.create(user_type='google',user_id='ben@adida.net', info={'name':'Ben Adida'})" | python manage.py shell \ No newline at end of file diff --git a/server_ui/glue.py b/server_ui/glue.py index bcb0995..f3af751 100644 --- a/server_ui/glue.py +++ b/server_ui/glue.py @@ -37,7 +37,7 @@ Your voter alias is : %s %s """ % settings.SITE_TITLE - # send it via the notification system associated with the auth system + # send it via the notification system associated with the helios_auth system user.send_message(subject, body) helios.signals.vote_cast.connect(vote_cast_send_message) diff --git a/server_ui/templates/base.html b/server_ui/templates/base.html index e4df4e5..d3b240e 100644 --- a/server_ui/templates/base.html +++ b/server_ui/templates/base.html @@ -47,12 +47,12 @@ </span> {% if user %} logged in as {{user.display_html_small|safe}} -[<a href="{% url auth.views.logout %}?return_url={{CURRENT_URL}}">logout</a>]<br /> +[<a href="{% url helios_auth.views.logout %}?return_url={{CURRENT_URL}}">logout</a>]<br /> {% else %} {% if voter %} -You are signed in as voter <u>{% if voter.alias %}{{voter.alias}}{% else %}{{voter.name}}{% endif %}</u> in election <u>{{voter.election.name}}</u>. [<a href="{{settings.SECURE_URL_HOST}}{% url auth.views.logout %}?return_url={{CURRENT_URL}}">sign out</a>] +You are signed in as voter <u>{% if voter.alias %}{{voter.alias}}{% else %}{{voter.name}}{% endif %}</u> in election <u>{{voter.election.name}}</u>. [<a href="{{settings.SECURE_URL_HOST}}{% url helios_auth.views.logout %}?return_url={{CURRENT_URL}}">sign out</a>] {% else %} -not logged in. [<a href="{{settings.SECURE_URL_HOST}}{% url auth.views.index %}?return_url={{CURRENT_URL}}">log in</a>] +not logged in. [<a href="{{settings.SECURE_URL_HOST}}{% url helios_auth.views.index %}?return_url={{CURRENT_URL}}">log in</a>] {% endif %} <br /> {% endif %} diff --git a/server_ui/templates/confirm.html b/server_ui/templates/confirm.html index 4ff6edb..fc33ce7 100644 --- a/server_ui/templates/confirm.html +++ b/server_ui/templates/confirm.html @@ -38,7 +38,7 @@ function show_waiting() { </form> <p> - Forgot your password? <a href="{% url auth.auth_systems.password.password_forgotten_view %}?return_url={% url server_ui.views.cast_confirm %}">Have it emailed to you</a>.<br />(don't worry, we won't forget your vote). + Forgot your password? <a href="{% url helios_auth.auth_systems.password.password_forgotten_view %}?return_url={% url server_ui.views.cast_confirm %}">Have it emailed to you</a>.<br />(don't worry, we won't forget your vote). </p> </div> diff --git a/server_ui/view_utils.py b/server_ui/view_utils.py index 0427820..e22fcd5 100644 --- a/server_ui/view_utils.py +++ b/server_ui/view_utils.py @@ -8,7 +8,7 @@ from django.template import Context, Template, loader from django.http import HttpResponse, Http404 from django.shortcuts import render_to_response -from auth.security import get_user +from helios_auth.security import get_user from django.conf import settings diff --git a/server_ui/views.py b/server_ui/views.py index c7d5fbe..b8e0f0b 100644 --- a/server_ui/views.py +++ b/server_ui/views.py @@ -3,13 +3,13 @@ server_ui specific views """ from helios.models import * -from auth.security import * +from helios_auth.security import * from view_utils import * import helios.views import helios from helios.crypto import utils as cryptoutils -from auth.security import * +from helios_auth.security import * from helios.security import can_create_election from django.core.urlresolvers import reverse @@ -18,7 +18,7 @@ from django.http import HttpResponse, HttpResponseRedirect, Http404, HttpRespons from django.conf import settings import copy -import auth.views as auth_views +import helios_auth.views as auth_views def get_election(): return None diff --git a/settings.py b/settings.py index 0ca2f19..0170114 100644 --- a/settings.py +++ b/settings.py @@ -68,7 +68,7 @@ TEMPLATE_LOADERS = ( MIDDLEWARE_CLASSES = ( 'django.middleware.common.CommonMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', - 'django.contrib.auth.middleware.AuthenticationMiddleware', + 'django.contrib.helios_auth.middleware.AuthenticationMiddleware', ) ROOT_URLCONF = 'urls' @@ -80,7 +80,7 @@ TEMPLATE_DIRS = ( ) INSTALLED_APPS = ( -# 'django.contrib.auth', +# 'django.contrib.helios_auth', # 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', @@ -90,7 +90,7 @@ INSTALLED_APPS = ( ## needed for schema migration 'south', ## HELIOS stuff - 'auth', + 'helios_auth', 'helios', 'server_ui', ) @@ -111,7 +111,7 @@ DEFAULT_FROM_EMAIL = get_from_env('DEFAULT_FROM_EMAIL', 'ben@adida.net') DEFAULT_FROM_NAME = get_from_env('DEFAULT_FROM_NAME', 'Ben for Helios') SERVER_EMAIL = '%s <%s>' % (DEFAULT_FROM_NAME, DEFAULT_FROM_EMAIL) -LOGIN_URL = '/auth/' +LOGIN_URL = '/helios_auth/' LOGOUT_ON_CONFIRMATION = True # The two hosts are here so the main site can be over plain HTTP diff --git a/urls.py b/urls.py index a0d9b71..64e711d 100644 --- a/urls.py +++ b/urls.py @@ -5,14 +5,14 @@ from django.conf import settings urlpatterns = patterns( '', - (r'^auth/', include('auth.urls')), + (r'^helios_auth/', include('helios_auth.urls')), (r'^helios/', include('helios.urls')), # SHOULD BE REPLACED BY APACHE STATIC PATH (r'booth/(?P<path>.*)$', 'django.views.static.serve', {'document_root' : settings.ROOT_PATH + '/heliosbooth'}), (r'verifier/(?P<path>.*)$', 'django.views.static.serve', {'document_root' : settings.ROOT_PATH + '/heliosverifier'}), - (r'static/auth/(?P<path>.*)$', 'django.views.static.serve', {'document_root' : settings.ROOT_PATH + '/auth/media'}), + (r'static/helios_auth/(?P<path>.*)$', 'django.views.static.serve', {'document_root' : settings.ROOT_PATH + '/helios_auth/media'}), (r'static/helios/(?P<path>.*)$', 'django.views.static.serve', {'document_root' : settings.ROOT_PATH + '/helios/media'}), (r'static/(?P<path>.*)$', 'django.views.static.serve', {'document_root' : settings.ROOT_PATH + '/server_ui/media'}), -- GitLab