Giter Site home page Giter Site logo

tobybatch / chromekimaibridge Goto Github PK

View Code? Open in Web Editor NEW
12.0 4.0 1.0 1.99 MB

Allows time to logged from ChromePlugin tickets into a Kimai instance

License: MIT License

HTML 39.99% JavaScript 18.02% PHP 41.90% CSS 0.09%
kimai2 kimai-plugin kimai-bundle

chromekimaibridge's Introduction

ChromePlugin to Kimai Bridge

This plugin allows time to logged from ChromePlugin tickets into a Kimai instance.

Installation

The plugin

Clone the repo into your plugins folder of a Kimai installation (it must be in a folder named ChromePluginBundle:

cd /path/to/kimai
cd var/plugins
clone https://github.com/tobybatch/ChromeKimaiBridge.git ChromePluginBundle

Reload the plugins:

cd /path/to/kimai
./bin/console kimai:reload

The chrome extension

Right now it's not in the chrome store, it will be, but for now there is a packed crx file in the var/plugins/ChromePluginBundle/Resources/ folder. Because the extension needs to access your Kimai instance it has to have the hosts: https://*/* permissions which google (quite correctly) finds very permissive and this holds up getting it into the store.

Get it here.

Set up

This will add a new icon to your chrome extensions. The first time you click it you will launch the options page. Here you must add a URL pointing to the web root of you Kimai server. Save the options and then you can use the extension.

Linking to Trello/Github

Time can be logged directly against a project from a Github issue/project or Trello board.

  1. Navigate to the Github issue/project or Trello board, and open any card.
  2. Activate the extension, the white arrow in a green circle.
  3. The pop up will say it cannot find a project associated with this board.
  4. Copy the ID, e.g. tobybatch_ChromeKimaiBridge
  5. Log into Kimai as an admin and navigate to the project you want to associate with this project.
  6. Edit the project, you will find a field call External Board ID
  7. Enter the board id and save the project.
  8. Return to the github issue/trello card and activate the extension.
  9. Log time and view logged history.

The external board id accepts multiple board references in a comma seperated list.

chromekimaibridge's People

Contributors

dependabot[bot] avatar tobybatch avatar

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar

Forkers

dawesi

chromekimaibridge's Issues

ChromeKimaiBridge for Nextcloud Deck

Hello @tobybatch

I think it would be a great idea to expand your plugin for Nextcloud Deck as well. Now Nextcloud Deck is finally released and very popular. We started to use it successfully in our work and are very happy with it.

This can be added as follows

https://mydomain.com/index.php/apps/deck/#/board/1/card/140

where

index.php/apps/deck - nextcloud deck indicator (analogy hostname == "trello.com")
board/1 - project ID
card/140 - card ID

It would also be an interesting feature to add a meta field with a link to a card.

What do you think of that?

Thanks!

Internationalizing chrome plugin

Hello @tobybatch

At the moment, the plugin only supports English, but it would be nice to have support for multiple languages use i18n. The language might change depending on the browser's language setting. What do you think about this improvement?

Thanks!

unexpected TimesheetService

Tried to install, getting this error:
php.CRITICAL: Uncaught Error: syntax error, unexpected 'TimesheetService' (T_STRING), expecting function (T_FUNCTION) or const (T_CONST) {"exception":"[object] (ParseError(code: 0): syntax error, unexpected 'TimesheetService' (T_STRING), expecting function (T_FUNCTION) or const (T_CONST) at /var/www/kimai2/var/plugins/ChromePluginBundle/Controller/ChromeController.php:44)"} []

it looks like my build is using
symfony/monolog-bundle v3.5.0

ChromePlugin Card ID question

Hello @tobybatch

I was looking for a plugin for Kimai and your plugin is amazing. I tried it with Trello and realized that there was a little problem. I expected the meta field External Card/Project ID to be filled after I picked the card and filled the time, however it turned out to be wrong. I found that another ChromePlugin Card ID meta field was installed instead. Is this behavior correct? Or should I replace ChromePlugin Card ID with External Card/Project ID in ChromeController?

Also, I don't understand how you plan to use the External Card/Project ID, because knowing the carriage ID I still can't make a quick transition to card. Perhaps it would be more useful to keep a link to the card?

Thank you!

Error while reloading after cloning plugin

In ChromeController.php line 612:
                                                                                                                                                               
  Error: Class KimaiPlugin\ChromePluginBundle\Controller\ChromeController contains 2 abstract methods and must therefore be declared abstract or implement th  
  e remaining methods (App\Controller\TimesheetAbstractController::getDuplicateForm, App\Controller\TimesheetAbstractController::getCreateForm)                
                                                                                                                                                             

External Card/project link and goto button

Hello @tobybatch

Currently, ChromeKimaiBridge only supports External Card/Project ID.

image

However, if I want to quickly find out which project or card the record was created from, it requires too many actions to search.
I think it would be great to have another text field that would save the full link, as well as a button quick open on this link (opening a new tab in the browser).

image

What do you think about this improvement? Thanks!

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.