mtierltd / timetracker Goto Github PK
View Code? Open in Web Editor NEWLicense: GNU Affero General Public License v3.0
License: GNU Affero General Public License v3.0
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
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.
Hello,
impossible connection from nextcloud to download and install timetracker.
cURL error 28: Connection timed out after 30000 milliseconds (see http://curl.haxx.se/libcurl/c/libcurl-errors.html)
and thank you for your answers
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.
same error message in following browsers (latest versions)
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 ()
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] =>
)
)
)
)
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?
Hi,
I'm encountering a small issue on v0.0.34.
Here is the steps to reproduce issue :
apps/timetracker/timelines
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 👍
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.
Hi!
I think there is still a bug hidden somewhere:
I hope this helps.
PS: How do I reopen an issue?
Originally posted by @ftastisch in #10 (comment)
Please add the possibility to share Projects and Clients with other users and groups as in other Nextcloud applications (e.g. Deck).
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.
Please add the possibility to manually add time entries instead of using the timer.
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 ;)
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.
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.
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.
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!!
wrong tab.. this is for TimeManager 🙄
To keep track of changes between different versions it would be great if you could tag releases.
Could you please add REST API.
Hello,
is there a way to delete Timelines ?
Anyway, thanks for the good work !
Bye
Timer, speed when saving or changing. Is there a way to speed up data access?
Users should be able to send timelines to any email address as a csv email attachment.
an interface to mobile phone Android would be great
Steps to reproduce
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
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.
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
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 |
---|
When trying to download and enable get following error:
cURL error 35: error:1425F102:SSL routines:ssl_choose_client_version:unsupported protocol (see http://curl.haxx.se/libcurl/c/libcurl-errors.html)
Error.log at https://pastebin.com/Q5DjVJDy
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.
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
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?
When do we get a Update for Nextcloud 19?
Thanks in advance
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.
Nextcloud 19 was released a few days ago, please publish a new release supporting it to the App Store.
Hey,
i get an error when the text i tap into the field "what have you done" is getting to long.
Could u change the length? Or at least specific the error output?
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.
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
Nextcloud 18 was released a few weeks ago, please publish a new release supporting it to the App Store.
Hello,
can you publish a new release to the Nextcloud App Store supporting Nextcloud 17?
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.
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…
I'm not sure if this is just unique to my instance (using chrome) or a common issue, but this is how to replicate:
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.
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
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.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.