customization

HI,

We might be planning to use the self hosting version for a project, but need to customize two or three things.
Therefore I wanted to kindly ask if some of the invoiceninja staff could answer the following questions.

Tasks to achvieve:

  1. We want to add one field in the "create invoice" page in each item row. The field should not be part of the invoice itself, but contain a calculation help for each item. This help would be a field that updates the unit costs and vice versa to achieve some sort of a net/gross price calculator. If I add 100 in the unit costs field it would show for example 120 due to 20% tax rate. If I add 119 in the help field it would update the unit costs field to 99,17 due to 20% tax rate. At the end still the unit costs prize field is the only one being taken into consaideration for invoice creation.
  2. <li>There will be only one tax rate. But we would like to add some code that sets tax rate to none if the clients address is not our country/country id/or none.</li>
    <li>Create clients page should automatically contain some more fields that are already in the page but without hitting show more button.</li>
    <li>Hide some navigation items like Tasks and Expenses.</ol>
    

    Just some very short answers are more than enough.

  • Is it possible to achieve at all?
  • Is it possible to achieve at all without totally hacking the code in many many files?
  • How much workload would those topics for an average developer approximately create?
  • Is there a documentation regarding the files that need to be touched?
Thank you very much for your help. Kind regards

It may be easier to set a custom invoice item field on /settings/invoice_settings rather than manually change the UI code, you’d then just need to hide it on the PDF.

Note: please make sure to follow our license

https://github.com/invoiceninja/invoiceninja/blob/master/LICENSE

If you have any questions let us know.

Thanks. I will have a look into the knowledebase. It seems like I have to install it and start digging trough it. :frowning: . How many is many?! The demo is not a pro Version so I can’t set and see everything. I havent thought that this will cause so many files to change. Just a handful a bit.
Regarding the license. Internal use …no selling or redistribution at all.
It just does not fulfill our needs right now.
Is that covered without breaking your license?

Our source code on GitHub and the self host zip include all pro and enterprise features.

If you’d like to sell or redistribute without our branding please email us at contact@invoiceninja.com.

thanks. Yes, I was referring to the demo you host. no selling or redistribution at all.
But if I do I will contact you. I would rather like to see these features in your app by default in future versions :slight_smile: Thanks a lot.

short question. as an example…
resources/views/invoices/edit.blade.php
Is this file compiled/built somehow or is that the core file to change if I want to achieve this:

Create clients page should automatically contain some more fields that are already in the page but without hitting show more button.

And is the /public/css/customCss.css meant to be used for customization which will then be build into built.css?
Thanks

The PHP is not complied but in production views may be cached, you can clear them with php artisan view:clear

The JavaScript files are compiled, we’re currently using Grunt but are switching to Gulp\Elixir

ok, thanks.

Hi,
I took a long break from evaluating and started again. I want to change some JS files.
I have installed invoiceninja from the zip file and its running.
And I have installed nodejs, bower, gulp, npm.

But running gulp or gulp --production does NOTHING except from stating that no scripts exist.
I must be doing something wrong and am new to nodejs/npm. Bare with me.
But in the package.json are no “scripts” sections.
Also not on git.
Where is the app.js? Where is documentroot and applicationroot?
Running gulp results in:
npm ERR! node v6.9.1
npm ERR! npm v3.10.8

npm ERR! missing script: gulp

Thanks for your help.

You may need to run npm install and bower install

What do you see when you run gulp -v

thanks you for gettiing back that quickly. I really appreciate it.

gulp -v result is
3.10.8
npm -v result is
3.10.8
bower -v result is
3.10.8
nodejs is 6.9.1

running npm install result is:
npm ERR! missing script: npm

same for bower install:
npm ERR! missing script: bower

can you explain what npm install and bower install are for?
they are already installed.
Do i have to install it twice?
why is there no “scripts” section in package.json?
is that the reason?
thank you very much.

Are you running the commands from the root folder of the project?

Thanks. that got me one step further. due to a “bug” a symbolic link was missing in /usr/bin/.
running npm install from the root folder of the project went fine.
but
bower install
bower invalid-meta for:/var/www/vhosts/domain/rootfolder/bower.json
bower invalid-meta The “name” is recommended to be lowercase, can contain digits, dots, dashes
bower ENOGIT git is not installed or not in the PATH

Should i change in bower.json
“name”: “hillelcoren/invoice-ninja”,
to
“name”: “hillelcoren-invoice-ninja”,
?
or just ignore it?
do i have to download the git directory from your git and upload it?
if so. anything else too?
thanks

It looks like you either need to install git or add it to your path.

installed git. bower install went fine.
still did not compile with gulp.
another symlink later…
and now it works.
so now i can start :slight_smile:

thanks a lot.