ezii-os 1.0.0 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) hide show
  1. checksums.yaml +4 -4
  2. data/Aptfile +2 -0
  3. data/Gemfile +3 -1
  4. data/Gemfile.lock +27 -0
  5. data/Procfile +2 -1
  6. data/app/assets/stylesheets/banal/brainstorms.scss +3 -0
  7. data/app/assets/stylesheets/banal/projects.scss +3 -0
  8. data/app/assets/stylesheets/tasks.scss +3 -0
  9. data/app/controllers/application_controller.rb +9 -0
  10. data/app/controllers/banal/brainstorms_controller.rb +74 -0
  11. data/app/controllers/banal/projects_controller.rb +74 -0
  12. data/app/controllers/directories_controller.rb +2 -2
  13. data/app/controllers/ezii_os_files_controller.rb +17 -0
  14. data/app/controllers/tasks_controller.rb +74 -0
  15. data/app/helpers/banal/brainstorms_helper.rb +2 -0
  16. data/app/helpers/banal/projects_helper.rb +2 -0
  17. data/app/helpers/tasks_helper.rb +2 -0
  18. data/app/models/banal/brainstorm.rb +2 -0
  19. data/app/models/banal/project.rb +4 -0
  20. data/app/models/banal.rb +5 -0
  21. data/app/models/ezii_os_path.rb +2 -1
  22. data/app/models/task.rb +2 -0
  23. data/app/views/application/_navbar.html.erb +20 -0
  24. data/app/views/banal/brainstorms/_banal_brainstorm.json.jbuilder +2 -0
  25. data/app/views/banal/brainstorms/_form.html.erb +47 -0
  26. data/app/views/banal/brainstorms/edit.html.erb +6 -0
  27. data/app/views/banal/brainstorms/index.html.erb +37 -0
  28. data/app/views/banal/brainstorms/index.json.jbuilder +1 -0
  29. data/app/views/banal/brainstorms/new.html.erb +5 -0
  30. data/app/views/banal/brainstorms/show.html.erb +34 -0
  31. data/app/views/banal/brainstorms/show.json.jbuilder +1 -0
  32. data/app/views/banal/projects/_banal_project.json.jbuilder +2 -0
  33. data/app/views/banal/projects/_form.html.erb +22 -0
  34. data/app/views/banal/projects/edit.html.erb +6 -0
  35. data/app/views/banal/projects/index.html.erb +27 -0
  36. data/app/views/banal/projects/index.json.jbuilder +1 -0
  37. data/app/views/banal/projects/new.html.erb +5 -0
  38. data/app/views/banal/projects/show.html.erb +9 -0
  39. data/app/views/banal/projects/show.json.jbuilder +1 -0
  40. data/app/views/directories/show.html.erb +8 -4
  41. data/app/views/ezii_os_files/_entity_visual_selection.html.erb +66 -0
  42. data/app/views/ezii_os_files/_wit_ai_widget.html.erb +80 -72
  43. data/app/views/layouts/application.html.erb +26 -197
  44. data/app/views/layouts/application_legacy.html.erb +212 -0
  45. data/app/views/tasks/_form.html.erb +37 -0
  46. data/app/views/tasks/_task.json.jbuilder +2 -0
  47. data/app/views/tasks/edit.html.erb +6 -0
  48. data/app/views/tasks/index.html.erb +33 -0
  49. data/app/views/tasks/index.json.jbuilder +1 -0
  50. data/app/views/tasks/new.html.erb +5 -0
  51. data/app/views/tasks/show.html.erb +12 -0
  52. data/app/views/tasks/show.json.jbuilder +1 -0
  53. data/config/routes.rb +7 -0
  54. data/db/development.sqlite3 +0 -0
  55. data/db/migrate/20190912113509_create_tasks.rb +12 -0
  56. data/db/migrate/20190912173649_create_banal_projects.rb +9 -0
  57. data/db/migrate/20190912173916_create_banal_brainstorms.rb +14 -0
  58. data/db/seeds.rb +7 -0
  59. data/ezii-os.gemspec +1 -1
  60. data/lib/tasks/rgeo_supports_geos.rake +6 -0
  61. data/lib/tasks/task.rake +5 -5
  62. data/log/development.log +8016 -0
  63. data/test/controllers/banal/brainstorms_controller_test.rb +48 -0
  64. data/test/controllers/banal/projects_controller_test.rb +48 -0
  65. data/test/controllers/tasks_controller_test.rb +48 -0
  66. data/test/fixtures/banal/brainstorms.yml +17 -0
  67. data/test/fixtures/banal/projects.yml +7 -0
  68. data/test/fixtures/tasks.yml +13 -0
  69. data/test/models/banal/brainstorm_test.rb +7 -0
  70. data/test/models/banal/project_test.rb +7 -0
  71. data/test/models/task_test.rb +7 -0
  72. data/test/system/banal/brainstorms_test.rb +53 -0
  73. data/test/system/banal/projects_test.rb +43 -0
  74. data/test/system/tasks_test.rb +49 -0
  75. metadata +58 -4
  76. data/app/assets/stylesheets/scaffolds.scss +0 -84
  77. data/ezii-os-0.0.0.0.1.gem +0 -0
  78. data/ezii-os-0.0.0.1.0.gem +0 -0
@@ -0,0 +1,212 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>BanalTodo1</title>
5
+ <%= csrf_meta_tags %>
6
+ <%= csp_meta_tag %>
7
+
8
+ <%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
9
+ <%= javascript_pack_tag 'application', 'data-turbolinks-track': 'reload' %>
10
+ </head>
11
+ <% if Time.now.strftime('%M').to_i < 70 %>
12
+
13
+ <% if cookies['level'].to_s == '2' || (ENV['ALLOWED_LISTED_FOR_SECOND_LEVEL'] || '').split(',').include?(request.remote_ip) %>
14
+
15
+
16
+ <body>
17
+ <div class="content">
18
+ <header>
19
+ <h5 style="background-color: green; color: white;">BE CONSERVATIVELY SECURE</h5>
20
+ <h4 style="background-color: yellow; color: black">FIRST SIMULATE, THEN DEPLOY A PASSIVE (EXTREMELY PASSIVE) SYSTEM TO REAL WORLD, FINALLY MAKE IT ACTIVE IN A <b>SECURE</b> WAY</h4>
21
+ <h3 style="background-color: red; color: white">If you don't know what this is please only take the survey if you want to help and then leave this site again, thanks.</h3>
22
+ <script>(function(t,e,s,o){var n,a,c;t.SMCX=t.SMCX||[],e.getElementById(o)||(n=e.getElementsByTagName(s),a=n[n.length-1],c=e.createElement(s),c.type="text/javascript",c.async=!0,c.id=o,c.src=["https:"===location.protocol?"https://":"http://","widget.surveymonkey.com/collect/website/js/tRaiETqnLgj758hTBazgd1xa5A9y8yPlVJPl45ILXuqWKd1oAWzR0gaU37YaYtdR.js"].join(""),a.parentNode.insertBefore(c,a))})(window,document,"script","smcx-sdk");</script>
23
+
24
+ <h2 onclick="window.location = '/searches'">Search</h2>
25
+ <h1><a href="/">eZii Operating System Start</a></h1>
26
+ <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
27
+
28
+ </header>
29
+
30
+ <main>
31
+ <%= yield %>
32
+ </main>
33
+
34
+
35
+ <script>
36
+ Turbolinks.__visit = Turbolinks.visit
37
+ Turbolinks.visit = false;
38
+ </script>
39
+ <textarea
40
+ id="story" name="story"
41
+ rows="5" cols="33"
42
+
43
+ onClick="if(!confirm()) { return; };$.post('/code_change_requests', {code_change_request: {text: this.value}}, (data, status)=> { this.value = data;alert(this.value) });"
44
+ >
45
+ </textarea>
46
+
47
+ <div>
48
+ <button style="background-color: blue; color: white;" onclick="alert('Button 1')">Refactor visual selection</button>
49
+ <button style="background-color: black; color: white;" onclick="alert('Button 2')">Edit source code for this Heroku instance live</button>
50
+ <button style="background-color: yellow" onclick="alert('Button 3')">Button 3</button>
51
+ <button style="background-color: pink; color: red;" onclick="alert('Button 4')">Button 4</button>
52
+ </div>
53
+ <%- if ENV['HEROKU_FEATURE_SWITCH_GLITCH_APP_LAYOUT_EMBED'] == '1' %>
54
+ <!-- Copy and Paste Me -->
55
+ <!-- Copy and Paste Me -->
56
+ <div class="glitch-embed-wrap" style="height: 420px; width: 100%;">
57
+ <iframe
58
+ src="https://glitch.com/embed/#!/embed/like-bladder?path=views/index.html&previewSize=100"
59
+ title="like-bladder on Glitch"
60
+ allow="geolocation; microphone; camera; midi; vr; encrypted-media"
61
+ style="height: 100%; width: 100%; border: 0;">
62
+ </iframe>
63
+ </div>
64
+ <% end %>
65
+ </br>
66
+ </br>
67
+ </br>
68
+ </br>
69
+ </br>
70
+
71
+ </br>
72
+ </br>
73
+ </br>
74
+ </br>
75
+ </br>
76
+ </br>
77
+ </br>
78
+ </br>
79
+ </br>
80
+ </br>
81
+ </br>
82
+ </br>
83
+ </br>
84
+ </br>
85
+ </br>
86
+ <footer>
87
+ <img src="data:image/png;base64,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" />
88
+
89
+ <script
90
+ src="https://code.jquery.com/jquery-3.4.1.js"
91
+ integrity="sha256-WpOohJOqMqqyKL9FccASB9O0KwACQJpFTUBLTYOVvVU="
92
+ crossorigin="anonymous"></script>
93
+
94
+
95
+ <!-- <span class='quora-content-embed' data-name='When-will-there-be-drones-that-taser-people-instead-of-killing-them-non-lethal-drone-eliminations/answer/David-Hambling'>Read <a class='quora-content-link' data-width='560' data-height='260' href='https://www.quora.com/When-will-there-be-drones-that-taser-people-instead-of-killing-them-non-lethal-drone-eliminations/answer/David-Hambling' data-type='answer' data-id='163921462' data-key='ee9e46a83d2467afb2fb815b9424ade1' load-full-answer='False' data-embed='bzrcecw'><a href='https://www.quora.com/David-Hambling'>David Hambling</a>&#039;s <a href='/When-will-there-be-drones-that-taser-people-instead-of-killing-them-non-lethal-drone-eliminations#ans163921462'>answer</a> to <a href='/When-will-there-be-drones-that-taser-people-instead-of-killing-them-non-lethal-drone-eliminations' ref='canonical'><span class="rendered_qtext">When will there be drones that taser people instead of killing them (non-lethal drone eliminations)?</span></a></a> on <a href='https://www.quora.com'>Quora</a><script type="text/javascript" src="https://www.quora.com/widgets/content"></script></span> -->
96
+
97
+ <span
98
+ onclick="
99
+ alert('Do u want to work? Write an email to manu@korfmann.info and ask for our Discord')
100
+ fetch('/code_change_requests/1')
101
+ "
102
+ class="pickaxe" style="font-size: 10em;">⛏️
103
+ </span>
104
+
105
+ <span
106
+ onclick="alert('Do u want to work? Write an email to manu@korfmann.info and ask for our Discord')
107
+ fetch('/code_change_requests/1')"
108
+ >
109
+ By using this website, you agree to the following: We show you your ip
110
+ </span>
111
+
112
+ <span
113
+ style="background-color: red"
114
+ onclick="confirm('Do you want peace? Peaceeful eliminations are a key, non-lethal weapons, like a drone that tasers, but without 80000 volt which could kill a being.');fetch('/code_change_requests/1');">
115
+ Do you want to get to the next level?
116
+ </span>
117
+
118
+ <div>
119
+ <span class="level-slider" style="font-size: 10em;">
120
+ 🎚️<%= cookies['level'] %>
121
+ </span>
122
+
123
+ <span>
124
+ <input
125
+ type="range"
126
+ name="level"
127
+ min="0"
128
+ max="10"
129
+ onchange="$.post('/cookie_changes', {cookie_change: {identifier: 'level', value: event.target.value}}, (data, status)=> { this.value = data;alert(this.value); });"
130
+ >
131
+ </span>
132
+ </div>
133
+ <%# RUSSIAN DOLL %>
134
+ YOUR IP
135
+
136
+ <%= request.remote_ip %>
137
+ <span class='yellow' style="background-color: yellow">
138
+ <% case cookies['level'] %>
139
+ <% when nil %>
140
+ Please select a level
141
+ <% when '1' %>
142
+ <p> Landing Page (glitch + discord) </p>
143
+ <% when '2' %>
144
+ <p>eZii OS</p>
145
+ <% when '3' %>
146
+ <p>GAM download (github.com/ezii123/gam)</p>
147
+ <% when '4' %>
148
+ <p>DEVIL IS IMPOSSIBLE TO UNDERSTAND</p>
149
+
150
+ <span>BRAINFREEZER VIA NEURALINK</span>
151
+
152
+ <span>Understanding ideas is often simple, translate it to your native language</span>
153
+ <% when '5' %>
154
+ <p>GAM in browser via artichoke</p>
155
+ <% when '6' %>
156
+ <p>GOD IS IMPOSSIBLE TO UNDERSTAND</p>
157
+ <% when '7' %>
158
+ <p>LIFE IS IMPOSSIBLE TO UNDERSTAND</p>
159
+ <% when '8' %>
160
+ <p>IMPOSSIBLE BURGER</p>
161
+ <% when '9' %>
162
+ <p>MAC DONALDS</p>
163
+ <% when '10' %>
164
+ <p>eZii</p>
165
+ <% end %>
166
+ </span>
167
+
168
+
169
+
170
+ <!-- I wish i could render the following in the web browser somehow and then display it with an erb conditional -->
171
+ <!-- Maybe it could work using artichoke -->
172
+ <!--
173
+ <widgetbot
174
+ server="<%= ENV['DISCORD_SERVER_ID'] %>"
175
+ channel="<%= ENV['DISCORD_CHANNEL_ID'] %>"
176
+ width="800"
177
+ height="600"
178
+ shard="https://disweb.deploys.io"
179
+ >
180
+ </widgetbot>
181
+ <script src="https://cdn.jsdelivr.net/npm/@widgetbot/html-embed"></script>
182
+ -->
183
+ </footer>
184
+
185
+ <% elsif false %>
186
+ <div class="glitch-embed-wrap" style="height: 420px; width: 100%;">
187
+ <iframe
188
+ src="https://glitch.com/embed/#!/embed/like-bladder?path=views/index.html&previewSize=100"
189
+ title="like-bladder on Glitch"
190
+ allow="geolocation; microphone; camera; midi; vr; encrypted-media"
191
+ style="height: 100%; width: 100%; border: 0;">
192
+ </iframe>
193
+ </div>
194
+
195
+ <widgetbot
196
+ server="<%= ENV['DISCORD_SERVER_ID'] %>"
197
+ channel="<%= ENV['DISCORD_CHANNEL_ID'] %>"
198
+ width="800"
199
+ height="600"
200
+ shard="https://disweb.deploys.io"
201
+ >
202
+ </widgetbot>
203
+ <script src="https://cdn.jsdelivr.net/npm/@widgetbot/html-embed"></script>
204
+ <% end %>
205
+ </div>
206
+ </body>
207
+ <% else %>
208
+ <body>
209
+ <h1>Get back to work</h1>
210
+ </body>
211
+ <% end %>
212
+ </html>
@@ -0,0 +1,37 @@
1
+ <%= form_with(model: task, local: true) do |form| %>
2
+ <% if task.errors.any? %>
3
+ <div id="error_explanation">
4
+ <h2><%= pluralize(task.errors.count, "error") %> prohibited this task from being saved:</h2>
5
+
6
+ <ul>
7
+ <% task.errors.full_messages.each do |message| %>
8
+ <li><%= message %></li>
9
+ <% end %>
10
+ </ul>
11
+ </div>
12
+ <% end %>
13
+
14
+ <div class="field">
15
+ <%= form.label :reward %>
16
+ <%= form.number_field :reward %>
17
+ </div>
18
+
19
+ <div class="field">
20
+ <%= form.label :title %>
21
+ <%= form.text_field :title %>
22
+ </div>
23
+
24
+ <div class="field">
25
+ <%= form.label :briefing %>
26
+ <%= form.text_area :briefing %>
27
+ </div>
28
+
29
+ <div class="field">
30
+ <%= form.label :cta_copy %>
31
+ <%= form.text_field :cta_copy %>
32
+ </div>
33
+
34
+ <div class="actions">
35
+ <%= form.submit %>
36
+ </div>
37
+ <% end %>
@@ -0,0 +1,2 @@
1
+ json.extract! task, :id, :reward, :title, :briefing, :cta_copy, :created_at, :updated_at
2
+ json.url task_url(task, format: :json)
@@ -0,0 +1,6 @@
1
+ <h1>Editing Task</h1>
2
+
3
+ <%= render 'form', task: @task %>
4
+
5
+ <%= link_to 'Show', @task %> |
6
+ <%= link_to 'Back', tasks_path %>
@@ -0,0 +1,33 @@
1
+ <p id="notice"><%= notice %></p>
2
+
3
+ <h1>Tasks</h1>
4
+
5
+ <table>
6
+ <thead>
7
+ <tr>
8
+ <th>Reward</th>
9
+ <th>Title</th>
10
+ <th>Briefing</th>
11
+ <th>Cta copy</th>
12
+ <th colspan="3"></th>
13
+ </tr>
14
+ </thead>
15
+
16
+ <tbody>
17
+ <% @tasks.each do |task| %>
18
+ <tr>
19
+ <td><%= task.reward %></td>
20
+ <td><%= task.title %></td>
21
+ <td><%= task.briefing %></td>
22
+ <td><%= task.cta_copy %></td>
23
+ <td><%= link_to 'Show', task %></td>
24
+ <td><%= link_to 'Edit', edit_task_path(task) %></td>
25
+ <td><%= link_to 'Destroy', task, method: :delete, data: { confirm: 'Are you sure?' } %></td>
26
+ </tr>
27
+ <% end %>
28
+ </tbody>
29
+ </table>
30
+
31
+ <br>
32
+
33
+ <%= link_to 'New Task', new_task_path %>
@@ -0,0 +1 @@
1
+ json.array! @tasks, partial: "tasks/task", as: :task
@@ -0,0 +1,5 @@
1
+ <h1>New Task</h1>
2
+
3
+ <%= render 'form', task: @task %>
4
+
5
+ <%= link_to 'Back', tasks_path %>
@@ -0,0 +1,12 @@
1
+ <div class="card">
2
+ <div class="card-header">
3
+ Featured task <span class="badge badge-dark">+ <%= "%.2f" % (@task.reward.to_f / 100) %>$ on completion</span>
4
+ </div>
5
+ <div class="card-body">
6
+ <h5 class="card-title"><%= @task.title %></h5>
7
+ <p class="card-text">
8
+ <%= @task.briefing %>
9
+ </p>
10
+ <a href="#" class="btn btn-primary"><%= @task.cta_copy %></a>
11
+ </div>
12
+ </div>
@@ -0,0 +1 @@
1
+ json.partial! "tasks/task", task: @task
data/config/routes.rb CHANGED
@@ -1,4 +1,11 @@
1
1
  Rails.application.routes.draw do
2
+ namespace :banal do
3
+ resources :brainstorms
4
+ end
5
+ namespace :banal do
6
+ resources :projects
7
+ end
8
+ resources :tasks
2
9
  resources :cookie_changes
3
10
  resources :types
4
11
  resources :code_link_types
Binary file
@@ -0,0 +1,12 @@
1
+ class CreateTasks < ActiveRecord::Migration[6.0]
2
+ def change
3
+ create_table :tasks do |t|
4
+ t.integer :reward
5
+ t.string :title
6
+ t.text :briefing
7
+ t.string :cta_copy
8
+
9
+ t.timestamps
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,9 @@
1
+ class CreateBanalProjects < ActiveRecord::Migration[6.0]
2
+ def change
3
+ create_table :banal_projects do |t|
4
+ t.string :name
5
+
6
+ t.timestamps
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,14 @@
1
+ class CreateBanalBrainstorms < ActiveRecord::Migration[6.0]
2
+ def change
3
+ create_table :banal_brainstorms do |t|
4
+ t.text :idea
5
+ t.string :main_category
6
+ t.string :priority
7
+ t.string :status
8
+ t.text :comments
9
+ t.string :idea_owner
10
+
11
+ t.timestamps
12
+ end
13
+ end
14
+ end
data/db/seeds.rb CHANGED
@@ -19,4 +19,11 @@ FileSystem.create(
19
19
 
20
20
  FileSystem.create(
21
21
  description: 'Github', machine_readable_identifier: 'github'
22
+ )
23
+
24
+ Task.create(
25
+ reward: 50,
26
+ title: 'Uncover 50 president names of housing communities across Norway',
27
+ briefing: "Each uncovered president must be at least 5 minutes of car travel time away from all previously uncovered ones. You'll be presented a map with PDF documents about housing communities which are already located on a map. Then you need to find the names of the presidents in the PDF documents. Bonus: Find the name in a second PDF document, to verify it's spelling and validity.",
28
+ cta_copy: 'Show geographical map'
22
29
  )
data/ezii-os.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'ezii-os'
3
- s.version = '1.0.0'
3
+ s.version = '1.1.0'
4
4
  s.date = '2019-08-14'
5
5
  s.summary = "eZii operating system"
6
6
  s.description = "Web-based, operating on the cloud platform"
@@ -0,0 +1,6 @@
1
+ # frozen_string_literal: true
2
+
3
+ desc 'Check if RGeo supports GEOS'
4
+ task :rgeo_supports_geos do
5
+ abort 'Error: RGeo does not support GEOS.' unless RGeo::Geos.supported?
6
+ end
data/lib/tasks/task.rake CHANGED
@@ -1,5 +1,5 @@
1
- namespace :task do
2
- puts `
3
- curl -n https://api.heroku.com/apps/ezii-os/config-vars -H "Accept: application/vnd.heroku+json; version=3"
4
- `
5
- end
1
+ # namespace :task do
2
+ # puts `
3
+ # curl -n https://api.heroku.com/apps/ezii-os/config-vars -H "Accept: application/vnd.heroku+json; version=3"
4
+ # `
5
+ # end