create account

Protecting Utopian-1UP against double voting and late vote by stoodkev

View this thread on: hive.blogpeakd.comecency.com
· @stoodkev · (edited)
$74.16
Protecting Utopian-1UP against double voting and late vote
![image.png](https://res.cloudinary.com/hpiynhbhq/image/upload/v1514895626/bxzxtsq5r6l5zoouekta.png)


Final piece of the backend (at least for the current version), this [pull request](https://github.com/therealFlauwy/1UP/pull/5) offers protection against old messages that would have already been voted by either Utopian-1UP or the Utopian bot.

This protection was necessary for the following reasons:
- The interest of Utopian 1UP comes from the front-running, voting after the bot as little to no interest at all.
- If the system doesn't check for previous vote of the trail and allocate a new dynamic vote weight, the vote will be casted a second time and Voting Power will be lost as a result.

Therefore I changed the flow as follow:

- All suggestions that have not been voted by either the trail or the bot are fetched from the database (`where voted==false`).
- The server checks all of the suggestions data to see if they have been voted by either the trail or the bot since last call
- If yes, `voted` is updated to `true` and the suggestion is removed from the list that will be displaid
- If no, well, nothing happens

 In the current version on [Heroku](http://utopian-1up.herokuapp.com/suggestions), you can see that this is working since although I ve let some old suggestions (already upvoted), they do not show in the main page.

![image.png](https://res.cloudinary.com/hpiynhbhq/image/upload/v1514896849/njmguhfczxdwdogtlabx.png)

### Next steps:

- Implementation of SteemConnect into SteemPlus (cause ill need it for later here, I m already on it and Im super excited about it!)
- Release the 1UP button into SteemPlus! 
- Drink champaign

@stoodkev

<br /><hr/><em>Posted on <a href="https://utopian.io/utopian-io/@stoodkev/protecting-utopian-1up-against-double-voting-and-late-vote">Utopian.io -  Rewarding Open Source Contributors</a></em><hr/>
👍  , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , and 17 others
properties (23)
authorstoodkev
permlinkprotecting-utopian-1up-against-double-voting-and-late-vote
categoryutopian-io
json_metadata"{"community":"utopian","app":"utopian/1.0.0","format":"markdown","repository":{"id":112686220,"name":"1UP","full_name":"therealFlauwy/1UP","owner":{"login":"therealFlauwy","id":33763122,"avatar_url":"https://avatars2.githubusercontent.com/u/33763122?v=4","gravatar_id":"","url":"https://api.github.com/users/therealFlauwy","html_url":"https://github.com/therealFlauwy","followers_url":"https://api.github.com/users/therealFlauwy/followers","following_url":"https://api.github.com/users/therealFlauwy/following{/other_user}","gists_url":"https://api.github.com/users/therealFlauwy/gists{/gist_id}","starred_url":"https://api.github.com/users/therealFlauwy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/therealFlauwy/subscriptions","organizations_url":"https://api.github.com/users/therealFlauwy/orgs","repos_url":"https://api.github.com/users/therealFlauwy/repos","events_url":"https://api.github.com/users/therealFlauwy/events{/privacy}","received_events_url":"https://api.github.com/users/therealFlauwy/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/therealFlauwy/1UP","description":"The Utopian.io curation trail bot for high quality posts","fork":false,"url":"https://api.github.com/repos/therealFlauwy/1UP","forks_url":"https://api.github.com/repos/therealFlauwy/1UP/forks","keys_url":"https://api.github.com/repos/therealFlauwy/1UP/keys{/key_id}","collaborators_url":"https://api.github.com/repos/therealFlauwy/1UP/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/therealFlauwy/1UP/teams","hooks_url":"https://api.github.com/repos/therealFlauwy/1UP/hooks","issue_events_url":"https://api.github.com/repos/therealFlauwy/1UP/issues/events{/number}","events_url":"https://api.github.com/repos/therealFlauwy/1UP/events","assignees_url":"https://api.github.com/repos/therealFlauwy/1UP/assignees{/user}","branches_url":"https://api.github.com/repos/therealFlauwy/1UP/branches{/branch}","tags_url":"https://api.github.com/repos/therealFlauwy/1UP/tags","blobs_url":"https://api.github.com/repos/therealFlauwy/1UP/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/therealFlauwy/1UP/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/therealFlauwy/1UP/git/refs{/sha}","trees_url":"https://api.github.com/repos/therealFlauwy/1UP/git/trees{/sha}","statuses_url":"https://api.github.com/repos/therealFlauwy/1UP/statuses/{sha}","languages_url":"https://api.github.com/repos/therealFlauwy/1UP/languages","stargazers_url":"https://api.github.com/repos/therealFlauwy/1UP/stargazers","contributors_url":"https://api.github.com/repos/therealFlauwy/1UP/contributors","subscribers_url":"https://api.github.com/repos/therealFlauwy/1UP/subscribers","subscription_url":"https://api.github.com/repos/therealFlauwy/1UP/subscription","commits_url":"https://api.github.com/repos/therealFlauwy/1UP/commits{/sha}","git_commits_url":"https://api.github.com/repos/therealFlauwy/1UP/git/commits{/sha}","comments_url":"https://api.github.com/repos/therealFlauwy/1UP/comments{/number}","issue_comment_url":"https://api.github.com/repos/therealFlauwy/1UP/issues/comments{/number}","contents_url":"https://api.github.com/repos/therealFlauwy/1UP/contents/{+path}","compare_url":"https://api.github.com/repos/therealFlauwy/1UP/compare/{base}...{head}","merges_url":"https://api.github.com/repos/therealFlauwy/1UP/merges","archive_url":"https://api.github.com/repos/therealFlauwy/1UP/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/therealFlauwy/1UP/downloads","issues_url":"https://api.github.com/repos/therealFlauwy/1UP/issues{/number}","pulls_url":"https://api.github.com/repos/therealFlauwy/1UP/pulls{/number}","milestones_url":"https://api.github.com/repos/therealFlauwy/1UP/milestones{/number}","notifications_url":"https://api.github.com/repos/therealFlauwy/1UP/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/therealFlauwy/1UP/labels{/name}","releases_url":"https://api.github.com/repos/therealFlauwy/1UP/releases{/id}","deployments_url":"https://api.github.com/repos/therealFlauwy/1UP/deployments","created_at":"2017-12-01T02:38:24Z","updated_at":"2017-12-15T18:04:03Z","pushed_at":"2018-01-02T12:13:33Z","git_url":"git://github.com/therealFlauwy/1UP.git","ssh_url":"git@github.com:therealFlauwy/1UP.git","clone_url":"https://github.com/therealFlauwy/1UP.git","svn_url":"https://github.com/therealFlauwy/1UP","homepage":"","size":269,"stargazers_count":0,"watchers_count":0,"language":"CSS","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"gpl-3.0","name":"GNU General Public License v3.0","spdx_id":"GPL-3.0","url":"https://api.github.com/licenses/gpl-3.0"},"forks":1,"open_issues":0,"watchers":0,"default_branch":"master","score":16.079361},"pullRequests":[{"url":"https://api.github.com/repos/therealFlauwy/1UP/pulls/5","id":160716425,"html_url":"https://github.com/therealFlauwy/1UP/pull/5","diff_url":"https://github.com/therealFlauwy/1UP/pull/5.diff","patch_url":"https://github.com/therealFlauwy/1UP/pull/5.patch","issue_url":"https://api.github.com/repos/therealFlauwy/1UP/issues/5","number":5,"state":"closed","locked":false,"title":"Check for 1UP and Utopian votes to avoid usless voting","user":{"login":"stoodkev","id":32375533,"avatar_url":"https://avatars2.githubusercontent.com/u/32375533?v=4","gravatar_id":"","url":"https://api.github.com/users/stoodkev","html_url":"https://github.com/stoodkev","followers_url":"https://api.github.com/users/stoodkev/followers","following_url":"https://api.github.com/users/stoodkev/following{/other_user}","gists_url":"https://api.github.com/users/stoodkev/gists{/gist_id}","starred_url":"https://api.github.com/users/stoodkev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stoodkev/subscriptions","organizations_url":"https://api.github.com/users/stoodkev/orgs","repos_url":"https://api.github.com/users/stoodkev/repos","events_url":"https://api.github.com/users/stoodkev/events{/privacy}","received_events_url":"https://api.github.com/users/stoodkev/received_events","type":"User","site_admin":false},"body":"","created_at":"2018-01-02T12:11:20Z","updated_at":"2018-01-02T12:13:32Z","closed_at":"2018-01-02T12:13:32Z","merged_at":"2018-01-02T12:13:32Z","merge_commit_sha":"52b913d1a2483125cac6ba67fd3034a75d37e937","assignee":null,"assignees":[],"requested_reviewers":[],"milestone":null,"commits_url":"https://api.github.com/repos/therealFlauwy/1UP/pulls/5/commits","review_comments_url":"https://api.github.com/repos/therealFlauwy/1UP/pulls/5/comments","review_comment_url":"https://api.github.com/repos/therealFlauwy/1UP/pulls/comments{/number}","comments_url":"https://api.github.com/repos/therealFlauwy/1UP/issues/5/comments","statuses_url":"https://api.github.com/repos/therealFlauwy/1UP/statuses/ed3d66cfd2d90f3e860faeb8e8bfbae57f55229b","head":{"label":"stoodkev:master","ref":"master","sha":"ed3d66cfd2d90f3e860faeb8e8bfbae57f55229b","user":{"login":"stoodkev","id":32375533,"avatar_url":"https://avatars2.githubusercontent.com/u/32375533?v=4","gravatar_id":"","url":"https://api.github.com/users/stoodkev","html_url":"https://github.com/stoodkev","followers_url":"https://api.github.com/users/stoodkev/followers","following_url":"https://api.github.com/users/stoodkev/following{/other_user}","gists_url":"https://api.github.com/users/stoodkev/gists{/gist_id}","starred_url":"https://api.github.com/users/stoodkev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stoodkev/subscriptions","organizations_url":"https://api.github.com/users/stoodkev/orgs","repos_url":"https://api.github.com/users/stoodkev/repos","events_url":"https://api.github.com/users/stoodkev/events{/privacy}","received_events_url":"https://api.github.com/users/stoodkev/received_events","type":"User","site_admin":false},"repo":{"id":114229483,"name":"1UP","full_name":"stoodkev/1UP","owner":{"login":"stoodkev","id":32375533,"avatar_url":"https://avatars2.githubusercontent.com/u/32375533?v=4","gravatar_id":"","url":"https://api.github.com/users/stoodkev","html_url":"https://github.com/stoodkev","followers_url":"https://api.github.com/users/stoodkev/followers","following_url":"https://api.github.com/users/stoodkev/following{/other_user}","gists_url":"https://api.github.com/users/stoodkev/gists{/gist_id}","starred_url":"https://api.github.com/users/stoodkev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stoodkev/subscriptions","organizations_url":"https://api.github.com/users/stoodkev/orgs","repos_url":"https://api.github.com/users/stoodkev/repos","events_url":"https://api.github.com/users/stoodkev/events{/privacy}","received_events_url":"https://api.github.com/users/stoodkev/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/stoodkev/1UP","description":"The Utopian.io curation trail bot for high quality posts","fork":true,"url":"https://api.github.com/repos/stoodkev/1UP","forks_url":"https://api.github.com/repos/stoodkev/1UP/forks","keys_url":"https://api.github.com/repos/stoodkev/1UP/keys{/key_id}","collaborators_url":"https://api.github.com/repos/stoodkev/1UP/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/stoodkev/1UP/teams","hooks_url":"https://api.github.com/repos/stoodkev/1UP/hooks","issue_events_url":"https://api.github.com/repos/stoodkev/1UP/issues/events{/number}","events_url":"https://api.github.com/repos/stoodkev/1UP/events","assignees_url":"https://api.github.com/repos/stoodkev/1UP/assignees{/user}","branches_url":"https://api.github.com/repos/stoodkev/1UP/branches{/branch}","tags_url":"https://api.github.com/repos/stoodkev/1UP/tags","blobs_url":"https://api.github.com/repos/stoodkev/1UP/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/stoodkev/1UP/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/stoodkev/1UP/git/refs{/sha}","trees_url":"https://api.github.com/repos/stoodkev/1UP/git/trees{/sha}","statuses_url":"https://api.github.com/repos/stoodkev/1UP/statuses/{sha}","languages_url":"https://api.github.com/repos/stoodkev/1UP/languages","stargazers_url":"https://api.github.com/repos/stoodkev/1UP/stargazers","contributors_url":"https://api.github.com/repos/stoodkev/1UP/contributors","subscribers_url":"https://api.github.com/repos/stoodkev/1UP/subscribers","subscription_url":"https://api.github.com/repos/stoodkev/1UP/subscription","commits_url":"https://api.github.com/repos/stoodkev/1UP/commits{/sha}","git_commits_url":"https://api.github.com/repos/stoodkev/1UP/git/commits{/sha}","comments_url":"https://api.github.com/repos/stoodkev/1UP/comments{/number}","issue_comment_url":"https://api.github.com/repos/stoodkev/1UP/issues/comments{/number}","contents_url":"https://api.github.com/repos/stoodkev/1UP/contents/{+path}","compare_url":"https://api.github.com/repos/stoodkev/1UP/compare/{base}...{head}","merges_url":"https://api.github.com/repos/stoodkev/1UP/merges","archive_url":"https://api.github.com/repos/stoodkev/1UP/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/stoodkev/1UP/downloads","issues_url":"https://api.github.com/repos/stoodkev/1UP/issues{/number}","pulls_url":"https://api.github.com/repos/stoodkev/1UP/pulls{/number}","milestones_url":"https://api.github.com/repos/stoodkev/1UP/milestones{/number}","notifications_url":"https://api.github.com/repos/stoodkev/1UP/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/stoodkev/1UP/labels{/name}","releases_url":"https://api.github.com/repos/stoodkev/1UP/releases{/id}","deployments_url":"https://api.github.com/repos/stoodkev/1UP/deployments","created_at":"2017-12-14T09:23:30Z","updated_at":"2017-12-15T09:55:00Z","pushed_at":"2018-01-02T12:10:07Z","git_url":"git://github.com/stoodkev/1UP.git","ssh_url":"git@github.com:stoodkev/1UP.git","clone_url":"https://github.com/stoodkev/1UP.git","svn_url":"https://github.com/stoodkev/1UP","homepage":"","size":267,"stargazers_count":0,"watchers_count":0,"language":"CSS","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"gpl-3.0","name":"GNU General Public License v3.0","spdx_id":"GPL-3.0","url":"https://api.github.com/licenses/gpl-3.0"},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"therealFlauwy:master","ref":"master","sha":"2721e54529a6d9e3822ed2a64a84e4856188f42b","user":{"login":"therealFlauwy","id":33763122,"avatar_url":"https://avatars2.githubusercontent.com/u/33763122?v=4","gravatar_id":"","url":"https://api.github.com/users/therealFlauwy","html_url":"https://github.com/therealFlauwy","followers_url":"https://api.github.com/users/therealFlauwy/followers","following_url":"https://api.github.com/users/therealFlauwy/following{/other_user}","gists_url":"https://api.github.com/users/therealFlauwy/gists{/gist_id}","starred_url":"https://api.github.com/users/therealFlauwy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/therealFlauwy/subscriptions","organizations_url":"https://api.github.com/users/therealFlauwy/orgs","repos_url":"https://api.github.com/users/therealFlauwy/repos","events_url":"https://api.github.com/users/therealFlauwy/events{/privacy}","received_events_url":"https://api.github.com/users/therealFlauwy/received_events","type":"User","site_admin":false},"repo":{"id":112686220,"name":"1UP","full_name":"therealFlauwy/1UP","owner":{"login":"therealFlauwy","id":33763122,"avatar_url":"https://avatars2.githubusercontent.com/u/33763122?v=4","gravatar_id":"","url":"https://api.github.com/users/therealFlauwy","html_url":"https://github.com/therealFlauwy","followers_url":"https://api.github.com/users/therealFlauwy/followers","following_url":"https://api.github.com/users/therealFlauwy/following{/other_user}","gists_url":"https://api.github.com/users/therealFlauwy/gists{/gist_id}","starred_url":"https://api.github.com/users/therealFlauwy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/therealFlauwy/subscriptions","organizations_url":"https://api.github.com/users/therealFlauwy/orgs","repos_url":"https://api.github.com/users/therealFlauwy/repos","events_url":"https://api.github.com/users/therealFlauwy/events{/privacy}","received_events_url":"https://api.github.com/users/therealFlauwy/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/therealFlauwy/1UP","description":"The Utopian.io curation trail bot for high quality posts","fork":false,"url":"https://api.github.com/repos/therealFlauwy/1UP","forks_url":"https://api.github.com/repos/therealFlauwy/1UP/forks","keys_url":"https://api.github.com/repos/therealFlauwy/1UP/keys{/key_id}","collaborators_url":"https://api.github.com/repos/therealFlauwy/1UP/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/therealFlauwy/1UP/teams","hooks_url":"https://api.github.com/repos/therealFlauwy/1UP/hooks","issue_events_url":"https://api.github.com/repos/therealFlauwy/1UP/issues/events{/number}","events_url":"https://api.github.com/repos/therealFlauwy/1UP/events","assignees_url":"https://api.github.com/repos/therealFlauwy/1UP/assignees{/user}","branches_url":"https://api.github.com/repos/therealFlauwy/1UP/branches{/branch}","tags_url":"https://api.github.com/repos/therealFlauwy/1UP/tags","blobs_url":"https://api.github.com/repos/therealFlauwy/1UP/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/therealFlauwy/1UP/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/therealFlauwy/1UP/git/refs{/sha}","trees_url":"https://api.github.com/repos/therealFlauwy/1UP/git/trees{/sha}","statuses_url":"https://api.github.com/repos/therealFlauwy/1UP/statuses/{sha}","languages_url":"https://api.github.com/repos/therealFlauwy/1UP/languages","stargazers_url":"https://api.github.com/repos/therealFlauwy/1UP/stargazers","contributors_url":"https://api.github.com/repos/therealFlauwy/1UP/contributors","subscribers_url":"https://api.github.com/repos/therealFlauwy/1UP/subscribers","subscription_url":"https://api.github.com/repos/therealFlauwy/1UP/subscription","commits_url":"https://api.github.com/repos/therealFlauwy/1UP/commits{/sha}","git_commits_url":"https://api.github.com/repos/therealFlauwy/1UP/git/commits{/sha}","comments_url":"https://api.github.com/repos/therealFlauwy/1UP/comments{/number}","issue_comment_url":"https://api.github.com/repos/therealFlauwy/1UP/issues/comments{/number}","contents_url":"https://api.github.com/repos/therealFlauwy/1UP/contents/{+path}","compare_url":"https://api.github.com/repos/therealFlauwy/1UP/compare/{base}...{head}","merges_url":"https://api.github.com/repos/therealFlauwy/1UP/merges","archive_url":"https://api.github.com/repos/therealFlauwy/1UP/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/therealFlauwy/1UP/downloads","issues_url":"https://api.github.com/repos/therealFlauwy/1UP/issues{/number}","pulls_url":"https://api.github.com/repos/therealFlauwy/1UP/pulls{/number}","milestones_url":"https://api.github.com/repos/therealFlauwy/1UP/milestones{/number}","notifications_url":"https://api.github.com/repos/therealFlauwy/1UP/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/therealFlauwy/1UP/labels{/name}","releases_url":"https://api.github.com/repos/therealFlauwy/1UP/releases{/id}","deployments_url":"https://api.github.com/repos/therealFlauwy/1UP/deployments","created_at":"2017-12-01T02:38:24Z","updated_at":"2017-12-15T18:04:03Z","pushed_at":"2018-01-02T12:13:33Z","git_url":"git://github.com/therealFlauwy/1UP.git","ssh_url":"git@github.com:therealFlauwy/1UP.git","clone_url":"https://github.com/therealFlauwy/1UP.git","svn_url":"https://github.com/therealFlauwy/1UP","homepage":"","size":269,"stargazers_count":0,"watchers_count":0,"language":"CSS","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"gpl-3.0","name":"GNU General Public License v3.0","spdx_id":"GPL-3.0","url":"https://api.github.com/licenses/gpl-3.0"},"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/therealFlauwy/1UP/pulls/5"},"html":{"href":"https://github.com/therealFlauwy/1UP/pull/5"},"issue":{"href":"https://api.github.com/repos/therealFlauwy/1UP/issues/5"},"comments":{"href":"https://api.github.com/repos/therealFlauwy/1UP/issues/5/comments"},"review_comments":{"href":"https://api.github.com/repos/therealFlauwy/1UP/pulls/5/comments"},"review_comment":{"href":"https://api.github.com/repos/therealFlauwy/1UP/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/therealFlauwy/1UP/pulls/5/commits"},"statuses":{"href":"https://api.github.com/repos/therealFlauwy/1UP/statuses/ed3d66cfd2d90f3e860faeb8e8bfbae57f55229b"}},"author_association":"CONTRIBUTOR"}],"platform":"github","type":"development","tags":["utopian-io","steemdev","dev","opensource","news"],"users":["stoodkev"],"links":["https://res.cloudinary.com/hpiynhbhq/image/upload/v1514895626/bxzxtsq5r6l5zoouekta.png","https://github.com/therealFlauwy/1UP/pull/5","http://utopian-1up.herokuapp.com/suggestions","https://res.cloudinary.com/hpiynhbhq/image/upload/v1514896849/njmguhfczxdwdogtlabx.png"],"image":["https://res.cloudinary.com/hpiynhbhq/image/upload/v1514895626/bxzxtsq5r6l5zoouekta.png","https://res.cloudinary.com/hpiynhbhq/image/upload/v1514896849/njmguhfczxdwdogtlabx.png"],"moderator":{"account":"vladimir-simovic","reviewed":true,"pending":false,"flagged":false}}"
created2018-01-02 12:44:27
last_update2018-01-06 22:14:18
depth0
children9
last_payout2018-01-09 12:44:27
cashout_time1969-12-31 23:59:59
total_payout_value52.674 HBD
curator_payout_value21.491 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length1,870
author_reputation190,232,841,750,255
root_title"Protecting Utopian-1UP against double voting and late vote"
beneficiaries
0.
accountutopian.pay
weight2,500
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id26,551,849
net_rshares7,659,056,396,517
author_curate_reward""
vote details (81)
@flauwy ·
Yay, one step closer. 

We will need a ranking list were all the upvoted 1UPs will be visible. This will be one of the most interesting features: To see the best 1UP posts gathered together.
properties (22)
authorflauwy
permlinkre-stoodkev-protecting-utopian-1up-against-double-voting-and-late-vote-20180102t174425229z
categoryutopian-io
json_metadata{"tags":["utopian-io"],"app":"steemit/0.1"}
created2018-01-02 17:44:45
last_update2018-01-02 17:44:45
depth1
children0
last_payout2018-01-09 17:44:45
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length190
author_reputation296,259,911,900,510
root_title"Protecting Utopian-1UP against double voting and late vote"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id26,604,917
net_rshares0
@mikej ·
Hey, I found this post in Steem Follower. Is this a new tool?
properties (22)
authormikej
permlinkre-stoodkev-protecting-utopian-1up-against-double-voting-and-late-vote-20180103t035114936z
categoryutopian-io
json_metadata{"tags":["utopian-io"],"app":"steemit/0.1"}
created2018-01-03 03:51:15
last_update2018-01-03 03:51:15
depth1
children0
last_payout2018-01-10 03:51:15
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length61
author_reputation697,958,030,131
root_title"Protecting Utopian-1UP against double voting and late vote"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id26,688,745
net_rshares0
@mikej ·
Hello, I added the steemit plus extension for chrome and it keeps saying to check WIF when I try to upvote. I made sure I am using my private key.

Thanks
properties (22)
authormikej
permlinkre-stoodkev-protecting-utopian-1up-against-double-voting-and-late-vote-20180103t041834361z
categoryutopian-io
json_metadata{"tags":["utopian-io"],"app":"steemit/0.1"}
created2018-01-03 04:18:33
last_update2018-01-03 04:18:33
depth1
children2
last_payout2018-01-10 04:18:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length154
author_reputation697,958,030,131
root_title"Protecting Utopian-1UP against double voting and late vote"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id26,692,807
net_rshares0
@stoodkev ·
$1.84
Hi @mikej, I am working on the full integration with SteemConnect, you won't need any private WIF when I push the update sometime this week, please be patient, I m working hard on it =D
👍  
properties (23)
authorstoodkev
permlinkre-mikej-re-stoodkev-protecting-utopian-1up-against-double-voting-and-late-vote-20180103t063955375z
categoryutopian-io
json_metadata{"tags":["utopian-io"],"community":"utopian","app":"utopian/1.0.0"}
created2018-01-03 06:39:57
last_update2018-01-03 06:39:57
depth2
children1
last_payout2018-01-10 06:39:57
cashout_time1969-12-31 23:59:59
total_payout_value1.382 HBD
curator_payout_value0.459 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length185
author_reputation190,232,841,750,255
root_title"Protecting Utopian-1UP against double voting and late vote"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id26,713,918
net_rshares158,336,397,437
author_curate_reward""
vote details (1)
@mikej ·
OK great! I'm not getting that message anymore so maybe it just needed a little time to adjust.
properties (22)
authormikej
permlinkre-stoodkev-re-mikej-re-stoodkev-protecting-utopian-1up-against-double-voting-and-late-vote-20180103t153314746z
categoryutopian-io
json_metadata{"tags":["utopian-io"],"app":"steemit/0.1"}
created2018-01-03 15:33:15
last_update2018-01-03 15:33:15
depth3
children0
last_payout2018-01-10 15:33:15
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length95
author_reputation697,958,030,131
root_title"Protecting Utopian-1UP against double voting and late vote"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id26,805,656
net_rshares0
@utopian-1up ·
$0.17
<div class="pull-left">

![1UP-150px.png](https://res.cloudinary.com/hpiynhbhq/image/upload/v1514830255/apohiywrc0xa1snzpiff.png)





</div>

<div class="text-justify">

<br>

You've got a <code>1UP</code> from the @utopian-1up curation trail. Your quality contribution to the open source community has been rewarded by all Utopians following the trail. 

<code>[Join](https://steemit.com/utopian-io/@flauwy/steemy-ep-46-how-to-create-and-follow-a-curation-trail-with-steemauto) 1UP for better posts and high curation rewards.</code>

_1UP is neither organized nor endorsed by Utopian.io!_

</div>
👍  
properties (23)
authorutopian-1up
permlinkre-stoodkev-protecting-utopian-1up-against-double-voting-and-late-vote-20180102t174317424z
categoryutopian-io
json_metadata{"tags":["utopian-io"],"community":"busy","app":"busy/2.2.0"}
created2018-01-02 17:43:36
last_update2018-01-02 17:43:36
depth1
children0
last_payout2018-01-09 17:43:36
cashout_time1969-12-31 23:59:59
total_payout_value0.172 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length598
author_reputation2,324,758,056,093
root_title"Protecting Utopian-1UP against double voting and late vote"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id26,604,725
net_rshares19,360,979,782
author_curate_reward""
vote details (1)
@utopian-io ·
### Hey @stoodkev I am @utopian-io. I have just upvoted you!
#### Achievements
- Seems like you contribute quite often. AMAZING!
#### Community-Driven Witness!
I am the first and only Steem Community-Driven Witness. <a href="https://discord.gg/zTrEMqB">Participate on Discord</a>. Lets GROW TOGETHER!
- <a href="https://v2.steemconnect.com/sign/account-witness-vote?witness=utopian-io&approve=1">Vote for my Witness With SteemConnect</a>
- <a href="https://v2.steemconnect.com/sign/account-witness-proxy?proxy=utopian-io&approve=1">Proxy vote to Utopian Witness with SteemConnect</a>
- Or vote/proxy on <a href="https://steemit.com/~witnesses">Steemit Witnesses</a>

[![mooncryption-utopian-witness-gif](https://steemitimages.com/DQmYPUuQRptAqNBCQRwQjKWAqWU3zJkL3RXVUtEKVury8up/mooncryption-s-utopian-io-witness-gif.gif)](https://steemit.com/~witnesses)

**Up-vote this comment to grow my power and help Open Source contributions like this one. Want to chat? Join me on Discord https://discord.gg/Pc8HG9x**
👍  
properties (23)
authorutopian-io
permlinkre-stoodkev-protecting-utopian-1up-against-double-voting-and-late-vote-20180103t045539549z
categoryutopian-io
json_metadata{"tags":["utopian-io"],"community":"utopian","app":"utopian/1.0.0"}
created2018-01-03 04:55:39
last_update2018-01-03 04:55:39
depth1
children0
last_payout2018-01-10 04:55:39
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length1,006
author_reputation152,955,367,999,756
root_title"Protecting Utopian-1UP against double voting and late vote"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id26,698,245
net_rshares179,666,632
author_curate_reward""
vote details (1)
@vladimir-simovic ·
$3.84
Thank you for the contribution. It has been approved.

You can contact us on [Discord](https://discord.gg/UCvqCsx).
**[[utopian-moderator]](https://utopian.io/moderators)**
👍  , ,
properties (23)
authorvladimir-simovic
permlinkre-stoodkev-protecting-utopian-1up-against-double-voting-and-late-vote-20180102t152845607z
categoryutopian-io
json_metadata{"tags":["utopian-io"],"community":"utopian","app":"utopian/1.0.0"}
created2018-01-02 15:28:48
last_update2018-01-02 15:28:48
depth1
children1
last_payout2018-01-09 15:28:48
cashout_time1969-12-31 23:59:59
total_payout_value3.042 HBD
curator_payout_value0.793 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length172
author_reputation56,930,790,558,862
root_title"Protecting Utopian-1UP against double voting and late vote"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id26,580,544
net_rshares322,206,506,010
author_curate_reward""
vote details (3)
@stoodkev ·
$1.95
Thank you!
👍  
properties (23)
authorstoodkev
permlinkre-vladimir-simovic-re-stoodkev-protecting-utopian-1up-against-double-voting-and-late-vote-20180102t154802049z
categoryutopian-io
json_metadata{"tags":["utopian-io"],"app":"steemit/0.1"}
created2018-01-02 15:48:03
last_update2018-01-02 15:48:03
depth2
children0
last_payout2018-01-09 15:48:03
cashout_time1969-12-31 23:59:59
total_payout_value1.468 HBD
curator_payout_value0.483 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length10
author_reputation190,232,841,750,255
root_title"Protecting Utopian-1UP against double voting and late vote"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id26,584,236
net_rshares164,079,168,329
author_curate_reward""
vote details (1)