Giter Club home page Giter Club logo

wp-checkin's Introduction

wp-checkin

A check-in helper for WordCamp Tokyo 2019

Install

You need PHP gRPC extension since wp-checkin uses google/cloud-firestore. Install it using this instruction.

sudo pecl install grpc

Clone wp-checkin repository then install composer and npm.

git clone [email protected]:wct2019/wp-checkin.git
cd wp-checkin
composer install
npm install
  • Pulbic direcotry is public.

Acknowledgement

wp-checkin uses the following libraries. Thanks!

  • Slim
  • React
  • FontAwesome
  • Twitter Bootstrap

Development

1. Place authentication file in root

To connect Firebase, you will need an authentication file. Place wordcamptokyo2019app-firebase-key.json file and place it in the root of your repository.

2. Start a local server

  • npm start to start building static files.
  • npm run watch to start monitoring.
  • composer start to start a local server at localhost:8080. This will connect with live database so handle with care.

3. Fixing Issues

  1. Folk this repository.
  2. Create a branch (e.g. bugfix/what-you-fixed) and send a pull request to master.

Live Site

  • Our live site is 2019.tokyo.wp-checkin.com.
  • The site has Basic access authentication.
  • Commit to master branch will be automatically deployed to the live site.

License

GPL 3.0 or later.


インストール

PHPのgRPC拡張必須です。google/cloud-firestoreを使っているためです。インストール方法はこちらをご覧ください。

sudo pecl install grpc

このリポジトリをクローンし、 composer および npm をインストールしてください。

git clone [email protected]:wct2019/wp-checkin.git
cd wp-checkin
composer install
npm install
  • public 以下が公開用ディレクトリになります。

Acknowledgement

以下のライブラリを利用しています。ありがとうございます。

  • Slim
  • React
  • FontAwesome
  • Twitter Bootstrap

開発

1. 認証ファイルを用意する

Firebaseとの連携のため、認証ファイルが必要です。 wordcamptokyo2019app-firebase-key.json というファイルを入手し、リポジトリのルートに入れてください。

2. ローカルサーバーをスタートする

  • npm start で静的ファイルのビルドが開始されます。
  • npm run watch で静的ファイルの監視がスタートします。
  • composer startlocalhost:8080 にローカルサーバーが立ち上がります。これは本番データベースと接続するので、動作には注意してください。

3. 修正を送る

  1. このリポジトリをフォークしてください。
  2. bugfix/what-you-fixed といった形で bugfix/修正した内容 のブランチを切り、masterブランチに対してプルリクエストを送ってください。

本番サイト

  • 2019.tokyo.wp-checkin.com です。
  • Basic認証がかかっています。
  • masterブランチにコミットすると、勝手にデプロイされます。

ライセンス

GPL 3.0またはそれ以降。

wp-checkin's People

Contributors

fumikito avatar ippey avatar naokomc avatar

Stargazers

Mixali avatar Ikuko KAI avatar Dreb Bits avatar Chiaki.K avatar  avatar harada ikumi avatar megane9988 avatar mimi avatar

Watchers

Neustradamus avatar mimi avatar James Cloos avatar Mimoto, Toshimichi avatar Chiaki.K avatar Shusei Toda avatar

wp-checkin's Issues

チケット詳細ページのURLを決定する

@ryu-compin 当日の受付フローは次の通りになります。

  1. アプリでメールアドレス承認済みの方はQRコードを表示する
  2. 受付スタッフがスマホでそれを読み取る
  3. スタッフのスマホがチェックインサイトに移動し、チケット詳細を表示(サイトはBasic認証あり)
  4. チケット詳細ページでステータスをチェックインに変更する

現在のところ、 https://wp-checkin.com/tikect/10 がチケットページのURLになっています。数字の 10 は投稿IDです。

これで問題ないかどうか、ご確認ください。また、QRコードが生成するURLが上記になっている必要があります。

QRコードのURLで+が消える

クエリパラメータにメールアドレスを含めているが、プラス記号(+)を使ったエイリアスメール(特にgmail)で登録する人の場合、+が半角スペースとして解釈されてしまう。

[email protected] というメールアドレスで登録してたんですが、QRコード読み取ってでてくるのが、確か example [email protected] というアドレスになるんですよね。
手動で + を追加すれば、情報出てくるんですが。

Props @naokomc

mobile 検索結果が画面からはみ出る

モバイルで、トップの検索画面にメールアドレスを入れて検索結果を表示すると、下記の様に表示され全体が見えません。

iOS の画像

機種: iPhone X
OS: iOS 13.1.2
ブラウザ: Safari

チェックインデータを突合する

  • 最新のWordCampサイトチケットデータをダウンロード
  • Firebaseからデータを取得し、チェックイン日時をCSVに書き込む
  • CSVの個人情報を消す(氏名・メアド)

CSVデータの整合性確認

インポートされたCSVデータでu20というプロパティがあるのですが、これは「20歳以上」というフィールドではないですか? u20だと、20歳以下という意味になってしまいます。

WordCampTokyo2019App_–Database–_Firebase_console-2

チェックイン項目の確認

チェックインすると、データの checkedin というフィールドに YYYY-MM-DD HH:ii:SS という形式の日付データが入ります。
アプリで利用する場合はこのフィールドを使ってください。

CSVを調査する

WordCampサイトからエクスポートできるユーザーデータのCSVを調査する

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.