GithubHelp home page GithubHelp logo

satrun77 / tinyissue Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mikelbring/tinyissue

50.0 10.0 8.0 6.3 MB

Simple Issue Tracking for Teams

License: MIT License

PHP 87.79% ApacheConf 0.05% JavaScript 3.99% CSS 3.03% HTML 5.15%
issue-tracker laravel php bug-tracker laravel-application

tinyissue's Introduction

Tiny Issue v2.9.0 - for Laravel 5.1+

Build Status SensioLabsInsight Scrutinizer Code Quality Code Coverage License GitHub issues Minimum PHP Version Latest Version Gitter

Installation

  1. Download and install composer
  2. Install dependencies composer install
  3. Create a database. It can be any of the databases supported by Laravel 5.
  4. Execute Tiny Issue install command php artisan tinyissue:install
  5. Note: make sure that all of the Tiny Issues files/folders are behind the public root directory of your site. Except for the ones under public directory.
  6. Setup Laravel cronjob see. https://laravel.com/docs/5.1/scheduling

Enjoy!

Upgrade steps (since version 2.0.0)

  1. Pull latest changes from the GitHub repository
  2. Execute Laravel migration command php artisan migrate

How to contribute

We welcome and appreciate all contributions. The develop branch is the branch you should base all pull requests and development off of. The master branch is tagged releases only.

Code changes must adhere the PSR-2 standards.

Main Developers:

Version 2.0.0 and above:

Version 1.3.1 and below:

tinyissue's People

Contributors

abhid avatar ajira86 avatar ali1234 avatar bertiful avatar bystac avatar cr7pt0gr4ph7 avatar ddreier avatar deplorableword avatar mikelbring avatar nodiscc avatar oliverpool avatar qtheuret avatar rainje avatar satrun77 avatar sylvainemery avatar thebiggerguy avatar woolfg avatar zacharyhoover 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tinyissue's Issues

History is often too much.

While the history is certainly important I'd like a more restrictive approach.
I'm just redesigning this a little bit to make it simpler and more easy to read, but also I'd like to point to the attached image:

screenshot_22

While this probably happens when playing around with the kanban board, the question is: Can we prevent this somehow? Can we check the last event? Better yet: Check if there's anything else happening between close/reopen or reopen/closed and if nothing else has happened simply return to the last reopen or closed state, simply adjusting the timestamp.

Ex: 1. CLOSED -> 2. REOPEN -> 3. CLOSED (Simply revert to 1.)

Error when creating a new project

I get the ominous 'Whoops, looks like something went wrong.' message when creatig a new project.

I entered:

Name : 'TinyIssue'
Visibility: 'Public'
Assign users: 'Bug Tracker'

Kanban board
Columns: Status:Working

Archived projects

I tried to find out how I can archive a project. Would be nice if it worked.
Any idea how to do this?

Editing tickets should be more consistent

I think when I'm creating/editing a ticket should always be displayed with seperated fields.
(depending of the user role of course)

A dropdown for the status-tag (allow only one status at a time - this is also necesssary for kanban)
A second field which might allow to combine statuses, but I also think that there should be only one type tag per ticket. The same goes for the resolution field. The easier the better.

The storage goes probably into the same database field. But I think that's not a bad thing at all.

Translations

Also something I could help right away. I suppose there are language files somewhere. I'd like to contribute a german translation. (And now that I come to think of it. I also offer to provide a german project website)

Make database path relative

I'd like to be able to use
DB_DATABASE=storage/tinyissue.sqlite
instead of
DB_DATABASE=D:\CMS\tinyissue\storage\tinyissue.sqlite

btw. TinyIssue runs perfectly on windows with just PHP installed:
PHP -S 127.0.0.1 -t tinyissue\public

I think this should definetely be mentioned in the install documentation.

Ticket by mail

Although this is probably not an easy task I suggest this anyway:

  1. Option to create a ticket tag for each user. (Simple button: 'Create/Renew ticket tag')
    Ticket tags are simply a random number with at least 10 digits. the longer the better.
    2 Users should be able to send a mail to a predefined mail adress (Configurable from within the tinyissue administration) using their 'ticket tag' in the beginning of the subject: like this

'388576636: There's an error when creating a user'
and some text in the mail.

  1. New mails are simply polled from the mail account when logging in as 'manager' or administrator'

Must be able to delete a ticket

It has to be possible to delete a ticket

Managers should be able to do this, but also the creator of a ticket as long as he can change the ticket status and as long as there are no comments and there's no user assigned to the ticket.

Date format in global settings

I suggest replacing the manual date format field (and a reference to PHP)
(which is really not very userfriendly :) with a simple dropdown box and
a list of the most common date/time formats selectable as examples in the
dropdown.

Simple 'user' should not be able to assign a ticket nor set it's status.

Simple 'user' should not be able to assign a ticket nor set it's status.

He should however have a seperate field to state the tickets 'type'. I don't think the current Tag system is usable that way. Having simple dropdowns per ticket with a 'resolution', a 'Current Status', and a ticket types like 'Feature', 'Bug', 'Severe Bug', 'Idea' etc. would be much more helpful.

Also it would mean nice filtering options in list and kanban view.

Screen Issues

The 'Users', 'Administration' and 'Logout' button is invisible on smaller screens, the same goes for editing of project properties. Maybe you could integrate these menu items into the smaller screens drop down.

Bug in tags management

I think there's a bug in the tags management.
If I want to add a tag to the status then no matter if I select the status group there's always a new tag group created, but not a new group value.

Installation problem

Hey there :)

I tried to install the project but after the setup and the initial login,
the only response I get is:

"Whoops, looks like something went wrong."

Can you help me here?

Assigning tags to kanban view

I suggest that when configuring kanban view we should only be able to select among the status tags. This probably seems be the most common usage.

For this it would be much easier to use a list and check boxes in front:
Example:

[ X ] Open
[ X ] Construction
[ ] Testing
[ ] Released
[ ] Closed

Rearranging of menu items

It would make more sense for me to put the 'user-management' left beside 'projects'

The "Settings" should be renamed to simply "User" and placed behind a user icon to the right of the "Welcome, User" message.

"Administration" (now right menu) should be placed left besides "projects".

And the dropdown menu (as it is now) should at least contain the missing "logout"

Menu responsiveness has to be optimized.

Assigning tickets

When creating a new issue it should not be possible to assign tickets to simple 'users'. They can't do anything with it.

User management

It should be possible to deactivate users and prevent them from logging in.
Status: [ Active | Blocked | Restricted | Inactive ]
Field invisible for admin.

Active: (Standard)
Blocked: Too many log in attempts (blocked for xx minutes)
Restricted: (Login behaves like user-role)
Inactive: (Cannot login a the moment)

Possible bug in tags

I can click on the tag group name and edit this - which let's me do some real nonsense here.
Doesn't make any sense to me and should be completely removed. :)

Edit your own ticket according to the ticket status

You should be able to edit your own ticket as long as you can also theoretically change the ticket status. Otherwise you should only be able to post comments.

So I would simply tie the option to edit a ticket to the users right for changing a ticket's status.

Readability and font enhancements

I suggest switching the font to Droid Sans. Look extremely professional and readability is much better especially on mobiles and with small font sizes.

Also I'd prefer fontawesome over the current single icons.

Beside that - views should be trimmed for mobiles with slightly bigger font sizes.
If you're eyes are not perfect you'd have a hard time reading anything.

How do public projects work

Shouldn't it be possible to skip the login and just view the public projects? Or am I interpreting something wrong here? What exactly are public projects?

Project name

I hereby humbly suggest to rename the project to 'TINY ISSUE BOARD'.
And this project really deserves a proper website.

Allow sorting of tags in tag management.

The tags should then be shown in the selected order.

screenshot_4

In this case the correct order would be
NEW - FRIDGE (which I don't alwaysw show in kanban) - OPEN - DISCUSS - WORKING - READY - RELEASED - CLOSED - CANNED (also actually not shown, but I wanted to show my status tags)

btw. When will a ticket vanish from kanban? (Since the status open is always added)

Running tiny issue in iFrame

I read that this should work, but there has to be an exception configured somewhere in the laravel config.

For example: iOS provides an option to put a weblink directly as an icon on your screen. So by clicking the icon you'll get a fullscreen browser with an app like appearance, and no URL line or buttons. So it feels like more like an app and you the effective screen size is bigger due to the missing browser controls.

If I try to run tiny issue as a fullscreen app - the problem seems that laravel constantly reloads complete pages - therefore any link inside tiny issue tries to open the next page back in the standard browser.

Now I've read that one possible solution to this is to simply run the app inside an iFrame and load this iframe_index.php instead of the index.php. This should effectively prevent opening the browser with each click, always staying inside the iFrame.

Is it possible to allow the app to run inside a simple iFrame like this:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Page Title</title>

    <style type="text/css" media="screen">

        body,
        html {
            width: 100%;
            height: 100%;
            overflow: hidden;
        }

        * {
            padding: 0;
            margin: 0;
        }

        iframe {
            width: 100%;
            height: 100%;
            overflow: hidden;
            border: none;
        }
    </style>

</head>
<body>

    <iframe src="index.php" scrolling="no"></iframe>

</body>
</html>

PROJECTS: Managing projects

Project should have som additional fields:

  • A freely definable "reference" field for things like: "Name of client, Reference to his project or whatever"
  • A HTTP Link field (Clicking on the projectname in the dashboard should jump to the site.)

Kanban and tickets

This is more a personal wish, but I saw a kanban board with user icons on the right side of the ticket.

unbenannt

When working in a team like me, this is not only a nice touch - it's also really helpful.

Problem when updating user settings

If you update the user settings without touching the password fields, the password is saved as null. So you cannot login anymore.

I think you should first check if password fields are set at all.

btw. Is it possible to show a reset password link in the login form?

Tag access and visibilty enhancement

Better Tag handling:

  1. a user role dropdown:

    User-Level needed to set and view this tag: [ Admin | Manager | Developer | User ]
    Message Level for each Tag: Minimum User Role to receive a message when tag has been set.

I think users should only be able to use tags according to this user-level. This gives us the possibility to let the administrator assign type tags like "Internal" or "Information", or prevent a developer from tagging an issue as "resolved". or letting a user set 'bug','feature','idea' but not 'knowledge'.

btw. This would also provide a simple way of having a tiny knowledgebase. Only thing needed would be a new main menu item which shows tickets of certain ticket types.

  • A new global option should give the user the ability to select the ticket types to show under knowledge.

Example: 'Basic Knowledge', 'Advanced Knowledge' (both would be ticket types)
As of now there's a build in status closed. There should be an additional build in status canned. All tickets with the status 'canned' should also be available under Knowledge.

Then show all those tickets as usual - project independend - searchable - and without all the status-changes in history - only the ticket and it's comments.

  1. An additional private | public Switch per ticket.

    Visibilty: [private|public]

  • Users with 'User' and 'Developer' shouldn't see those tickets at all.

Error when creating issue from within project

If you're on the dashboard and you click [+ new Issue] then everything works fine,
but if you've selected an project and you're inside the project list, then [+ new issue] throws and error:

screenshot_11

Just a question when updating

In the past I once hit a point where I was stuck with an error when starting, after I updated the files.
But although I didn't overwrite the database I never found out what happened and had to reinstall.

What is the proper way to update to a new release?
What can I overwrite and what not?

Moving items in kanban

In my own version moving items within the kanban board does not change the status. After reload it's like nothing has been moved.

Is this just my version or is this also in the current develop version?

Deploying tinyissue

Which folders do I need to deploy a production version to the server?
(I don't want to compile anything there, just run tinyissue)

I suppose /tests/ is not needed?
And node_modules?

Laravel question

when making changes to public/css/tiny.css... how to I create the public/build/ccs files?

Multiple databases / Installation process

I'd like to suggest a slightly different approach to the current installation/database.

Could we make it possible to automatically let the user confirm the creation a new database, or select the 'root' database on the first start when a new base URL is detected?

When called from bugsystem.com, tinyissue should simply create and point to the root database
Let's assume the default database filename is default.issues.

But when called from a subdomain like mybugs.bugsystem.com, tinyissue would ask to
choose either between creation of mybugs.issues or selecting the default database default.issues - if I'd just want to reach my default bugsystem via a different subdomain.

Also I think creation of a default admin user and password is better than the whole commandline installation process. Being able to simply upload and run tinyissue with only a tiny ;) installation page would be more fitting.

Dashboard Information

There's currently a lot of information there about what changed in tickets. But I would prefer if all the 'reassigned' and 'assigned' information is something I can view OPTIONALLY when I'm viewing the ticket details.

Instead having a distinct list of all the recently changed tickets, showing the time of change and the current status would be really helpful.

Also I imagine a section showing all the unassigned tickets would be great.

Bug when moving cards in kanban

I think I can reproduce the problem now.

If you move cards in the kanban board into one column.... and then move them again into another,
then it seems only the first move is remembered, but tinyissue looses track of subsequent moves.

Quote option

In my opinion setting a quote in seconds is more than strange. I'd remove this completely.

COMMON: Globally available search box

I just realized that we have no search yet, when I tried to search :)

So I think we should be able to serch for: Title, inside text, ticket number (we should create one in the future) and even inside the comments.

Prevent users to delete tag 'Open', 'Closed'.

But renaming those should be possible.
On the other hand: why don't we let the user completely decide what to show in the kanban board.
For me showing closed is a problem, since I don't want to see 300 tickets in the closed column.

Creating new issues

  1. What do you think about relocating the '+ New Issue' button to the right side of the top header, and left of the menu button when it appears?
  2. Probably the thing that bothers me most is that I cannot edit an issue. At least I have no idea how.

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.