GithubHelp home page GithubHelp logo

timetracker's People

Contributors

bb avatar blacktwin avatar blocksebastian avatar dbjrdev avatar dependabot[bot] avatar hawiak avatar imgbotapp avatar lukelr avatar mtierltd avatar puthre avatar reinerj avatar supersandro2000 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

Watchers

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

timetracker's Issues

Update failed

Hello,
i have Nextcloud 17.0.1, PostgreSQL 9.6 and NGINX on my Server.
I did try to Update Timetracker and it fails with error:

Doctrine\DBAL\Exception\NotNullConstraintViolationException: An exception occurred while executing 'ALTER TABLE oc_timetracker_work_interval ADD "details" VARCHAR(1024) NOT NULL':

SQLSTATE[23502]: Not null violation: 7 ERROR:  column "details" contains null values
Update failed

Dashboard and Report show only one project

The Dashboard and report show a false summary of time tracked, e.g. there is only one project and customer shown in the dashboard, although several were tracked. Same for the report, only when filtered for specific customers/projects, the correct summed time is shown.
Running on NC 15.0.9 and TT 0.0.29.

App doesn't follow Nextcloud design guidelines

There are some recommended design guidelines for nextcloud apps that I think this app would greatly benefit from following.

An easy first step would be replacing the tables in tags, clients and projects with content lists. I think this should get rid of tabulator.js entirely.

I'm happy to try hack away at this over the next few months when I get some spare time.

Counter does not start (time tracker 0.0.24 / Nextcloud 15.0.7) - Error Message popup

image

same error message in following browsers (latest versions)

  • Safari
  • Firefox
  • Google Chrome

open time tracker and the first message without doing anything ist the following
Error Message: ..error getting work items ...

:path: /index.php/apps/timetracker/ajax/work-intervals
Failed to load resource: the server responded with a status of 500 ()

App Doesn't Pass Integrity Check

The following error message is displayed in the "Security & setup warnings" section of settings:

Technical information
=====================
The following list covers which files have failed the integrity check. Please read
the previous linked documentation to learn more about the errors and how to fix
them.

Results
=======
- timetracker
	- FILE_MISSING
		- build/artifacts/appstore/timetracker.tar.gz

Raw output
==========
Array
(
    [timetracker] => Array
        (
            [FILE_MISSING] => Array
                (
                    [build/artifacts/appstore/timetracker.tar.gz] => Array
                        (
                            [expected] => e3b6e994bacea5de17848ed974244d9880e85113846233e0a53de30cc1aeff26908f7a53eba05f88545b5878716db118132601a0db7033a75caec373a22675b3
                            [current] => 
                        )

                )

        )

)

check for correct path including / at the end

I ran into an error that might be rare but really annoying: on my phone, the app looked fine, but the startTimer function (green arrow button) did not work at all.
From debugging, I realized timer.js was calling a wrong ajax URL: /index.php/apps/ajax/start-timer instead of /index.php/apps/timetracker/ajax/start-timer, something which did not happen on my desktop.
At the end I realized that when I had pasted the URL of the timetracker app into my browser URL bar, I simply had lost the slash on the end of the URL – I had opened /index.php/apps/timetracker instead of /index.php/apps/timetracker/, which makes the call $.post( "ajax/start-timer" remove the timetracker part of the URL.

Possible Solution 1: It would work using the baseUrl variable that is created some lines before in timer.js plus a slash, but I read in the debugger that it's deprecated?
Possible Solution 2: I realized some other apps redirect their URL when opening, usually adding / at the end, maybe this app or Nextcloud itself should also do this?

PS: During debugging, I noticed that if ('Error' in response){ creates an error itself in this case, because response then is an HTML response and not an object. Maybe something like if (response.constructor == Object) { should be added?

Created timeline does not appear until reload

Hi,

I'm encountering a small issue on v0.0.34.

Here is the steps to reproduce issue :

  1. Go to screen apps/timetracker/timelines
  2. Click on Export Timeline CSV

Expected Behavior :

The table Exported Timeline statuses refreshes to show the new Timeline.

Actual Behavior :

You have to manually reload the page to refresh the table.

Thanks a lot for your good work 👍

Installation fails with composer version 2

inside composer.json the attribute "name" has to be changed, otherwise a composer-check fails and the installation-process will stop:

make
gmake composer
gmake[1]: Entering directory '/var/www/nextcloud/apps/timetracker'
composer install --prefer-dist


  [Composer\Json\JsonValidationException]
  "./composer.json" does not match the expected JSON schema:
   - name : Does not match the regex pattern ^[a-z0-9]([_.-]?[a-z0-9]+)*/[a-z0-9](([_.]?|-{0,2})[a-z0-9]+)*$


gmake[1]: *** [Makefile:80: composer] Error 1
gmake[1]: Leaving directory '/var/www/nextcloud/apps/timetracker'
make: *** [Makefile:59: build] Error 2

After I changed the name to "time-tracker/v1" all worked fine.

Btw: the command "composer install --prefer-dist" needs to be changed to "composer install --no-dev" when using composer v2.

Dashboard still shows only one project and client

Hi!

I think there is still a bug hidden somewhere:

  • Dashboard: Still only shows one client and one project.
  • Report:
    • #: one row per day, so that seems correct
    • Name: activities listed also seem to be correct
    • users: currently using it alone, so only me and no way to check whether someone "is missing"
    • project: only one project is shown
    • client: several (and correct) clients are shown

I hope this helps.

PS: How do I reopen an issue?

Originally posted by @ftastisch in #10 (comment)

Custom fields

Could you please add the possibility to define custom fields of entry. A custom field could have different types such as numeric or text fields, a drop-down list. It would be great if the field could be validated by regular expressions.
This would be useful when working with trackers (e.g. GitHub) - you can add an issue's ID.

Feature request: Setting time goals in reports?

Hey there, I love the app for tracking working hours for various projects. There is only one thing I miss: to be able to set a "time goal" i.e. 30 hours per week for project A, ten hours for project B and to see the plus / minus from the (weekly) reports, so I can see at a glance which needs attention or if I can go home ;)

Where is the setting for the start of the Timer list?

Currently the Timer list scrolls back for about 37 days, i.e. today Oct. 29th to Sept. 22nd.

Is there some setting to change that to scroll back for 60 days?
For example, I need to change project for Timer entries as of Sept. 9th because they are wrong.

Wishlist: Improve quick activity switch

Currently, clicking Play on an existing entry ends the current activity and creates a new activity with the same name as the clicked one. It would be nice, in addition to the name, to copy the category and tag as well.

details not escaped properly when saving to database

So I saved the below block as my "details" for one of my work intervals, so I wouldn't forget it later, but now it won't load properly. The new details for this work item stops at the opening single quote, and the title of the work item has become "start);$dtz = $wi->start+$tz_offset;..." so its breaking the js/html coming out.

Made these changes to timetracker/lib/Controller/AjaxController.php:
                                                                                         
                                                                                         
 $tz_offset = timezone_offset_get(timezone_open('Australia/Melbourne'), new \DateTime());
         foreach ($l as $wi){                                                            
             //$dt = date("d/m/Y", $wi->start);                                          
             $dtz = $wi->start+$tz_offset;                                               
             $dt = date("D, j M", $dtz);                                                 

I mean, it's PHP code, and it saved it faithfully, but it doesn't like reading it back out (using PostgreSQL). To fix it I just deleted it, but you should be able to paste that into details to replicate the issue.

Overview for earlier time entries (start & end time)

Is it possible to add the functionality that you can see start and end date of an earlier time entry? This is acutally only visible in "timer" tab and in timer tab not all earlier entries are visible. In "reports" is it not possible to see the start and end date of an time entry. This is also not visible if you export the time entries into csv or json.

I need to say thanks for your great app! It is very useful to get an overview of my working times!! Thanks a lot!!

Tag releases

To keep track of changes between different versions it would be great if you could tag releases.

REST API

Could you please add REST API.

Delete timelines

Hello,

is there a way to delete Timelines ?

Anyway, thanks for the good work !
Bye

slash in title leads to error

Steps to reproduce

  • insert "test/123" into title field
  • press start

expected behaviour

time tracker started with "test/123" as title

actual behaviour

tries to connect to "/apps/timetracker/ajax/start-timer/test/123"
alert shown with content "error", "Connection to server lost" message in the upper right corner

possible solution

implement escaping

[Feature Request] Connect Tasks with Time Tracker

Hello,
nice app for recording working time for projects. Thank you for sharing it with the community.

I think it would be interesting for all users to be able to connect already created tasks to the Time Tracker app. So we could easily track the time it took us to complete a particular task, without having to copy the name or description of the task. Maybe it could be automatically added to the Time Tracker app as soon as a task is marked as done. Or even when the percentage under "completed" has increased.

This would certainly be a very good help for many users.

typing tag name should filter existing tags dropdown

when starting to type the name of a tag for an existing time tracker entry it just underlines the typed string in the dropdown entries (and makes the same api call for each character typed)

using Time Tracker 0.0.42 on NC 18.0.3

TimeTracker 0.0.4 cannot edit task discription

NC 17.0.2 on Buster
Since TimeTracker update to 0.0.4 I can no longer edit details of tasks.
Or rather, I can edit and add details, but they dont get saved.

nc.log fills with

  settype(): Invalid type at /var/www/nextcloud/lib/public/AppFramework/Db/Entity.php#110

Download error in NC 16 CURL/TSL

Hello.

I'm getting the same issues as described in #13. This happens only when downloading the Time Tracker. All other apps are downloading fine. I was trying to investigate the issues using manual curl.

curl -v https://mail.nerd.hu/timetracker.tar.gz

This get the same error as in NC:

 TLSv1.3 (OUT), TLS handshake, Client hello (1):
* TLSv1.3 (IN), TLS handshake, Server hello (2):
* TLSv1.3 (OUT), TLS alert, protocol version (582):
* error:1425F102:SSL routines:ssl_choose_client_version:unsupported protocol
* Closing connection 0

I have tried to force curl to use lower TLS version 1.2, 1.1, 1.0, nothing worked for me:

curl -v --tls-max 1.2 https://mail.nerd.hu/timetracker.tar.gz

Only thing that passed without issues is using plain HTTP:

curl -v http://mail.nerd.hu/timetracker.tar.gz --output timetracker.tar.gz

It seems to be an issue with TSL 1.3 (curl autodetect version) on the mail.nerd.hu server although seems to working fine in browser. Hope this helps in any way.

Dashboard View: All Time is summed up under one client

Hello,

i get following problem:

I got several clients, all with some time spend on their projects,
the dashboard sums them up under one client in the outer circle, it is the client with the most time spend...

Nextcloud 16
Timetracker 0.0.34
Ubutnu 18.04 LTS
Nginx updated
PHP-fpm

Delete projects

Hello,

is there any way to delete a project?
I can edit a project, but I'm unable to delete it.

Am I missing something?

Dark mode is unclear

Thanks for the great app! Started using it instead of Toggl.

I recently switched to the new Nextcloud dark mode. The time tracker is a bit difficult to use with the dark mode, could do with some inverting of colours.

Selection_227

Feature request: Include exact start and stop times in CSV export, not only total duration

Hello,
thank you for making this helpful app. It does almost everything I need to document the time and duration I have worked. The only further thing I need is fields for the start and stop dates/times in the exported CSV file. It could be a string in ISO 8601 format in order to include time zone information, e.g. 2007-08-31T16:47+00:00 for UTC.
Could you maybe add this feature, or an optional setting to include this information, with a specified time zone or region? Thanks!

PS: So far, Time Tracker works fine for me in Nextcloud 20.

Support for Nextcloud 19?

Nextcloud 19 was released a few days ago, please publish a new release supporting it to the App Store.

Time tracker doesn't set correct timezone when retrieving work intervals

Heya, there seems to be a bug in the "day-name" date when it loads the work intervals from the server.

I live in the UTC+11 timezone, and it records the individual times faithfully, but the day-name isn't converted to my local time before being set in the outgoing json.

I think I found the cause and have a fix I've been using but I don't know how to make a generic solution since the user's timezone doesn't seem to be recorded in the database, unless I've missed it.

lib/Controller/AjaxController.php, from this:

public function workIntervals() {  
	$i = 0;  
	$tryIntervals=[90,180,365,365*5];  
	do {  
		$l = $this->workIntervalMapper->findLatestDays($this->userId,$tryIntervals[$i],0);  
		$i++;  
	} while ((count($l) == 0) && ($i < count($tryIntervals)));  
	$days = [];  
	foreach ($l as $wi){  
		//$dt = date("d/m/Y", $wi->start);  
		$dt = date("D, j M", $wi->start);  

To this:

public function workIntervals() {
        $i = 0;
        $tryIntervals=[90,180,365,365*5];
        do {
            $l = $this->workIntervalMapper->findLatestDays($this->userId,$tryIntervals[$i],0);
            $i++;
        } while ((count($l) == 0) && ($i < count($tryIntervals)));
        $days = [];
        $tz_offset = timezone_offset_get(timezone_open('Australia/Melbourne'), new \DateTime());
        foreach ($l as $wi){
            //$dt = date("d/m/Y", $wi->start);
            $dtz = $wi->start+$tz_offset;
            $dt = date("D, j M", $dtz);

It's possible to get the system timezone from the php.ini I guess, but it might be better to just save the offset with the work interval and add it when it comes out.

Export the precise time

Hey,
would it possible to add an export of the precise time? for my clients it is important to see at which time of day it worked.
Thank you

Support for Nextcloud 18?

Nextcloud 18 was released a few weeks ago, please publish a new release supporting it to the App Store.

Unable to install

I'm on 17.0.1. Using Hetzner's re-labeled NC, the Storage Share.

When trying to install Time tracker I get "A problem occurred during the request. Cannot install."

I've had no problems installing the other 30 to 40 apps. Please, help.

Allow to pick colors for projects

I think it would be a nice feature to be able to pick a color for a project and then show a colored dot or line next to it in the timer / project selection etc.

The dashboard looks nice but I almoast nerver care about the last 30days… but either about last month or 'unbilled hours'

Maybe also tags could benefit from colors but then the design and color combinations are getting a bit more complicated…

When time tracker is running, if you refresh the page and stop the timer, it records it as no description

I'm not sure if this is just unique to my instance (using chrome) or a common issue, but this is how to replicate:

  1. In timer, fill in something for "what have you done?" box, e.g. "read emails". Click play to start it.
  2. Notice the new timer in the list has the title you gave it (e.g. "read emails"), then refresh browser.
  3. The timer box now says "what have you done?" again, but the timer is still running and the timer in the list still says the right title ("read emails")
  4. Click stop, the page will refresh, and you will now have a timer in the list with the correct timings, but the title will be "No Description" instead of e.g. "read emails".

You can click the timer and fix the name, but it would be better if the "what have you done?" box was populated from the last timer started, if it is still running.

Downloading Timelines does not work for me

I just get an empty window with empty html source, no error in browser console, no download file.

Tried with Vivaldi 2.11 and Firefox 73 (Ubuntu 19.10) and Chrome (Windows 10).

Nextcloud 17.0.3

Feature request : Import cvs

Being able to download projects as csv/json is great.
I 'd be willing to make a financial contribution/donation to be able to import the created file into another instance.
Thank you for creating TimeTracker
Where are project saved?In Database presumably, If so, what tables are being exported? What would it take to import projects into a running instance? Thanks in advance for considering.

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.