Coder Social home page Coder Social logo

helpyio / helpy Goto Github PK

View Code? Open in Web Editor NEW
2.4K 2.4K 497.0 88.42 MB

Helpy is a modern, open source helpdesk customer support application. Features include knowledgebase, community discussions and support tickets integrated with email.

Home Page: http://helpy.io/?source=ghh

License: MIT License

Ruby 52.01% CSS 0.34% HTML 30.01% JavaScript 8.83% Shell 0.06% Dockerfile 0.12% SCSS 8.61%
forum hacktoberfest helpdesk knowledge-base support ticketing

helpy's People

Contributors

cga1123 avatar dependabot-preview[bot] avatar dependabot-support avatar dhoangk07 avatar felipewmartins avatar gprimola avatar hadifarnoud avatar hin101 avatar kobim avatar lidimayra avatar nh-99 avatar noyainrain avatar olliebennett avatar ozmar-11 avatar pdewit avatar pepjo avatar pyo25 avatar rechdi avatar rynaro avatar scott avatar serg2294 avatar shaktik1989 avatar smaziano avatar swatijadhav avatar tapalilov avatar tcsizmadia avatar tibarra avatar tomatoturnip avatar x6iae avatar ypcs avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

helpy's Issues

Community, topics and different languages problem

Hi there.
Just found about your app, and it looks great!

Now about the problem:
When you looking at the demo community http://demo.helpy.io/ru/community
under other than english language (Russian, for example), you get error if you want to look at some topic.

Error: http://demo.helpy.io/ru/topics/24-hacking-hard-drive-is-not-working-/posts
Success: http://demo.helpy.io/en/topics/24-hacking-hard-drive-is-not-working-/posts

Bug replicates also here:
http://demo.helpy.io/ru/community/3-Questions-and-Answers/topics

But Feature Requests works fine
http://demo.helpy.io/ru/topics/28-synthesizing-program-initial-questions/posts

I couldn't understand where is the problem, but probably it's because I hadn't install helpy yet.

Missing i18n keys

there still seem to be some translated strings that aren't displayed properly.
URL: .../topics/new

ask a question: "subject"
URL: .../users/edit
my profile: "signature"
URL: .../community/.../edit
Allow topic voting
Allow post voting
URL: .../ticket/...
Ticket Number:
Opened On:

use titleize only in english

Hi again,

I just want a let you know that the title case is only used in english (at least, it is not used in spanish or catalan) and looks horrible on other languages. I'm saying that because Helpy does .titleize every title without taking into consideration the locale.

I've removed every .titleize in my helpy fork and manually type the english titles in title case, but I realise this is not the correct way :/

We are getting lots of "Error R14 (Memory quota exceeded)" on Herkou

Hi again,

sometimes we get a 500 error when we try to post a new article, I've check the logs and I found
that Error R14 (Memory quota exceeded) keeps repeating all over again.

I've also found that this error keeps repeating:

Rendered admin/articles.html.erb within layouts/admin (13.3ms)
ActionView::Template::Error (undefined method `gsub' for nil:NilClass):
22: <span id="row-<%= doc.id %>" data-toggle="dropdown" aria-expanded="false" class='btn dropdown-toggle glyphicon glyphicon-align-justify'></span>
23: <ul class="dropdown-menu dropdown-menu-right" role="menu">
24: <li><%= link_to t(:edit, default: 'Edit'), edit_category_doc_path(doc.category.id, doc.id, lang: I18n.locale) %></li>
25: <li><%= link_to t(:delete, default: 'Delete'), doc, data: {confirm: t(:delete_confirm, default: 'Please confirm you really want to DELETE this')}, method: :delete, remote: true, class: 'less-important' %></li>
26: <li><%= link_to t(:view_on_site, default: 'View on Site'), category_doc_path(doc.category, doc), {target: "_blank"} %></li>
27: </ul>
28: </div>
app/models/doc.rb:56:in `to_param'
app/views/admin/articles.html.erb:25:in `block in _app_views_admin_articles_html_erb___2712434889001218502_70267151824380'
app/views/admin/articles.html.erb:12:in `_app_views_admin_articles_html_erb___2712434889001218502_70267151824380'
app/controllers/admin_controller.rb:29:in `articles'

Started GET "/admin/content/5/articles" for 80.64.37.217 at 2016-02-20 10:10:57 +0000
Parameters: {"category_id"=>"5"}
!!! initiate tracker without client id !!!
Processing by AdminController#articles as HTML
User Load (0.8ms) SELECT "users".* FROM "users" WHERE "users"."id" = $1 ORDER BY "users"."id" ASC LIMIT 1 [["id", 1]]
Category Load (0.5ms) SELECT "categories".* FROM "categories" WHERE "categories"."id" = $1 ORDER BY "categories"."id" ASC LIMIT 1 [["id", 5]]
Doc Load (0.6ms) SELECT "docs".* FROM "docs" WHERE "docs"."category_id" = $1 ORDER BY rank ASC, title ASC [["category_id", 5]]
(1.4ms) SELECT COUNT(*) FROM "doc_translations" WHERE "doc_translations"."doc_id" = $1 AND "doc_translations"."locale" = $2 [["doc_id", 7], ["locale", "en"]]
(0.5ms) SELECT COUNT(*) FROM "doc_translations" WHERE "doc_translations"."doc_id" = $1 AND "doc_translations"."locale" = $2 [["doc_id", 7], ["locale", "es"]]
Completed 500 Internal Server Error in 45ms (ActiveRecord: 6.5ms)

I've tried to track down the issue but I've never worked with Ruby nor Ruby on Rails.

So you have any Idea about what may cause the issue?

Configuration via ENV vars

I propose we support configuration of Helpy via environment variables. The settings.yml is great, but it could be a nice idea to have, for example:

parent_site: ENV['SITE_NAME'] || `/parent-redirect.html`

This would allow us to configure most (all?) configuration via environment variables.

It would also make the "Deploy to Heroku" button really trivial to use; we could ask for the required info during deployment.

See also: Heroku "config vars" docs.

Refactor @page_title out of controllers

I see lots of instances in the controller such as:

@page_title = t(:start_discussion, default: "Start a New Discussion")
@title_tag = "#{Settings.site_name}: #{@page_title}"

This should be a view concern; is there any objection to using a quick custom helper like <%= title "Page Title" %> in the view, as described here or else something like the metamagic gem for a more comprehensive solution?

There is a title method in application_helper.rb but it doesn't appear to ever be used.

I do see that the page title is sometimes re-used in the call to add_breadcrumb but I don't think that's worthy of having these instance variables floating around clogging up the controllers. Open to counter-arguments so not refactoring yet :)

How to add support users?

Hi,

I've setup a helpy installation on heroku. I've been able to login with the default admin user and change it to my own user. However, I'm not able to add more users to the support team. How should I do this?

Cheers,
Michael

CSS Suggestions from @BobMoree

Concerning the CSS, I just came across a bug:

.media, .media .body {
overflow: hidden;
}

Because of this default bootstrap styling, you cannot access the edit post drop-down fully.
At least that's what happened when I was in the admin on the ticket detail page.
Just make it: overflow:visible; (this does mess with the lay-out a little, but saves the UX)

There's also something wrong with the nav-collapse for the header nav. I get a
horizontal scroll bar, but I'm not sure exactly yet about the cleanest way to fix this.

I want to use flexbox for the pipeline and the main lay-out (getting the wrappers to stay
in the preferred position, i.e. the footer fixed at the body). This would require something like
the following. The following does seem to have some unintended consequences, which I will
look into.

body {
display: flex;
flex-flow: row wrap;
height: 100vh;
align-items: flex-start;
}

upper-wrapper, #body-wrapper, #footer-wrapper {

width: 100%;

}

footer-wrapper {

align-self: flex-end;

}

Error messsage about missing email in new ticket view is duplicated

Maybe already fixed with #54 but I'm not sure about, because this happens on a different view than #54 is concerning:

If a non logged in user tries to create e new ticket on /de/topics/new and leaves the email fiel blank, the error message below the email input field is printed tiwce instead of once.

See this two picture of a german instance:
selection_004

create tickets from custom email without the need of an third party provider like mandrill

First of all: I like to progress and look and feel of helpy a lot! Great project!

It would be nice if you can configure a custom support email and tickets than are created automatically without the need of an external / third party provider.

This would be easier to setup (as a user) and it is also better for data sensitive environments where the use of third party tools is not permitted.

Missing i18n: Admin Views

Admin Topic:

  • Move forum dropdown: The word "Move"
  • Post Dropdown: Not translated at all
  • Reply to this Topic

Admin creating a new topic:

  • Discussion Management header

Article Edit:

  • "Additional Settings" Header
  • Article Status: Published vs. Draft
  • Save Changes

Admin Communities

  • Admin Communities Header
  • Community TH

API

Hey Scott,

I like what you're doing here and I'd like to help, if you'd like to have me. :)

Do you have any strong feelings towards using Grape[0] for the API?

Some other things I think would be roadmappable... jwt, multiple companies, assigning a group to a user โ€” and having a group permission for forums/kb/tickets. I can talk more about them later (have a meeting to run to here shortly) but just putting it out there.

I was going to create and opensource my own helpdesk solution until I stumbled upon this badboy. My stack was going to be similar, except I would have used activeadmin to crank out the admin back-end stuff.

[0] https://github.com/ruby-grape/grape

Cheers,

add custom fields depending on community/category

It would be nice to add the possibility to configure custom fields for a new ticket depending on the community/category you choose.

So for example "bug report" may have other custom field then "Feature request".

Organization feature request

Hi Scott!
Great work there :)

Is it possible to add the concept of 'organization' to the project?
For example, the project will support multiple organizations where each organization has its own users, admins, posts, topics, users, forums, etc. It is like adding a new level of abstraction to the whole project.

This can be done right now by installing multiple versions of the app (setting up multiple databases accordingly) which is not practical at all. Is there any other 'easier' way to do it?

I think it would be a great feature.

Regards,

Thanos

LDAP integration

This is maybe a long term goal, but it would be nice to have an LDAP connector so you can use it in your existing AD/LDAP infrastructure.

Creating a new ticket as an admin and leaving the email field blank, breaks the open tickets view

Creating as an admin a new ticket on behalf of a customer via the admin interface (/admin/tickets/new) and leaving the Email field blanks breaks the view of "new tickets") (/admin/tickets?locale=de&status=new) because the database field user_id in the tables topics and posts is NULL.

Proposed solutions to fix this

  • make the email field mandatory
  • assign a no e-mail provided user to tickets witout an e-mail entered

Peronally, I'd prefer the second option, because we have sometimes customers without an e-mail and just a phone numer. If this bug get's fixed by implementing the first suggestion, then we would have to enter ad dummy e-mail address by ourself to record such tickets. this would lead in missinformation about users, because every ticket would be assigned to the same dummy email address user.

More context, if needed:

  • When a non logged in user tries to post a new ticket on /de/topics/new without entering data in the email field, the form returns an error and everything works as expected.
  • To fix tickets without an email entered on the database level I had to assign the entry in the topics table with an user_idother than NULL. After doing this, I could view the new tickets view again, but the post isn't viewable too when i try to click it. To fix this, I had to assign once more an user_id to the entry in the posts table of my PostgreSQL database.

Let users read articles in other languages if they are not translated to the user's language

Hello again ๐Ÿ˜„,

First of all, we love using helpy and we love the speed of development.

Having that said, we find that we cannot always translate the knowledge base articles to all languages before making them public. This leads to some languages having less articles. Most of our users are able to fully understand more than one language even though they prefer one or another. We feel that it would be grate to let users browse and search for articles that are not yet translated.

For example, we have a category named "Billing" in there some articles are not translated into catalan yet, but we would love that catalan users can see the links, lets say, in english. When they click the article it would load in english with a banner saying:

This article has not been translated to your language yet. You can read the article in the
following languages: <"spanish", "english">

With a drop down menu to select the available languages.

If we go further it would be possible to offer an automatically translated version apart from the versions in other languages. But this is more than what I would dare to ask for.

This is just an example of how it could work, I'm sure there are other options available, but something to handle untranslated article would be nice.

I hope you can use this as inspiration to improve heply even more ๐Ÿ˜„

API?

Hey mate, was just wondering if you have any plans for an API?

Installation on Ubuntu 14.04

The Installation section is not very friendly unless using Heroku. Any suggestions on how do install it on a Ubuntu machine?

Replace LESS with SCSS

This has a few benefits:

  • We can remove therubyracer and therefore the libv8 dependency, which are very clunky, and arguably overkill!
  • SCSS has become the prevalent CSS extension (vs. LESS).
  • Twitter Bootstrap is actually moving to SCSS for the next version and Bootstrapv3 support is in place already.

My cursory glance indicates that the codebase is using only basic LESS constructs, which means it should be quick to switch to SCSS. Would you consider accepting a PR providing this refactor?

Responsive bug

At one breakpoint I am seeing the discussion fold underneath the users info. This could be a regression because I don't remember seeing it before.

screen shot 2016-03-01 at 9 06 56 am

Your Tickets not aligned

The rows on the your tickets view are not perfectly aligned, the status is not in the vertical middle

New "Companies using Helpy" List

A good way to engage with the community; it would be nice to have a list somewhere of companies using this tool. It would provide a sense of security and community adoption which could help uptake.

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.