Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
187 commits
Select commit Hold shift + click to select a range
a825f59
Upgrade Rails to V7
zafarelli Jun 28, 2022
3fcf30a
Migrate to Rails 7 and accompanying changes
zafarelli Jun 30, 2022
e605311
Remove Intro.js from importmap
Jul 1, 2022
7a1bd87
Refactor versions/_show WIP
Jul 1, 2022
f9c89f7
Add jbuilder gem for easy json output
zafarelli Jul 4, 2022
0e3badb
Refactor display of timeline and version
zafarelli Jul 4, 2022
1c693e5
Add turbo-rails
Jul 4, 2022
b957670
Replace all global cancelForm() functions with history.back()
Jul 5, 2022
5c000ea
Replace .js.erb files with .html.erb
Jul 5, 2022
c6b9ff5
Various routing changes, mainly to do with the elimination of the js.…
Jul 5, 2022
ba53048
Rename _new.html.erb to _new_buttons.html.erb
Jul 5, 2022
f26ff19
Fix importing and deleting of projects
Jul 5, 2022
41b4311
Fix permissions checking for user management, update user deletion
Jul 5, 2022
96adc35
Fix module resolution for Firefox
Jul 5, 2022
efe5e04
Cleanup
Jul 6, 2022
4d72bf0
WIP Remove more .js.erbs
Jul 6, 2022
19ef4b0
Use gem for bootstrap
Jul 6, 2022
d2ea546
Add bootstrap icons
Jul 6, 2022
84f6991
Import bootstrap and vis css, use bootstrap icons
Jul 7, 2022
3c55d02
Change imports, change bootstrap components, change bootstrap data-tr…
Jul 7, 2022
d1ac9bf
Re-add sendMail and searchConcept methods to ConceptMap class
Jul 7, 2022
41e0da7
improved vis-added MultiEdit/Node Shapes/Edge Direction/collision det…
niclaslueth Jul 7, 2022
5c4b317
Change glyphicons to bootstrap icons, some DOM adjustments
Jul 8, 2022
f91d6ca
Provisionary fix for double background of intro modal
Jul 8, 2022
68f74fa
Fix initial display of introduction
Jul 11, 2022
6e50231
Fix appearance of context help
Jul 11, 2022
53229ed
Change pull-right -> float-end
Jul 11, 2022
adf1399
Change btn-default -> btn-secondary
Jul 11, 2022
0fc69a4
Remove custom close button in favor of bootstrap version
Jul 11, 2022
0146794
Add css for vis-timeline, add moment.js to importmap, fix import of v…
Jul 11, 2022
75f4cf3
Replace .js.erbs for concepts/links with jbuilder, adapt ConceptMap c…
Jul 11, 2022
1fabc3c
Add some margins, remove some debug info
Jul 12, 2022
fa3757d
Remove more js.erbs, some cleanup
Jul 12, 2022
5e19b87
Fix node update after position change
Jul 12, 2022
c2496d4
Add color to export, remove debug info
Jul 12, 2022
a9f8778
Fix hovering of vis buttons
Jul 12, 2022
2bbdc51
Some cleanup
Jul 12, 2022
d67ab07
Update backend header to BS5
Jul 12, 2022
79e71e5
Fix handling of non-existent versions
Jul 12, 2022
8a5c5bb
Fix import bug with no versions
Jul 12, 2022
54d826e
Add proper jbuilder template for concepts
Jul 12, 2022
28da3c3
Some bootstrap stuff
Jul 12, 2022
cd52493
Merge branch 'chore/upgrade-rails-7' into feature-vis
Jul 12, 2022
21314fe
added attributes to jbuilder for links/concepts
niclaslueth Jul 12, 2022
4b15f4f
fixed jbuilder syntax
niclaslueth Jul 12, 2022
b0ca244
Some backend layout improvements
Jul 13, 2022
75744d6
Fix version display error
Jul 13, 2022
70956df
Some layout fixes, fix export button for concept maps
Jul 13, 2022
1130bc9
minor design fixes and correcting mode to this.mode
niclaslueth Jul 13, 2022
4713346
Change button layout in concept_map/show, add png export
Jul 13, 2022
5909fa8
POC post multiple concepts from editor
Jul 14, 2022
2ba9142
Revert "POC post multiple concepts from editor"
Jul 14, 2022
f1a6037
Revert "POC post multiple concepts from editor"
Jul 14, 2022
6136c0c
saved icons locally for dsgvo/ small fix for drag&drop
niclaslueth Jul 14, 2022
faa21bd
added remaining icons locally
niclaslueth Jul 14, 2022
0f8bc94
added hover button/ minor styling updates for node buttons
niclaslueth Jul 14, 2022
6bcc43e
improved hover/ added toast/fixed form position
niclaslueth Jul 14, 2022
d3537ef
added draggable editForm/toastNotifications for doubleEdge
niclaslueth Jul 14, 2022
2d5e236
Add phone number to imprint, update other phone numbers
Jul 15, 2022
92ff31c
fixed ESC/ENTER Button,EditButton properly hides now, small Bugfixes
niclaslueth Jul 20, 2022
7bc54b8
ActiveButton style fixed, Shape/ColorButton Behaviour fixed
niclaslueth Jul 25, 2022
23ed230
improved Drag Feature, uses mousePosition instead of nodePosition as ref
niclaslueth Jul 25, 2022
046ff11
added Device Detection, disabled Context Menu and Hover Events for to…
niclaslueth Jul 25, 2022
99c1cef
improved DoubleEdge Detection, little cleanup
niclaslueth Jul 25, 2022
7471302
Improve jquery import
Jul 27, 2022
8681419
Add provisionary error message in case of empty label
Jul 27, 2022
6fc9a23
removed some logs, some minor changes
niclaslueth Jul 27, 2022
22b612a
Merge branch 'chore/upgrade-rails-7' into feature-vis
niclaslueth Jul 27, 2022
cd4be99
added buttonTranslation, ButtonPlacement relative to screensize,edite…
niclaslueth Jul 28, 2022
c5a1ecd
small fixes, updated explanation and image
niclaslueth Jul 29, 2022
75fac0d
code cleanup and comments
niclaslueth Aug 1, 2022
072e947
Improvements on preventing mobile from accidentally zooming
niclaslueth Aug 4, 2022
2cd194c
Introduce vite bundler in favor of import maps
Aug 9, 2022
2d62f2d
doubleNode and doubleEdgeToast implemented
niclaslueth Aug 10, 2022
39b7e60
various bug fixes
niclaslueth Aug 10, 2022
54aeac0
Merge branch 'chore/upgrade-rails-7' into tmp/merge_feature-vis_rails-7
Aug 11, 2022
6a96810
Fix css imports, remove comments from css, fix vite.config
Aug 11, 2022
f841c96
Fix opening of imprint from menu
Aug 11, 2022
07febe0
fixed non-scrollable content
niclaslueth Aug 11, 2022
82954eb
added multiple views for mobile devices
niclaslueth Aug 11, 2022
1952607
fix intro for menu button
niclaslueth Aug 11, 2022
f4fa272
multi edit - new api endpoint WIP
niclaslueth Aug 12, 2022
5392656
multi edit - new api endpoint WIP2
niclaslueth Aug 12, 2022
7ac52f7
multi edit - new api endpoint WIP3
niclaslueth Aug 16, 2022
5145951
Revert "multi edit - new api endpoint WIP1-3"
niclaslueth Aug 16, 2022
2d63a36
disabled DoubleClick to create new node in add_edge-mode
niclaslueth Aug 16, 2022
ae81a23
stringified labelinput
niclaslueth Aug 16, 2022
dc12ba9
removed feature to change direction in edges
niclaslueth Aug 16, 2022
a589c45
little fix for loading links
niclaslueth Aug 16, 2022
4875d80
adding cooperative working in CoMapEd
Sep 21, 2022
0f8740f
prevent menubutton dropdown from opening when clicked between node bu…
niclaslueth Sep 29, 2022
67c02b3
Add staging environment
Oct 12, 2022
1492b00
Remove turbo-rails gem, add mysql for staging
Oct 12, 2022
27f2a46
Add sqlite stuff to Dockerfile.stage
Oct 12, 2022
595d8cf
Add storage.yml
Oct 12, 2022
d75a6d6
Remove uglifier
Oct 12, 2022
b10defc
Try resolving routes for staging
Oct 12, 2022
6255af2
Routing for staging
Oct 13, 2022
d7ce4e4
Changes for relative_url_root
Oct 13, 2022
8a2672f
Disable pre- and postdeploy
Oct 13, 2022
57a89fe
Change routing, fix import of bootstrap-icons
Oct 13, 2022
5f6e39f
Another routes trial
Oct 13, 2022
e5d70b5
change vite.json
Oct 13, 2022
860f423
Use VITE_RUBY_BASE env
Oct 13, 2022
f6613fb
change config.ru
Oct 13, 2022
bcaabaa
Remove hardcoded redirects, some formatting
Oct 14, 2022
31f7679
Remove unnecessary switch from routes
Oct 14, 2022
c9a457a
Merge branch 'feature-vis' into chore/upgrade-rails-7
Oct 14, 2022
0d0f027
Add master.key to .gitignore
Oct 14, 2022
f453657
Add proper bootstrap variables compiling
Oct 17, 2022
eef4856
Refactor CSS, fix styling
Oct 17, 2022
805a5d9
Remove faulty meta attribute
Oct 17, 2022
875fb83
oMerge branch 'feature/cooperative_working' into chore/upgrade-rails-7
Oct 17, 2022
1c72d19
WIP incorporate cooperative working
Oct 18, 2022
a0b03e0
Merge branch 'chore/upgrade-rails-7' of https://github.com/muehling/C…
Oct 18, 2022
1f889b2
Improve styling for new edit features and coworking
Oct 18, 2022
5ea6726
Minor CSS refactoring
Oct 19, 2022
f51e19f
Remove unneeded stuff still present from importmap
Oct 19, 2022
8741394
Add redis gem
Oct 19, 2022
24b894b
Changes for cooperative working
Oct 19, 2022
aedc605
Cleanup migrations
Oct 19, 2022
ee8013b
Add proper cable config for staging and production
Oct 19, 2022
050cdb6
Use bootstrap's offcanvas instead of hand-laced element for activitiy…
Oct 19, 2022
4e93a22
Minor changes
Oct 19, 2022
2e6aefd
Add WS url for channel
Oct 19, 2022
c6053cc
Fix adding edges
Oct 20, 2022
78b3e35
Add deleting Student if ws is disconnected
Oct 20, 2022
e6921f4
Add vite binstub
Oct 20, 2022
1818cdb
Remove old vendor files
Oct 20, 2022
16d7ed8
Add @rails/actioncable to package.json
Oct 20, 2022
b3aa911
Fix 'this element is locked' bug
Oct 20, 2022
2bf0d6f
Some cleanup
Oct 20, 2022
c29c227
Fix weird behaviour when user disconnects by timeout
Oct 21, 2022
022a46e
Add checkbox to enable coworking for projects
Oct 21, 2022
fcba687
Disable log and websocket connection if not enabled in project settings
Oct 24, 2022
136007e
Disable lock check in ConceptMap class if coworking is disabled
Oct 24, 2022
42bb582
Add automatic ping to avoid automatic disconnect
Oct 24, 2022
c030abd
CSS improvements, form placement improvements
Oct 24, 2022
cfdfc85
CSS improvements
Oct 25, 2022
0b7c719
Fix edge update bug after nodes are set by coworker
Oct 25, 2022
a211648
Fix id comparison
Oct 25, 2022
aac4a1b
Add enable_coworking migration
Oct 25, 2022
14950cc
Add deployment check and pre/post deployment tasks
Oct 25, 2022
41a178a
Try different check route for staging
Oct 25, 2022
bb64ded
Try different deployment check
Oct 25, 2022
f93bdaf
Add longer waiting time before checks
Oct 25, 2022
f809eed
Temporarily disable all checks to be able to build the image
Oct 25, 2022
a5ac3d7
Add dockerignore, remove unneeded gems
Oct 25, 2022
7f740c0
Fix HTML content of task alert
Oct 26, 2022
e1647e8
Add Dockerfile.prod
Oct 26, 2022
043fea3
Improve layoout for admin concept maps
Oct 26, 2022
eead075
Improve display and clickability of legal modal
Oct 26, 2022
6c85790
Improve width of login screens for large resolutions
Oct 26, 2022
84c38cb
More styling improvements
Oct 26, 2022
d467d2c
Add shape to version
Oct 26, 2022
4fa560d
Fix missing shape and color in seeds
Oct 26, 2022
8907e14
Fix display of edges in BackendViewer
Oct 26, 2022
1b377af
Center network after animation
Oct 26, 2022
fea486f
Some context help fixes
Oct 27, 2022
ff02568
Editor button improvements
Oct 27, 2022
ee8c2c3
Add ajax helper
Oct 27, 2022
4281ab4
Add endpoint for update of multiple concepts at once
Oct 28, 2022
e9ffdac
Fix labels (edge->Verbindung, Knoten->Konzept
Oct 30, 2022
9f958b9
Exclude check_login_backend for concept_maps/update
Oct 30, 2022
5d72a55
Remove postdeploy task
Oct 30, 2022
a7c6539
Change links in emails
Oct 31, 2022
37ddba1
Fix redirect after deleting surveys
Nov 3, 2022
fc674c3
Create concepts from survey if no concepts have been created otherwise
Nov 4, 2022
927cde4
Remove superfluous DOM elements
Nov 4, 2022
889ff30
Fix initial map creation with predefined tgf map
Nov 15, 2022
3125a2d
Enable admin to see all projects
Nov 18, 2022
9309d63
Remove unnecessary stuff from Dockerfile.prod
Nov 18, 2022
d0896ba
Remove sqlite from gemfile.lock
Nov 18, 2022
5889785
Exclude test and dev gems in prod
Nov 18, 2022
d7d7786
Add mail config to Dockerfile.prod
Dec 7, 2022
1f8714a
Merge branch 'chore/upgrade-rails-7' of https://github.com/muehling/C…
Jan 11, 2023
653ea92
Add sqlite gem for development
Jan 11, 2023
2e5d824
Allow direct map linking
Jan 11, 2023
f278601
Only create student if coworking is enabled
Jan 12, 2023
4a8b36e
Fix creation of concepts and links
Jan 23, 2023
16b9735
WIP redirect for deep links, refactor coworking
Jan 23, 2023
8a8d446
Add validation for user form
Jan 24, 2023
9f49ed6
Admin can leave password blank
Jan 24, 2023
d137824
Change docker-compose.yml
Jan 24, 2023
5b4163d
Add gitlab-ci.yml
Jan 24, 2023
5a3a9ec
Remove wrong rule param
Jan 24, 2023
c32807d
Disable gitlab pipeline for now
Jan 25, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 30 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@

# Ignore bundler config.
/.bundle

# Ignore the default SQLite database.
/db/*.sqlite3
/db/*.sqlite3-journal

# Ignore all logfiles and tempfiles.
/log/*
/tmp/*
!/log/.keep
!/tmp/.keep

# Ignore Byebug command history file.
.byebug_history


#Ignore IDE
/.idea

node_modules/

public/vite-dev/
public/assets/

CoMapEd_development
comaped.sql

.git/
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -26,3 +26,8 @@

#Ignore IDE
/.idea

node_modules

public/vite-dev
/config/master.key
7 changes: 7 additions & 0 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
stages:
- yarn_audit

yarn_audit:
stage: yarn_audit
script:
- yarn audit
7 changes: 7 additions & 0 deletions .gitlab-ci.yml.disabled
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
stages:
- yarn_audit

yarn_audit:
stage: yarn_audit
script:
- yarn audit
10 changes: 10 additions & 0 deletions .msmtprc
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
defaults
port 25

account levumi
from noreply@comaped.de
host 172.17.0.1
port 25
auth off

account default : levumi
8 changes: 8 additions & 0 deletions .prettierrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
module.exports = {
"singleQuote": true,
"tabWidth": 2,
"printWidth": 100,
"semi": false,
"arrowParens": "avoid",
"vueIndentScriptAndStyle": true
}
3 changes: 3 additions & 0 deletions CHECKS.disabled
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
WAIT=10
ATTEMPTS=6
/check.txt simple_check
34 changes: 34 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
FROM ruby:3.1.2-slim

RUN apt-get update && apt-get install -y curl

RUN curl -sL https://deb.nodesource.com/setup_14.x | bash - && apt-get install -y nodejs

RUN apt-get update -qq && apt-get install -yq --no-install-recommends \
build-essential \
gnupg2 \
git \
libpq-dev \
default-libmysqlclient-dev \
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*



ENV LANG=C.UTF-8 \
BUNDLE_JOBS=4 \
BUNDLE_RETRY=3 \
RAILS_ENV=development

WORKDIR /usr/src/app
COPY Gemfile /Gemfile
COPY Gemfile.lock /Gemfile.lock

RUN gem update --system && gem install bundler && bundle install

COPY entrypoint.sh /usr/bin/
RUN chmod +x /usr/bin/entrypoint.sh
ENTRYPOINT ["sh", "/usr/bin/entrypoint.sh"]

EXPOSE 3000

CMD ["bundle", "exec", "rails", "s", "-b", "0.0.0.0"]
42 changes: 42 additions & 0 deletions Dockerfile.prod
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
FROM ruby:3.1.2-slim

RUN apt-get update && apt-get install -y curl

RUN curl -sL https://deb.nodesource.com/setup_14.x | bash - && apt-get install -y nodejs

RUN echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list && \
curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - && \
apt-get update -qq && apt-get install -yq --no-install-recommends \
build-essential \
gnupg2 \
git \
nano \
default-libmysqlclient-dev \
msmtp-mta \
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*

ENV LANG=C.UTF-8 \
BUNDLE_JOBS=4 \
BUNDLE_RETRY=3 \
RAILS_ENV=production \
RAILS_RELATIVE_URL_ROOT='/' \
RAILS_SERVE_STATIC_FILES=true \
VITE_RUBY_BASE='/' \
MYSQL_DATABASE_SCHEME=mysql2

WORKDIR /usr/src/app
COPY Gemfile /Gemfile
COPY Gemfile.lock /Gemfile.lock

COPY . /usr/src/app/
COPY .msmtprc /root/

RUN gem update --system && gem install bundler && bundle config set --local without test development && bundle install

COPY entrypoint.sh /usr/bin/
RUN chmod +x /usr/bin/entrypoint.sh
ENTRYPOINT ["sh", "/usr/bin/entrypoint.sh"]

EXPOSE 3000

CMD ["bundle", "exec", "rails", "s", "-b", "0.0.0.0"]
43 changes: 43 additions & 0 deletions Dockerfile.stage
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
FROM ruby:3.1.2-slim

RUN apt-get update && apt-get install -y curl



RUN curl -sL https://deb.nodesource.com/setup_14.x | bash - && apt-get install -y nodejs

RUN echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list && \
curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - && \
apt-get update -qq && apt-get install -yq --no-install-recommends \
build-essential \
gnupg2 \
git \
sqlite3 \
libsqlite3-dev \
default-libmysqlclient-dev \
nano \
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*

ENV LANG=C.UTF-8 \
BUNDLE_JOBS=4 \
BUNDLE_RETRY=3 \
RAILS_ENV=staging \
RAILS_RELATIVE_URL_ROOT='/comaped' \
RAILS_SERVE_STATIC_FILES=true \
VITE_RUBY_BASE='/comaped'

WORKDIR /usr/src/app
COPY Gemfile /Gemfile
COPY Gemfile.lock /Gemfile.lock

COPY . /usr/src/app/

RUN gem update --system && gem install bundler && bundle install

COPY entrypoint.sh /usr/bin/
RUN chmod +x /usr/bin/entrypoint.sh
ENTRYPOINT ["sh", "/usr/bin/entrypoint.sh"]

EXPOSE 3000

CMD ["bundle", "exec", "rails", "s", "-b", "0.0.0.0"]
48 changes: 16 additions & 32 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -1,40 +1,23 @@
source 'https://rubygems.org'

ruby "3.1.2"
git_source(:github) do |repo_name|
repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/")
"https://github.com/#{repo_name}.git"
end


# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '~> 5.0.1'
# Use sqlite3 as the database for Active Record
gem 'sqlite3', '~> 1.3', '< 1.4'
gem 'rails', '~> 7.0.2'

# Use Puma as the app server
gem 'puma', '~> 3.0'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 5.0'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'
# Use CoffeeScript for .coffee assets and views
gem 'coffee-rails', '~> 4.2'
# See https://github.com/rails/execjs#readme for more supported runtimes
# gem 'therubyracer', platforms: :ruby

# Use jquery as the JavaScript library
gem 'jquery-rails'
# Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks
gem 'turbolinks', '~> 5'
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 2.5'
# Use Redis adapter to run Action Cable in production
# gem 'redis', '~> 3.0'

# Use ActiveModel has_secure_password
gem 'bcrypt', '~> 3.1.7'
gem 'bcrypt', '~> 3.1.7'

gem 'jbuilder'

# Use Capistrano for deployment
gem 'capistrano-rails'
gem 'capistrano-passenger'

group :development, :test do
# Call 'byebug' anywhere in the code to stop execution and get a debugger console
Expand All @@ -45,19 +28,20 @@ group :development do
# Access an IRB console on exception pages or by using <%= console %> anywhere in the code.
gem 'web-console', '>= 3.3.0'
gem 'listen', '~> 3.0.5'
# Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
gem 'spring'
gem 'spring-watcher-listen', '~> 2.0.0'
end

group :production do
gem 'mysql2'
end

gem 'mysql2'

# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]

#Additional gems:
gem 'rubyzip'
gem 'bootstrap-sass', '~> 3.3.7'
gem 'visjs-rails', '~> 4.21.0.0'
gem "js-routes"

gem 'vite_rails'

gem "sprockets-rails", "~> 3.4"

gem "redis", "~> 5.0"
Loading