cfp-app, 用于管理会议CFP的Rails 应用程序

分享于 

16分钟阅读

GitHub

  繁體 雙語
CFP App for GCRC '15
  • 源代码名称:cfp-app
  • 源代码网址:http://www.github.com/rubycentral/cfp-app
  • cfp-app源代码文档
  • cfp-app源代码下载
  • Git URL:
    git://www.github.com/rubycentral/cfp-app.git
    Git Clone代码到本地:
    git clone http://www.github.com/rubycentral/cfp-app
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/rubycentral/cfp-app
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
    cfp应用

    这是一个 Ruby on Rails 应用程序,允许你管理你的提议( CFP )。程序和日程的会议。 它是由 ruby 中心编写的,用于运行RailsConf和RubyConf的CFPs。

    for没有为你的会议提供 public 面板,尽管我们有一个与应用程序数据集成的项目。

    在高级级别,CFP应用程序允许演讲者提交和管理他们对你的事件的建议。 组织者可以创建一组评审者,他们盲目地审查和。 组织者可以选择要接受的谈话,包括提议的列表。 最后组织者可以创建一个计划和 slot 确认谈话。 下面将详细介绍CFP应用how如何使用CFP应用程序的特性和工作流的详细介绍。'

    启动

    确保你的环境中安装了 ruby 2.3和 Postgres。 这是 Rails 4.2应用程序,使用bundler来安装所有必需的Gems。 我们还假设你对 Rails 应用程序和安装和部署的方式非常熟悉。 如果不是这样,那么你将要参考文档,将会在下面的指令中引用任何缺陷。

    运行 bin/setup 脚本为开发安装 gem 依赖项和安装数据库。

    bin/setup

    这将创建 .env,一个带有种子数据的开发数据库。 Seed将让管理员使用 an@admin.com的电子邮件来启动。 在Omniauth中有一个特殊的开发方法,你可以使用它来测试它。

    注意:你可能需要安装 qt/qmake 来使Capybara正常工作;使用 Homebrew,你可以运行 brew install qt

    启动服务器:

    bin/rails server

    环境变量

    Omniauth 被设置为使用 Twitter 和Github在生产中登录。 你要把你自己的钥匙和秘密放在。 其他 环境变量 将包括你的postgres用户和 Rails"secret_token"。

    
    TIMEZONE (defaults to Pacific if not set)
    
    
    POSTGRES_USER (dev/test only)
    
    
    MAIL_HOST (production only - from host)
    
    
    MAIL_FROM (production only - from address)
    
    
    SECRET_TOKEN (production only)
    
    
    GITHUB_KEY
    
    
    GITHUB_SECRET
    
    
    TWITTER_KEY
    
    
    TWITTER_SECRET
    
    
    
    

    在Heroku上的部署

    这个应用程序是用Heroku的部署堆栈编写的。 你可以使用下面的按钮轻松部署应用程序,或者在任何地方部署它,假定你可以使用postgres数据库和一个SMTP监听器运行 ruby 2.3.0和 Rails 4.2.5.

    Heroku堆栈将使用免费的SendGrid Starter和Heroku插件。

    Deploy to Heroku

    部署到tmodel时,你可以能需要使用 Twitter 或者GitHub登录,然后运行 heroku run console 以更新第一个人对象:

    p = Person.first
    p.admin = truep.save

    确实要确保拉回的人记录确实是新创建的用户,并且是应该获得管理员权限的用户 !

    如何使用CFP应用程序

    创建你的事件

    你必须作为管理员登录才能创建事件。 就像上面在部署部分所提到的,你希望登录到应用程序或者直接在控制台中工作。 查找你的个人记录或者创建一个新记录。 我建议你通过登录创建管理员,然后通过控制台查找记录,因为人员记录使用服务进行身份验证。 找到记录后,将 true 分配给管理属性,例如:

    p = Person.first
    p.admin = truep.save

    一个注意,在开发模式中,你有一个名为'开发者'的特殊测试登录。 通过这个,你可以通过输入 NAME 和电子邮件来登录和种子记录。 在本地测试东西非常方便。

    一个登录你应该看到你的用户的NAME,在导航栏右上角有一个下拉箭头。 在下拉列表中点击'管理事件'链接。 事件页面将显示系统上的所有事件,最初应该是空白的。 单击'添加事件'以创建事件。 理想情况下,你可以填写所有这些信息只是 NAME 和联系电子邮件要求。

    管理你的事件

    一旦完成,你就应该登陆活动页面的组织者。 这是管理你的事件的中心。 我将简要介绍你可以在这里做的事情。

    你可能希望将其他组织者和审阅者添加到事件。 这是在页面的底部,名为'参加者'的部分。 单击'添加/邀请新参与者'以添加它们。 你将使用他们的电子邮件地址来添加他们。 系统将添加任何现有用户,如果他们的电子邮件地址 MATCHES。 你可以完全管理哪些人可以访问该部分中的事件。

    下一步是通过'编辑指南'按钮起草你的会议指南。 指南是在提交建议之前演讲者看到的指令。 在他们提交谈话之前,你可以给他们任何信息和指示。 你可以在设置 public 指南页之后预览指南。

    '编辑标记'将保留可以供扬声器使用的标记列表( 建议标记) 和审阅者( 检查标签)。 在'编辑标签'按钮的上方是两个标记组的列表。 演讲者和审阅者只能从这些选项中标记他们的建议。

    ""编辑事件允许你更改创建事件时最初设置的任何详细信息。 如果不能在事件上设置开始日期和结束日期,则可以在'cfp日期'下完成。 此外,你还希望在'事件日期'下指明会议的日期。 创建计划需要这些日期。 最后,'状态'的状态( 如打开或者关闭) 在下列出。 它必须处于开放状态才能接受建议。 如果需要删除事件,可以在编辑页上进行。

    "编辑扬声器通知"允许你在接受waitlisted或者被拒绝的电子邮件内容时使用它们。 应用确实有默认值,但我们建议你编写自己的电子邮件正文。 在右边有一个标记图例,用于制作电子邮件,如包括建议标题和确认链接。

    导航

    导航栏有几个部分。 在最左边,我们有'cfpapp'链接,它将你带到一个公共的面对事件页面。 在那里你将看到站点上活动的所有活动。

    右边是'朗读'下拉列表。 所有用户都得到这个,从那里你可以导航到你的建议。 这个页面有指向你提交的每个活动的链接,以及你可以能收到的任何扬声器邀请。 我们将在'提交建议'下触摸演讲者邀请。

    如果你有访问者访问权限,你将看到右侧的'审阅'下拉列表。 你有权访问的每个事件都将显示在那里,这将带你到建议页面。 我们将在reviewing审查建议'中详细讨论'

    如果你有组织者访问,你将看到一个'组织'下拉列表将为你提供每个事件的三个链接: 建议。程序和计划。我们将在组织者部分中介绍每一。

    '通知'dropdown将显示你还没有阅读的应用程序通知中的任何一个计数。 单击下拉菜单将显示这些通知的列表,如'marty Haught已经评论过'。 你还拥有'标记为已读'和'查看所有通知'选项。

    我们在最右边简单地触摸了用户的下拉菜单。 这对所有用户都可见。 从那里,他们可以注销或者访问他们的个人资料。 他们的概要是如何编辑 NAME。电子邮件或者 bio,允许他们连接到各种服务,比如Github或者 Twitter。 如果你是管理员,你也会有个人链接。 这是你管理所有人记录的地方。

    提交建议

    提交talk的主要方法是访问 public 指南页面,然后单击'提交建议'以启动。 这确实需要打开事件的CFP。

    提案的核心是标题和摘要。 这两个将显示在你的程序和日程中。 它们是必需字段,并且限制它们可以使用多长时间。 详细信息字段仅供审阅者/组织者使用,是允许演讲者显示'窗帘后面的是什么'的大纲或者它的他解释。 这个音调是为了让演讲者向你销售你为什么这个话题应该在你的事件中。

    在右栏上有一个部分,用于选择他们感觉适合的标签,假设你的事件使用标签。 接下来,它将显示 NAME。电子邮件和bio的。 每个建议都可以修改,以防演讲者想要更好地改变特定主题的声音。 NAME。电子邮件和生物文件隐藏在评审者中,并且只能在组织者的后期看到。

    最后在页面的右下角有一个预览。 假设一切正常,然后点击右下角的'提交建议'。

    你可以转到'朗读'导航下拉列表中的'我的建议'链接,回到你的建议。 你可以看到它的状态,这应该是'已经提交',直到你退出谈话或者组织者决定你的话。

    返回你的建议页面,你将看到'编辑'和'删除建议'或者'退出'按钮。 如果你需要进行编辑,直到组织者决定你的谈话是否已经进入或者出现,你可以自由进行。 一旦被接受或者 waitlisted,你不能编辑提议。 此时,你直接与组织者联系以编辑它。 我们这样做是为了在没有组织者的意识和权限的情况下,。

    提案页面上的另一个特性是邀请其他扬声器的能力。 如果你的谈话有多个演讲者,你现在可以通过他们的电子邮件邀请他们到你的谈话。 他们会收到一封邮件,告诉你如何接受你的邀请。 这很重要,所以他们的信息将与谈话相关。

    另外,你可以在你的谈话中给评论者。 虽然你的评论是由审阅者提供的,但你仍将以匿名身份标识,尽管来自审阅者的任何答复都指出。

    你可以看到你的谈话有多少评论,但没有详细说明它接收到的分级。 最后,你可以看到你的会话状态是否已经从'已经提交'。

    审阅建议

    作为审阅者或者组织者,你将使用'审阅'下拉列表来访问你的事件的建议页。 它是通过并评估提交的所有提案的中心。 它上面有一个统计部分,它将向你展示你已经评估了多少个建议,以及提交了多少。 下面是有多少未分级建议的数量。

    可以根据需要筛选和排序建议列表。 这是非常重要的,以便你可以关注某些标记或者看看你没有评定的最旧的建议。 列表显示了以下字段:

    得分:所有评分的平均得分: 评估建议评级的方式: 会话接收到的总次数有多少? 这也是查看建议建议标签的链接: 与建议审阅者标记关联的标记标记: 审阅者添加评论的标记: public 注释的总数,包括提交的审阅者和演讲者: 在以下位置更新的原始提交日期和时间: 上次演讲者更新建议的时间

    排序顺序是粘滞的,你可以使用shift键按多个列进行排序。 使用'重置排序顺序'按钮清除这里输出。

    通过单击建议标题,你可以查看建议详细信息页面。 在这里你可以看到标题,摘要,细节和球场的谈话。 如果有任何评论,你可以查看以及自己做评论。 最右边的审查栏只对其他审阅者和组织者可见。 你将不能看到任何它的他评分或者内部评论,直到你评分了谈话。 这是为了让审阅者不受别人在他们的评论中所说的。 你可以在任何时候设置或者修改审阅标记,这一次只对其他审阅者可见。

    分级比例为 1至 5. 我的演讲是一个不错的话题,3是一个不错的谈话和 certainly,4是一个好的谈话,是一个好的谈话,是最好的谈话,是对事件的理想交谈。 我们也希望每次通话都至少获得三个评分,preferrably更多。 一旦你评分了这个话题,你会看到一个平均评分和它的他评分收到的评价。

    最后,如果你评分了内容,可以在下面查看内部评论。 这些评论只对于评论人员来说是一个可以见的地方,可以帮助确定对话的合适性。

    注意,在这里时更新评论标记或者在任何注释框中发布注释将刷新页面并丢失它的他注释框。 只有分级是一个ajax调用,不会干扰页面的其余部分。

    将会发生一件事情,你会得到通知,显示在这里点之后更新了什么会话。 你只收到你已经查看的会谈通知。 我们在参与者部分中添加了一个标志,默认为 true,当评论留下评论时,评论人员会收到。 你不会收到有关更新的电子邮件,但通知导航列表中显示更新的通知。

    组织职责

    ...Coming 很快。

    定制和贡献

    你很可能希望定制或者更改CFP应用程序的工作方式。 只要你遵守许可以,就可以随时随地进行 fork 和修改。 如果你觉得自己的任何定制都适合于回复项目,请查看我们的CONTRIBUTING.md 文件以了解如何使用。

    贡献者

    CFP应用最初是由本斯科菲尔德编写的。 Marty Haught接管了项目并领导了 RailsConf 2014的开发。 下面是参与项目的其他项目,而它是 private 项目。

    • Garriott
    • 安迪。Kappen
    • Timothy
    • Ryan
    • Scott
    • Mei

    它是在 2014年05月 中开源的,并移动到了。 请查看自从开源开始以来所提供的参与者图。


    MAN  rails  Conference  
    相关文章