Merge branch 'master' of https://github.com/CactusPuppy/snapcon into 176917559-add-brand-elements-to-email

This commit is contained in:
Jimmy 2021-02-23 23:04:33 -08:00
commit 17b1617df9
7 changed files with 139 additions and 25 deletions

79
.gitignore vendored
View file

@ -1,3 +1,23 @@
# Global, for Macs
*~
# Compiled Python files
*.pyc
# Folder view configuration files
.DS_Store
Desktop.ini
# Thumbnail cache files
._*
Thumbs.db
# Files that might appear on external disks
.Spotlight-V100
.Trashes
# Legacy from before Feb 2021
/db/test.sqlite3-journal /db/test.sqlite3-journal
config/application.rb config/application.rb
config/config.yml config/config.yml
@ -41,3 +61,62 @@ docker-compose.override.yml
osem_development osem_development
osem_test osem_test
config/local_env.yml config/local_env.yml
# From GitHub, for Ruby
# https://github.com/github/gitignore/blob/master/Ruby.gitignore
*.gem
*.rbc
/.config
/coverage/
/InstalledFiles
/pkg/
/spec/reports/
/spec/examples.txt
/test/tmp/
/test/version_tmp/
/tmp/
# Used by dotenv library to load environment variables.
# .env
# Ignore Byebug command history file.
.byebug_history
## Specific to RubyMotion:
.dat*
.repl_history
build/
*.bridgesupport
build-iPhoneOS/
build-iPhoneSimulator/
## Specific to RubyMotion (use of CocoaPods):
#
# We recommend against adding the Pods directory to your .gitignore. However
# you should judge for yourself, the pros and cons are mentioned at:
# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control
#
# vendor/Pods/
## Documentation cache and generated files:
/.yardoc/
/_yardoc/
/doc/
/rdoc/
## Environment normalization:
/.bundle/
/vendor/bundle
/lib/bundler/man/
# for a library or gem, you might want to ignore these files since the code is
# intended to run in multiple environments; otherwise, check them in:
# Gemfile.lock
# .ruby-version
# .ruby-gemset
# unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
.rvmrc
# Used by RuboCop. Remote config files pulled in from inherit_from directive.
.rubocop-https?--*

View file

@ -101,10 +101,11 @@ GEM
rack-test (>= 0.6.3) rack-test (>= 0.6.3)
regexp_parser (~> 1.5) regexp_parser (~> 1.5)
xpath (~> 3.2) xpath (~> 3.2)
carrierwave (1.3.1) carrierwave (1.3.2)
activemodel (>= 4.0.0) activemodel (>= 4.0.0)
activesupport (>= 4.0.0) activesupport (>= 4.0.0)
mime-types (>= 1.16) mime-types (>= 1.16)
ssrf_filter (~> 1.0)
carrierwave-bombshelter (0.2.2) carrierwave-bombshelter (0.2.2)
activesupport (>= 3.2.0) activesupport (>= 3.2.0)
carrierwave carrierwave
@ -124,7 +125,7 @@ GEM
json json
simplecov simplecov
coderay (1.1.1) coderay (1.1.1)
concurrent-ruby (1.1.7) concurrent-ruby (1.1.8)
countable-rails (0.0.1) countable-rails (0.0.1)
railties (>= 3.1) railties (>= 3.1)
countries (3.0.0) countries (3.0.0)
@ -229,7 +230,7 @@ GEM
htmlentities (4.3.4) htmlentities (4.3.4)
http-cookie (1.0.3) http-cookie (1.0.3)
domain_name (~> 0.5) domain_name (~> 0.5)
i18n (1.8.5) i18n (1.8.8)
concurrent-ruby (~> 1.0) concurrent-ruby (~> 1.0)
i18n_data (0.8.0) i18n_data (0.8.0)
inversion (1.1.1) inversion (1.1.1)
@ -273,9 +274,9 @@ GEM
marcel (0.3.3) marcel (0.3.3)
mimemagic (~> 0.3.2) mimemagic (~> 0.3.2)
method_source (0.8.2) method_source (0.8.2)
mime-types (3.2.2) mime-types (3.3.1)
mime-types-data (~> 3.2015) mime-types-data (~> 3.2015)
mime-types-data (3.2018.0812) mime-types-data (3.2020.1104)
mimemagic (0.3.5) mimemagic (0.3.5)
mina (1.2.3) mina (1.2.3)
open4 (~> 1.3.4) open4 (~> 1.3.4)
@ -283,7 +284,7 @@ GEM
mini_magick (4.9.5) mini_magick (4.9.5)
mini_mime (1.0.2) mini_mime (1.0.2)
mini_portile2 (2.5.0) mini_portile2 (2.5.0)
minitest (5.14.2) minitest (5.14.3)
momentjs-rails (2.20.1) momentjs-rails (2.20.1)
railties (>= 3.1) railties (>= 3.1)
monetize (1.9.2) monetize (1.9.2)
@ -548,6 +549,7 @@ GEM
activesupport (>= 4.0) activesupport (>= 4.0)
sprockets (>= 3.0.0) sprockets (>= 3.0.0)
sqlite3 (1.4.2) sqlite3 (1.4.2)
ssrf_filter (1.0.7)
stripe (5.14.0) stripe (5.14.0)
stripe-ruby-mock (3.0.1) stripe-ruby-mock (3.0.1)
dante (>= 0.2.0) dante (>= 0.2.0)
@ -564,7 +566,7 @@ GEM
turbolinks (5.2.1) turbolinks (5.2.1)
turbolinks-source (~> 5.2) turbolinks-source (~> 5.2)
turbolinks-source (5.2.0) turbolinks-source (5.2.0)
tzinfo (1.2.7) tzinfo (1.2.9)
thread_safe (~> 0.1) thread_safe (~> 0.1)
uglifier (4.1.20) uglifier (4.1.20)
execjs (>= 0.3.0, < 3) execjs (>= 0.3.0, < 3)

View file

@ -1,21 +1,32 @@
[![Build Status](https://travis-ci.org/openSUSE/osem.svg?branch=master)](https://travis-ci.org/openSUSE/osem) [![Build Status](https://travis-ci.com/CactusPuppy/snapcon.svg?branch=master)](https://travis-ci.com/CactusPuppy/snapcon)
[![Code Climate](https://codeclimate.com/github/openSUSE/osem.png)](https://codeclimate.com/github/openSUSE/osem) [![Maintainability](https://api.codeclimate.com/v1/badges/6c7fc446b3b10866ba71/maintainability)](https://codeclimate.com/github/CactusPuppy/snapcon/maintainability)
[![codecov](https://codecov.io/gh/opensuse/osem/branch/master/graph/badge.svg)](https://codecov.io/gh/opensuse/osem) [![codecov](https://codecov.io/gh/CactusPuppy/snapcon/branch/master/graph/badge.svg?token=y4aEAtw6KJ)](https://codecov.io/gh/CactusPuppy/snapcon)
[![Security Status](https://hakiri.io/github/openSUSE/osem/master.svg)](https://hakiri.io/github/openSUSE/osem/master) [![Security Status](https://hakiri.io/github/CactusPuppy/snapcon/master.svg)](https://hakiri.io/github/CactusPuppy/snapcon/master)
[![Dependencies](https://badges.depfu.com/badges/8fcd630367d20f5b48d393774c00c5fd/overview.svg)](https://depfu.com/repos/openSUSE/osem) [![Depfu](https://badges.depfu.com/badges/16eb1ffb3a9f1a36c4e595a5ae2a1dca/overview.svg)](https://depfu.com/github/CactusPuppy/snapcon?project_id=22682)
[![Bluejay Dashboard](https://img.shields.io/badge/Bluejay-Dashboard_5-blue.svg)](http://dashboard.bluejay.governify.io/dashboard/script/dashboardLoader.js?dashboardURL=https://reporter.bluejay.governify.io/api/v4/dashboards/tpa-CS169L-GH-CactusPuppy_snapcon/main)
<a href="https://heroku.com/deploy?template=https://github.com/openSUSE/osem/tree/v1.0"> <a href="https://heroku.com/deploy?template=https://github.com/openSUSE/osem/tree/v1.0">
<img src="https://www.herokucdn.com/deploy/button.svg" height="20px" alt="Deploy"> <img src="https://www.herokucdn.com/deploy/button.svg" height="20px" alt="Deploy">
</a> </a>
<a href="https://www.pivotaltracker.com/n/projects/2487653">
<img src="https://www.pivotaltracker.com/marketing_assets/shared_home/tracker-4679313e699d9ba696371344953de96c81d207d967a43f121d353391c81c9ba7.svg" height="20px" alt="Pivotal Tracker">
</a>
# Open Source Event Manager - [osem.io](https://osem.io) # Open Source Event Manager - [osem.io](https://osem.io)
![OSEM Logo](doc/osem-logo.png) ![OSEM Logo](doc/osem-logo.png)
An event management tool tailored to Free and Open Source Software conferences. An event management tool tailored to Free and Open Source Software conferences.
## Installation ## Installation
Please refer to our [installation guide](INSTALL.md). Please refer to our [installation guide](INSTALL.md).
## How to contribute to OSEM ## How to contribute to OSEM
Please refer to our [contributing guide](CONTRIBUTING.md). Please refer to our [contributing guide](CONTRIBUTING.md).
## Contact ## Contact
GitHub issues are the primary way for communicating about specific proposed changes to this project. If you have other questions feel free to subscribe to the [opensuse-web@opensuse.org](http://lists.opensuse.org/opensuse-web/) mailinglist, all OSEM contributors are on that list! Additionally you can use #osem channel on freenode IRC. GitHub issues are the primary way for communicating about specific proposed changes to this project. If you have other questions feel free to subscribe to the [opensuse-web@opensuse.org](http://lists.opensuse.org/opensuse-web/) mailinglist, all OSEM contributors are on that list! Additionally you can use #osem channel on freenode IRC.

View file

@ -51,7 +51,7 @@ class Conference < ApplicationRecord
has_many :highlighted_events, has_many :highlighted_events,
-> { where(state: :confirmed, is_highlight: true) }, -> { where(state: :confirmed, is_highlight: true) },
through: :program, through: :program,
source: :events source: :events
has_many :event_types, through: :program has_many :event_types, through: :program
has_many :surveys, as: :surveyable, dependent: :destroy do has_many :surveys, as: :surveyable, dependent: :destroy do

View file

@ -3,11 +3,13 @@
/ use smaller cell heights for more compact grids / use smaller cell heights for more compact grids
- cell_height = compact_grid ? 32 : 58 - cell_height = compact_grid ? 32 : 58
- date_event_schedules = @event_schedules.select{ |e| e.start_time.to_date.eql? date } - date_event_schedules = @event_schedules.select{ |e| e.start_time.to_date.eql? date }
/ Dynamically set the column width, but no narrower than 2 (on a BS grid of 12)
- col_size = [2, (12 / @rooms.count).to_i ].max
.row .row
- @rooms.each do |room| - @rooms.each do |room|
- non_schedulable = room.tracks.self_organized.confirmed.any? do |track| - non_schedulable = room.tracks.self_organized.confirmed.any? do |track|
- !track.schedules.include?(@schedule) && (track.start_date..track.end_date).include?(date) - !track.schedules.include?(@schedule) && (track.start_date..track.end_date).include?(date)
.col-md-2.col-xs-6{ class: ('non_schedulable' if non_schedulable) } .col-xs-6{ class: "#{('non_schedulable' if non_schedulable)} col-md-#{col_size}" }
.room-name .room-name
- room_date_event_schedules = date_event_schedules.select{ |e| e.room == room } - room_date_event_schedules = date_event_schedules.select{ |e| e.room == room }
= room.name = room.name

View file

@ -6,14 +6,14 @@
.col-md-12 .col-md-12
.row.row-centered.shuffle-deck .row.row-centered.shuffle-deck
- highlights.each do |event| - highlights.each do |event|
- speaker = event.speakers_ordered.first - event.speakers_ordered.each do |speaker|
.col-md-3.col-sm-3.col-centered.col-top.highlights .col-md-3.col-sm-3.col-centered.col-top.highlights
= link_to(conference_program_proposal_path(conference_id, = link_to(conference_program_proposal_path(conference_id,
event), event),
class: 'thumbnail') do class: 'thumbnail') do
= image_tag speaker.profile_picture(size: 300), = image_tag speaker.profile_picture(size: 300),
class: ['img-responsive', 'img-circle'], class: ['img-responsive', 'img-circle'],
title: speaker.name title: speaker.name
.caption .caption
%h3.text-center= speaker.name %h3.text-center= speaker.name
%h4.text-center= event.title %h4.text-center= event.title

20
info.yml Normal file
View file

@ -0,0 +1,20 @@
project:
name: 'snapcon'
owner: 'cs169'
teamId: '5'
identities:
pivotal:
url: 'https://www.pivotaltracker.com/n/projects/2487653'
heroku:
url: 'https://cs169l-sp2021-snapcon.herokuapp.com'
travis:
url: 'https://travis-ci.com/github/CactusPuppy/snapcon'
codeclimate:
url: 'https://codeclimate.com/github/CactusPuppy/snapcon'
members:
member1:
name: 'Coby'
surname: 'Zhong'
githubUsername: 'CactusPuppy'
pivotalUsername: 'cobyzhong'
herokuEmail: 'coby.zhong@berkeley.edu'