Code Monkey home page Code Monkey logo

Comments (3)

totten avatar totten commented on August 30, 2024

On second thought... instead of pasting the backlog into the Mattermost bot, we could add a page (e.g. civicrm/timetrack/import?reset=1) with a big TEXTAREA. Then paste the backlog of !pi statements in there. Then the patch could be entirely written as part of the extension (without needing access to the bot...). That might also make it easier to test locally (during development)...

from coop.symbiotic.timetrack.

mlutfy avatar mlutfy commented on August 30, 2024

This kind of ties into a lot of "batch data entry" requirements that we often encounter. I'd like to develop something more generic.

I would like to do this with advimport, which started out mostly as an importer for Excel files, but has a batch data updater that I find is evolving nicely, and could be used for batch data entry.

I'm mostly pondering how to make the UX quick, without having to click through multiple wizard steps to enter data.

Ex:

  • User copy-pastes data into a text field
  • Advimport timetrack helper parses the data, directly imports it
  • If there are errors, the user can go to the screen for reviewing errors and fix/update values as necessary.

Advimport is normally a 3 step wizard, which would be annoying for timetracking data entry, but we can use URL presets to make the first step "copy-paste data", second screen is the field mapper, which would be empty, but we can show some stats to confirm what we are importing, ex: "you are about to punch X hours for the period of 2019-02-01 to 2019-02-05", then run the import (runs the queue), to then go to the final import status page (and from there, if there are errors, you can view/fix them).

(In the second wizard step, I would avoid displaying the data, because there can be a lot of data, and it's not directly actionable unless we go to the batch-data-updated screen, which would be another annoying wizard step, although it could be a wizard checkbox at some point, i.e. "Load data, but do not import yet").

from coop.symbiotic.timetrack.

totten avatar totten commented on August 30, 2024

Ah, I haven't used AdvImporter, but agree that it sounds like a reasonable thing to adapt. Will try to take a look at it the next time I get my head here.

FWIW... I didn't see your last comment until a bit too late. I binged and wrote a PR which defines (1) an API entity Timetrackpunchlist (actions for preview and import) and (2) an AJAX UI which just connects a textarea to the new API. It's not as a general, but I do like the live-editing/fixing experience. Seems worthwhile to see what you think of it...

from coop.symbiotic.timetrack.

Related Issues (6)

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.