Andreas Granig
332ad0ca3a
MT#4949 Use pbx-1 suffix for callflows.
12 years ago
Andreas Granig
e2ccdf3442
MT#4955 Introduce customer default sound sets.
...
If a new contract sound set is marked as contract_default, use this
for every existing subscriber in contract_sound_set prefs if no
other set is specified yet.
If a new subscriber is created and such a sound set exists, also
use this one.
This prevents having to go over each single subscriber to assign
the contract_sound_set preference.
12 years ago
Andreas Granig
36f6756079
MT#4955 Use cseq_method for subscriber captures.
12 years ago
Andreas Granig
097af29cb2
MT#4229 Still log the error causing a 500.
12 years ago
Andreas Granig
d2dfbeab1c
MT#4949 Use pbx in call flow graph.
12 years ago
Gerhard Jungwirth
3279897a1b
MT#4707 log IP on failed login
12 years ago
Andreas Granig
9c69626385
MT#4543 Also set cloud_pbx_base_cli pref for admin
...
Otherwise rewrite rules where this is used will not work, so admin
can't dial only the extension.
12 years ago
Lars Dieckow
fbb03e359a
avoid db fetch for authenticated request
12 years ago
Andrew Pogrebennyk
76bf4a12c3
MT#4863 Grant access to Customer Settings for administrative subscribers.
12 years ago
Andreas Granig
7c0b691a53
MT#4017 Fix subscriber->device mapping in config.
...
When fetching the field device config, only select the correct
subscribers for the line ranges which actually belong to the
field device.
12 years ago
Gerhard Jungwirth
10cd46219c
MT#4369 Disable Timestamp search on Callflows
...
this created "min(timestamp) LIKE %search%" which is not valid SQL
12 years ago
Andreas Granig
10ddf43147
MT#4787 Send browser to PBX device when syncing
12 years ago
Andreas Granig
2ee40a3a6c
MT#3917 Show datetime in local timezone for DT.
12 years ago
Andreas Granig
57bc4218e7
MT#4685 Export latest firmware version for model.
...
This can be used in config scripts to check whether to do an upgrade.
12 years ago
Gerhard Jungwirth
938798943c
MT#4667 validate contact on contract create
...
On one hand, dont allow (peering,reseller)-contracts to
be created with a wrong contact (which has a reseller id).
On the other hand, dont preselect wrong contacts in the first
place (from created_objects)
12 years ago
Andreas Granig
d69d7bb8fb
MT#4685 Don't tie firmware to profile.
...
That way, you can upload multiple firmwares, and ngcp-panel
will serve the next or latest one, depending on the currently
running one.
12 years ago
Gerhard Jungwirth
f16c1cfb5e
MT#4129 fix operator precedence
...
Check for diverging resellers when creating a customer
fails because == is evaluated before //
12 years ago
Gerhard Jungwirth
77698535e6
MT#4129 prohibit customer with diverging resellers
...
that is, a customer where billing_profile has one
reseller and contact has a different one
12 years ago
Gerhard Jungwirth
fa3c979fda
MT#4659 preserve product, when not set by form
12 years ago
Andreas Granig
58b496065e
MT#4657 Make ac an empty string if undef.
12 years ago
Andreas Granig
96edceda6d
MT#4655 Show reseller name in device mgm.
12 years ago
Lars Dieckow
e215422b89
MT#4609 extend checks when editing the own admin user to prevent locking oneself out
12 years ago
Andreas Granig
8ad33c7f35
MT#4607 Replace UNION by simple OR
...
MySQL 5.5 handles OR properly in terms of indices, no need for a UNION,
which is completely broken with DBIx::Class anyways, killing the performance.
12 years ago
Andreas Granig
0feebeb8a5
MT#4533 Don't transcode MOH files for PBX.
12 years ago
Andreas Granig
a6f3117595
MT#3977 Set proper config.url parameter.
12 years ago
Andreas Granig
0f99b45042
MT#3977 Fix syntax error.
12 years ago
Andreas Granig
816b1d0755
MT#3977 Also set config.url for autoprov config.
12 years ago
Gerhard Jungwirth
ec34c1d1dd
MT#3855 Fix empty contract tab on Reseller details
...
When the reseller has a wrong contract assigned to
him, this contract is not shown because it has already
been filtered out in the Contract controller. In favor
of usability now show it anyway.
Also only present correct contracts on edit/create
resellers in the first place.
See (Mantis:3855#c25797)
12 years ago
Gerhard Jungwirth
e184e00f86
MT#4289 contracts: filter by product and separate terminate
...
Only show reseller and peering contracts in the
Contracts controller. Also remove the generic create
in favour of the peering/create and reseller/create.
Customer controller now has its own terminate routine to be really
independent from the Contract controller.
Now we can expose the Contract controller in the menu.
12 years ago
Gerhard Jungwirth
35c82cca7f
MT#4289 move /contract/customer/edit to /customer/edit
...
So finally, there is no customer-specific stuff left in the Contract controller.
12 years ago
Gerhard Jungwirth
49037844bc
MT#4289 separate customer-/contract- create and ajax_reseller_filter
...
Mantis: 4289#c25035
12 years ago
Gerhard Jungwirth
21482c00ec
MT#4289 separate customer/ajax and contract/ajax
...
This is the first step towards separating the
tight coupling of the Customer and Contract Controllers.
Mantis: 4289#c25035
12 years ago
Lars Dieckow
940d1cfde7
MT#4229 custom Internal server error page
...
Move error_page to notfound_page. error_page is now for internal server errors.
Introduce logging option log_crash_state, enabled by default. Crash states are
written out compressed and encoded log-file-friendly, these are useful for
debugging but take a couple dozen kilobytes of disk space each.
12 years ago
Andreas Granig
3cbe4db077
MT#3997 Transform via_route to loose-route URI
12 years ago
Andreas Granig
1fb6381ea6
MT#3995 Use pre-selected options for ext sbc.
...
Don't allow free-form values for via_route but use pre-configured
values from config.yml.
12 years ago
Andreas Granig
b9d03df0bd
MT#3971 Implement limitation of subscribers.
...
Enforce max_subscribers field and allow editing a customer.
12 years ago
Andreas Granig
dce2f45785
MT#3971 Add max_subscribers field.
...
This only happens when creating customers for now.
12 years ago
Andreas Granig
5266545dd5
MT#3977 Use plain port for linksys provisioning.
...
Linksys phones need a Cisco-signed server cert, so we have to
stay at plain http for now.
12 years ago
Andreas Granig
7ea0814bba
MT#3977 Fix ACL for fetching keys of dev profile.
...
Also subscriberadmin must be able to access this part for proper
line/key selection.
12 years ago
Andreas Granig
3030a62a73
MT#4413 Remove debugging messages.
...
This even breaks domain creation for PBX.
12 years ago
Andreas Granig
9f03bf4eb4
MT#4007 Implement auto attendant mgm for subs.
12 years ago
Andreas Granig
59e55c243d
MT#3925 Move contracts/ to Role, tighten contacts/
...
Use Role for Contracts controller.
Check reseller_id in Contacts controller for creating contact.
12 years ago
Andreas Granig
9ef4961e97
MT#3925 Migrate more common methods into Role.
12 years ago
Andreas Granig
8683e52cdd
MT#3925 Move POST validation methods into Role.
12 years ago
Andreas Granig
a7ae65ca82
MT#3925 Use forms for validation only; other fixes
...
Don't use JE for data validation, as it adds lots of processing overhead.
Properly use Formhandler for data validation.
Catch DB errors properly.
Write basic auth test.
12 years ago
Andreas Granig
b5fca434e8
MT#3925 Make API work with LWP::UserAgent.
...
First, properly "use" the Deflate module to import the Encoder stuff.
Second, disable Transport Encoding middleware entirely, as with "chunked"
responses sent by the API an LWP::UserAgent client is unable to properly
decode the response, resulting in broken binary answers.
12 years ago
Andreas Granig
5068bd0f17
MT#3925 Style and reorganize API templates
12 years ago
Andrew Pogrebennyk
cc9fe6ed5e
MT#3997 MT#5193 Fix build_via_routes with only one external sbc.
12 years ago
Andreas Granig
5098850d20
MT#3925 Add documentation framework for API.
...
Render api/ content dynamically via api/root/ templates, which allows
for splitting up collection descriptions.
Update jquery-ui to include more components like accordions.
12 years ago
Andreas Granig
a5cbfd298a
MT#3927 Invalidate session in API for non-API user
12 years ago
Gerhard Jungwirth
f6f4e33c6b
MT#3917 do not alter datetime objects from schema
...
this is now correctly handled in the schema (it gives us localtime, so
we do not have to do anything)
12 years ago
Gerhard Jungwirth
aeb79765d9
MT#5147 Proper DateTime deflation in Forms
12 years ago
Lars Dieckow
e5a42d9306
wip
12 years ago
Andreas Granig
b909a980c1
MT#5173 Very basic support for polycom prov
...
Bootstrap Params: 447=2,445=[% server.uri %],264=2
Bootstrap Method: POST
Bootstrap URI: http://[% client.ip %]/form-submit
12 years ago
Gerhard Jungwirth
2ca352cd34
MT#4129 Validate update customer with wrong resellers
...
The reseller of the old billing_profile was tested instead of the new one
(see 4129#c29575)
12 years ago
Gerhard Jungwirth
0c41788b79
MT#4693 show contract balance in euros instead of cents
12 years ago
Gerhard Jungwirth
9b0cc338f6
MT#4767 Show missing registered devices
...
on a non-multidomain installation, dont check for domain
in customer details - subscribers - registered devices
12 years ago
Andreas Granig
e21d14da46
MT#5103 Add date picker to call distribution graph
12 years ago
Andreas Granig
b8dc8a48ce
MT#5131 Make CSV fee parsing more tight.
12 years ago
Andreas Granig
272caf532e
MT#4565 Fix read-only permissions.
...
Properly deny write ops for read-only admins and resellers.
12 years ago
Andreas Granig
dd39baee6e
MT#5103 Add basic call distribution graph.
...
Still needs date picker to limit range.
12 years ago
Gerhard Jungwirth
d4de46b0b9
MT#4967 Show primary number in subscriber list
...
The wrong relation was used here. Discovered during testing for ticket
MT#4967.
12 years ago
Andreas Granig
80dcf44f7f
MT#4235 Implement static Jitsi provisioning.
...
Should be reworked in a next step to use the dynamic configuration
management, but currently you'd need a PBX device for that, so keep
it static for now.
12 years ago
Andreas Granig
7110f4339d
MT#5009 Use proper alias number sub-elements.
12 years ago
Andreas Granig
d23de0e45f
MT#5009 Fix syntax error.
12 years ago
Andreas Granig
f575753c17
MT#5009 Properly reuse alias numbers also.
...
Previously, we assumed they were already deleted in billing.voip_numbers,
which they're not (anymore).
12 years ago
Andreas Granig
64f937b057
MT#5009 Properly free voip_numbers on termination.
...
Don't delete voip_numbers (which was forgotten if the status
got set to terminated anyways), rather than free them by
undef'ing the subscriber_id and reseller_id.
12 years ago
Andreas Granig
18b15f6009
MT#5009 Properly re-use free numbers.
...
Don't try to insert a number into billing.voip_numbers directly,
rather than using the update_subscriber_numbers helper, which
handles the re-using of free numbers.
12 years ago
Andreas Granig
9c3eb72481
MT#4955 Only allow one ss, set dom-pref np-display
...
If a sound set is contract default and you create another default one,
the old gets non-default.
Properly handle contract default setting also when editing sound sets.
And while at it, set np-display as outbound-from-display-name dom-pref
when creating a PBX domain.
12 years ago
Gerhard Jungwirth
8f98ef00fd
MT#4967 Let admin/reseller always change subscriber numbers
...
When editing a subscriber as admin, you possibly got a stripped version of the
form, where you cannot change e164 or alias_numbers anymore.
12 years ago
Gerhard Jungwirth
d238758abc
MT#4967 Refactor Subscriber Forms
...
Move Field e164 (Compound) and alias_number (Repeatable) to own
Files because of multiple occurence.
12 years ago
Andreas Granig
cccab05961
MT#4971 Fix follow symlink sp-SELF in statistics.
12 years ago
Andreas Granig
c63310741b
MT#4949 Use pbx-1 suffix for callflows.
12 years ago
Andreas Granig
f9e96aad30
MT#4955 Introduce customer default sound sets.
...
If a new contract sound set is marked as contract_default, use this
for every existing subscriber in contract_sound_set prefs if no
other set is specified yet.
If a new subscriber is created and such a sound set exists, also
use this one.
This prevents having to go over each single subscriber to assign
the contract_sound_set preference.
12 years ago
Andreas Granig
224ca10e8d
MT#4955 Use cseq_method for subscriber captures.
12 years ago
Andreas Granig
c3efa5663a
MT#4229 Still log the error causing a 500.
12 years ago
Andreas Granig
b914ad7d99
MT#4949 Use pbx in call flow graph.
12 years ago
Gerhard Jungwirth
204fb95b3a
MT#4707 log IP on failed login
12 years ago
Andreas Granig
76b3e315bb
MT#4543 Also set cloud_pbx_base_cli pref for admin
...
Otherwise rewrite rules where this is used will not work, so admin
can't dial only the extension.
12 years ago
Lars Dieckow
03dee5ff9c
avoid db fetch for authenticated request
12 years ago
Andrew Pogrebennyk
abc0853521
MT#4863 Grant access to Customer Settings for administrative subscribers.
12 years ago
Andreas Granig
860650c135
MT#4017 Fix subscriber->device mapping in config.
...
When fetching the field device config, only select the correct
subscribers for the line ranges which actually belong to the
field device.
12 years ago
Gerhard Jungwirth
4d1ec6352c
MT#4369 Disable Timestamp search on Callflows
...
this created "min(timestamp) LIKE %search%" which is not valid SQL
12 years ago
Lars Dieckow
f6e01fdbd6
MT#3927 custom auth
12 years ago
Andreas Granig
79a256f094
MT#4787 Send browser to PBX device when syncing
12 years ago
Andreas Granig
4360fff396
MT#3917 Show datetime in local timezone for DT.
12 years ago
Andreas Granig
da753f4f8d
MT#4685 Export latest firmware version for model.
...
This can be used in config scripts to check whether to do an upgrade.
12 years ago
Gerhard Jungwirth
e76de8b9db
MT#4667 validate contact on contract create
...
On one hand, dont allow (peering,reseller)-contracts to
be created with a wrong contact (which has a reseller id).
On the other hand, dont preselect wrong contacts in the first
place (from created_objects)
12 years ago
Andreas Granig
4c888798ec
MT#4685 Don't tie firmware to profile.
...
That way, you can upload multiple firmwares, and ngcp-panel
will serve the next or latest one, depending on the currently
running one.
12 years ago
Gerhard Jungwirth
35630e125a
MT#4129 fix operator precedence
...
Check for diverging resellers when creating a customer
fails because == is evaluated before //
12 years ago
Gerhard Jungwirth
d17c382ff8
MT#4129 prohibit customer with diverging resellers
...
that is, a customer where billing_profile has one
reseller and contact has a different one
12 years ago
Gerhard Jungwirth
8da8d2f8e8
MT#4659 preserve product, when not set by form
12 years ago
Andreas Granig
0945fc9eb8
MT#4657 Make ac an empty string if undef.
12 years ago
Andreas Granig
83b9be31c0
MT#4655 Show reseller name in device mgm.
12 years ago
Lars Dieckow
79b7304f5b
MT#4609 extend checks when editing the own admin user to prevent locking oneself out
12 years ago
Andreas Granig
4b9091dad0
MT#4607 Replace UNION by simple OR
...
MySQL 5.5 handles OR properly in terms of indices, no need for a UNION,
which is completely broken with DBIx::Class anyways, killing the performance.
12 years ago
Andreas Granig
4421421689
MT#4533 Don't transcode MOH files for PBX.
12 years ago
Andreas Granig
02207fc4bb
MT#3977 Set proper config.url parameter.
12 years ago
Andreas Granig
735f34020d
MT#3977 Fix syntax error.
12 years ago
Andreas Granig
4d619e3de4
MT#3977 Also set config.url for autoprov config.
12 years ago
Gerhard Jungwirth
b2bcac6fec
MT#3855 Fix empty contract tab on Reseller details
...
When the reseller has a wrong contract assigned to
him, this contract is not shown because it has already
been filtered out in the Contract controller. In favor
of usability now show it anyway.
Also only present correct contracts on edit/create
resellers in the first place.
See (Mantis:3855#c25797)
12 years ago
Gerhard Jungwirth
7945805883
MT#4289 contracts: filter by product and separate terminate
...
Only show reseller and peering contracts in the
Contracts controller. Also remove the generic create
in favour of the peering/create and reseller/create.
Customer controller now has its own terminate routine to be really
independent from the Contract controller.
Now we can expose the Contract controller in the menu.
12 years ago
Gerhard Jungwirth
6fb3119fc9
MT#4289 move /contract/customer/edit to /customer/edit
...
So finally, there is no customer-specific stuff left in the Contract controller.
12 years ago
Gerhard Jungwirth
5caf89894c
MT#4289 separate customer-/contract- create and ajax_reseller_filter
...
Mantis: 4289#c25035
12 years ago
Gerhard Jungwirth
104751bb6a
MT#4289 separate customer/ajax and contract/ajax
...
This is the first step towards separating the
tight coupling of the Customer and Contract Controllers.
Mantis: 4289#c25035
12 years ago
Lars Dieckow
a37b165caf
MT#4229 custom Internal server error page
...
Move error_page to notfound_page. error_page is now for internal server errors.
Introduce logging option log_crash_state, enabled by default. Crash states are
written out compressed and encoded log-file-friendly, these are useful for
debugging but take a couple dozen kilobytes of disk space each.
12 years ago
Andreas Granig
29e1251140
MT#3997 Transform via_route to loose-route URI
12 years ago
Andreas Granig
1c1f6726ff
MT#3995 Use pre-selected options for ext sbc.
...
Don't allow free-form values for via_route but use pre-configured
values from config.yml.
12 years ago
Andreas Granig
074758df8f
MT#3971 Implement limitation of subscribers.
...
Enforce max_subscribers field and allow editing a customer.
12 years ago
Andreas Granig
ff5d127f06
MT#3971 Add max_subscribers field.
...
This only happens when creating customers for now.
12 years ago
Lars Dieckow
aba646f59b
MT#3929 certificate management
12 years ago
Andreas Granig
0ab09a6e0b
MT#3977 Use plain port for linksys provisioning.
...
Linksys phones need a Cisco-signed server cert, so we have to
stay at plain http for now.
12 years ago
Andreas Granig
a8c4c0f058
MT#3977 Fix ACL for fetching keys of dev profile.
...
Also subscriberadmin must be able to access this part for proper
line/key selection.
12 years ago
Andreas Granig
05553d0406
MT#4413 Remove debugging messages.
...
This even breaks domain creation for PBX.
12 years ago
Andreas Granig
36a020c376
MT#4007 Implement auto attendant mgm for subs.
12 years ago
Andreas Granig
259ddc11b5
MT#3997 Cleanup tooltips.
12 years ago
Andreas Granig
1515e366fd
MT#3997 Really properly fix tooltips.
12 years ago
Andreas Granig
144a360628
MT#3997 Use correct tooltip for peer via-routes.
12 years ago
Andreas Granig
acff496831
MT#3997 Add via_route field to peer hosts.
...
This allows to define a pre-defined static path from the lb
towards the peer for establishing a SIP connection.
12 years ago
Gerhard Jungwirth
8bdd9f42fb
MT#4261 alias number handling
...
Now also handle alias numbers with the outsourced subroutine
update_subscriber_numbers.
Plus remove some leftovers which are already handled by
this sub.
12 years ago
Gerhard Jungwirth
029c3832cc
MT#4317 fraud limits: fix labelling
...
seems to be in cents instead of Euros,
also add the label where it had been missing
12 years ago
Andreas Granig
3f2ecc2da3
MT#4237 Fix create of reseller on billprof edit
...
The field handler for the reseller button was missing in the
billing controller edit function.
12 years ago
Gerhard Jungwirth
124137ca63
MT#4261 number handling on subscriber update
...
Actually use update_subscriber_numbers when updating a subscriber
and not only when creating one. Also handle all neccessary side effects.
Now we can switch our primary number to a number which has been
inactive (that is: did not belong to a subscriber) without an update error.
12 years ago
Gerhard Jungwirth
a1e04e33f7
MT#4261 Proper number handling on subscribers
...
Outsource the handling of the primary number from
the subscriber controller to a util sub called
update_subscriber_numbers.
It also takes care to reuse a number that has
subscriber_id set to NULL which caused the original
problem in the ticket.
12 years ago
Gerhard Jungwirth
7427601806
MT#4265 Fix editing contacts without a reseller
...
which resulted in an exception before because
we tryed to access reseller->id
12 years ago
Andreas Granig
e03bd513ba
MT#4025 Only show customer sound sets for admins.
...
When in customer details, only show sound sets for customer when
logging in as admin/reseller.
12 years ago
Andreas Granig
e93c68c58c
MT#4025 Manage customer sound-sets in details view
12 years ago
Andreas Granig
3acdd72dc6
MT#4145 Change postcode to txt, fix empty reseller
...
Postcodes can be alphanumeric in certain countries.
Avoid fault when editing a contact without reseller
(e.g. reseller/peer contact). You still can't save it without
setting a reseller (which might not be what we want).
12 years ago
Andreas Granig
ddbd7426b2
MT#4263 Also show email in Contract field.
...
This should make it less confusing beeing the Billing Profile list.
12 years ago
Andreas Granig
ff68cbdf84
MT#4309 Show locked subs in Customer Details
...
Before, only active ones where shown.
12 years ago
Michael Prokop
ea5696da2c
Revert "MT#4229 custom Internal server error page"
...
This reverts commit eece093fd0
.
Otherwise fails with:
| Starting NGCP-Panel Webapp: ngcp_panel_fastcgi:Can't locate Convert/Ascii85.pm in your Perl library. You may need to install it
| from CPAN or another repository. Your library paths are:
| /etc/perl
| /usr/local/lib/perl/5.14.2
| /usr/local/share/perl/5.14.2
| /usr/lib/perl5
| /usr/share/perl5
| /usr/lib/perl/5.14
| /usr/share/perl/5.14
| /usr/local/lib/site_perl
| .
|
| BEGIN failed--compilation aborted at /usr/share/perl5/NGCP/Panel/Controller/Root.pm line 5.
| Compilation failed in require at /usr/share/perl5/Catalyst/Utils.pm line 308.
| Compilation failed in require at /usr/share/perl5/Module/Runtime.pm line 317.
| at /usr/share/perl5/Catalyst/ScriptRunner.pm line 50
| error ... failed!
because Convert::Ascii85 isn't available yet in our repositories,
therefore revert to fix broken trunk.
Acked-by: Andreas Granig <agranig@sipwise.com>
Git-Dch: Ignore
12 years ago
Lars Dieckow
eece093fd0
MT#4229 custom Internal server error page
...
Move error_page to notfound_page. error_page is now for internal server errors.
Introduce logging option log_crash_state, enabled by default. Crash states are
written out compressed and encoded log-file-friendly, these are useful for
debugging but take a couple dozen kilobytes of disk space each.
12 years ago
Andreas Granig
1761945b8c
MT#4025 Implement contract_sound_set preference.
...
Let the subscriber choose a contract-wide sound set e.g. for PBX announcements.
12 years ago
Andreas Granig
507f42c564
MT#4025 Fence sound set for subscriberadmins.
...
Only admins, resellers and subscriberadmins are allowed to manage
sound sets. For subscriberadmins, they have to have a pbxaccount to
do so.
12 years ago
Andreas Granig
8f6431fbee
MT#4025 Implement management of customer sound set
...
If a sound set has a contract_id, only show pbx group (consider it
being a customer sound set).
If it only has a reseller_id, show everything else except pbx group
(consider it being a system sound set).
12 years ago
Andreas Granig
5d8c81eadc
MT#4213 Don't search for contract id twice.
...
The result set is already complex enough :)
12 years ago
Gerhard Jungwirth
d010ca4339
Allow for + at beginning of replacement patterns
...
and update documentation
Mantis: 3197#c24493
12 years ago
Andreas Granig
9680cad859
MT#3977 properly handle firmware upgrade.
12 years ago
Andreas Granig
5730437acf
MT#3977 Implement editing of PBX field device.
12 years ago
Andreas Granig
ed359aacd5
MT#3977 Implement backend for multi-line PBX conf
...
This makes it possible to configure multiple lines (private, shared,
blf) and attendant console keys (blf) on a field device and generate the
proper config for it.
It does not yet support editing such a field device.
12 years ago
Andreas Granig
1c8179164a
MT#3977 populate PBX field dev form on prof change
12 years ago
Andreas Granig
03e4d574b6
MT#3977 Prepare line/key in PBX field dev.
12 years ago
Andreas Granig
fba3998657
MT#3977 Implement line/key handling for devices.
...
This is part 1 to define keys/lines on a device, to be assigned to
subscribers.
12 years ago
Gerhard Jungwirth
76f4bdd14c
Restrict certain domain-prefs to their respective reseller
...
The preferences rewrite_rule_sets, ncos_levels, and sound_sets
on a domain should be restricted to ones, that have the same reseller
as the domain itself.
In addition we have to make sure, the preference view does not die,
if an invalid preference had already been selected, for example when
the respective *set/*level had been deleted or had been one, with a wrong
reseller, because of this bug, we just fixed.
Mantis: 4127
12 years ago
Gerhard Jungwirth
25dbc9d8d7
Allow 18 decimal digits on Fee rates
...
Mantis: 3829
12 years ago
Gerhard Jungwirth
8d11c9f4d0
validate weight field of Peering Servers
...
This is a tinyint in the db so the range is from -128 to +127 but we only
allow positive numbers
Mantis: 3493
12 years ago
Gerhard Jungwirth
ebe64d3563
uri_unescape CDRs
...
Mantis: 3413
12 years ago
Gerhard Jungwirth
9329de09f4
Fix failing redirect due to double submitid
...
The submitid is already rendered in our parent
form SubscriberCFAdvanced
12 years ago
Gerhard Jungwirth
b442c759a1
Show Timeset and Destination Set Names
...
and provide a Modal showing the Detail of each.
Except the case when thedestination_set.name is called "quickset_*" and
it only has one entry.
In that case show the particular destinations of this destination set,
in order to not confuse a user who just configured a trivial cf via the simple view.
under Subscriber Preferences -> Call Forwards
Mantis: 3803, 3801
12 years ago
Andreas Granig
683047c112
MT#3975 Prevent subadmin from terminating himself.
12 years ago
Andreas Granig
dd62516857
Fix $controller::auto declaration.
12 years ago
Andreas Granig
1cec4f9243
Add TODO for Device::base cleanup.
12 years ago
Andreas Granig
af5cc9b14a
Try to avoid wrong redirect to login after login.
12 years ago
Andreas Granig
2447dc9997
Harden access to device controller for subscribers
12 years ago
Andreas Granig
1af065d864
Allow subscriberadmin to access sub-subscribers.
12 years ago
Andreas Granig
f2b57291ba
Only allow subscriber logins from active accounts.
12 years ago
Andreas Granig
086d91ff0e
Use roles instead of realm for logged in users.
12 years ago
Andreas Granig
fc8c9e2df8
Cleanup debug log messages.
12 years ago
Andreas Granig
8a194e5055
Use preference label instead of attribute.
...
For admins and resellers, show label in addition to attribute.
For subscribers, only show label.
12 years ago
Andreas Granig
93fb5eb1cb
Don't allow login subscriber to subscriber details
12 years ago
Andreas Granig
d5dc850bd9
Add subscriber login registered dev widget.
12 years ago
Andreas Granig
fb780a72b3
Only validate speeddial form if posted.
12 years ago
Andreas Granig
6e8ac2aa70
Show subscriber login CF widget and allow prefs.
...
Only allow access to the preferences marked as expose_to_customer.
12 years ago
Andreas Granig
b8cf0895ba
Implement subscriber login call-list/voicemails.
12 years ago
Andreas Granig
1dcd7029ca
Correctly prepare subscriber rs depending on realm
...
Filter subscriber resultset to specific subscriber in case of
subscriber login.
12 years ago
Andreas Granig
2faa84a9d6
Prepare ACL for subscriber login.
12 years ago
Andreas Granig
78e126c9cb
Add basic voicemail widget for subscribers.
12 years ago
Andreas Granig
06fc0fa4dd
Fix subscriber login and add basic widgets.
12 years ago
Andreas Granig
5160759f38
Implement subscriber login.
12 years ago
Andreas Granig
1809b44245
MT#3981 Write numbers to provisioning.voip_dbalias.
...
Before, we wrongly wrote directly to kamailio.dbaliases instead of
provisioning.voip_dbaliases.
12 years ago
Gerhard Jungwirth
373185c563
Use a mysql dump instead of a mysql data directory for tests
...
Mantis 3435#c23805 (still)
12 years ago
Gerhard Jungwirth
563adfddf3
Option to start a custom mysql for ./Build test
...
Mantis: 3435#c23805
12 years ago
Alexander Lutay
38e31a6ac8
TT#3921 Usability enhancement for SIP call diagram
...
Sip diagram no longer have hardcoded parts LB, PROXY, APP, SBC.
The componnets order on diagram exactly the same as
order in call, usually it is "UA1->LB->PROXY->SBC->UA2...->UAx".
12 years ago
Gerhard Jungwirth
01ba8802cf
Fix duplicate showing of contracts under Reseller Details - Reseller Contract
...
The problem occured when a reseller is linked to multiple billing_mappings
Mantis: 3855#c23785
12 years ago
Gerhard Jungwirth
1991296383
Filter Contract Contacts by whether they have a reseller_id
...
in case the product in billing_mappings is one of
(SIP_PEERING, PSTN_PEERING, VOIP_RESELLER)
12 years ago
Gerhard Jungwirth
2f85002f28
Correctly identify customer contracts
...
the product handle was compared to the class name by mistake
12 years ago
Gerhard Jungwirth
f444dc0d81
Show Contract (equals Cusomer-) id
...
For better identification of the current contract in details/edit views.
Mantis: 3885
12 years ago
Gerhard Jungwirth
ccd46c145e
Validate SIP username
...
Mantis: 3891
12 years ago
Gerhard Jungwirth
1ab63eff83
Fix e164 validation on subscriber creation
...
push_errors resulted in failing validation even when there was no error
12 years ago
Andreas Granig
d156b57f9d
Add display name to PBX device config template.
12 years ago
Andreas Granig
b4949f1a48
Implement PBX device boot-strapping.
12 years ago
Andreas Granig
fdc1f9514a
Implement PBX field device config delivery.
...
Currently supports sip.username, sip.domain and sip.password tags,
more to come.
12 years ago
Andreas Granig
d4ec2ef042
Implement PBX field device handling.
12 years ago
Andreas Granig
fef88b9ed3
Add PBX device skeleton.
12 years ago
Andreas Granig
d27d6a1414
Make domain optional when handling reg contacts.
12 years ago
Andreas Granig
527bac928f
Fix registration list if ignore_auth_realm is set.
12 years ago
Andreas Granig
015f04bdc1
Add front and mac image for devices.
12 years ago
Andreas Granig
231dc9fd07
Reset DT field id if it's not selected.
12 years ago
Andreas Granig
c3cadb1503
Implement device profile management.
12 years ago
Andreas Granig
e5832d6e13
Implement device config management.
12 years ago
Andreas Granig
dcac5aa5c6
Implement device firmware management.
12 years ago
Andreas Granig
199ae7ed8d
Implement device model management.
12 years ago
Andreas Granig
35e3a51759
Add skeleton for device provisioning.
12 years ago
Gerhard Jungwirth
c6abfbc7cb
Correctly select customers under reseller-> customers section
...
Only show the most applicable billing_profile using the complex
query from the Contract controller
Mantis: 3855
12 years ago
Gerhard Jungwirth
594f341ee8
Preserve the product_id when updating a billing_mapping
...
This had created a billing_mapping with product_id = NULL before, which
is no longer a valid option and caused the panel to fail
12 years ago
Gerhard Jungwirth
c6362639f6
Suppress superfluous error messages "Value must be an integer"
...
and reduce the number of error messages of e164 Subfields, by merging
them into their parent
Mantis: 3723
12 years ago
Gerhard Jungwirth
f0e2f1de8a
Fix syling of long labels in modal
...
Our forms use a fixed width per default, for nice alignment of multiple
form field. This is not neccessary on single-field preference forms.
Mantis: 3827
12 years ago
Gerhard Jungwirth
5936b599d5
Fix saving preferences of type enum with empty value
...
when a preference with empty value is saved, this row was just
deleted from the db. This is not true for enums, because an empty string
is not always the default value. Therefore we only delete enum preferences
when their value matches the one of the enum, configured as default.
This can be checked, by setting the domain preference outbound_pai_user
to None, which resulted in wrong behaviour before.
Mantis: 3769
12 years ago
Gerhard Jungwirth
788d78ebc2
Group callflows by call_id
...
and for callflows with call_id "*_b2b-1" just show details for the
main call_id (which already includes the b2b traffic)
12 years ago
Gerhard Jungwirth
962eced885
use config file ngcp-schema/share/test.conf for testing
...
for NGCP::Schema
we activate this behaviour by setting the environment variable
NGCP_PANEL_CONFIG_LOCAL_SUFFIX to "testing" which is a feature
from Catalyst::Plugin::ConfigLoader
12 years ago
Andreas Granig
d801311821
Remove debug output to stdout.
12 years ago
Andreas Granig
acf36bde4b
Add PBX auto-attendant and office-hours CF targets
12 years ago
Andreas Granig
ca3e92fbe1
Fix editing normal subscriber.
...
The admin column can't be null.
12 years ago
Andreas Granig
d1deb327c2
Reorder subscriber fields to have DT on top.
12 years ago
Andreas Granig
811929bedb
Add display name and shared roster visibility.
12 years ago
Andreas Granig
ceb9f80eab
Use proper PBX group helper when changing PBX ext.
12 years ago
Andreas Granig
9efb1f8124
Allow changing PBX group for PBX extension.
12 years ago
Andreas Granig
5f9c114ef5
Select rewrite rule set for PBX domain creation.
12 years ago
Andreas Granig
00e13f9209
Implement editing PBX extension subscribers.
12 years ago
Andreas Granig
9a1873bfd8
Fix test environment.
12 years ago
Andreas Granig
d79b11aa0a
Remove subscriber from PBX group on termination.
12 years ago
Andreas Granig
3c8734f089
Make PBX groups editable.
12 years ago
Andreas Granig
2daa16dae5
Migrate pbx feature config flag to cloudpbx.
12 years ago
Andreas Granig
7f7e6cbca8
Assign contracts to sipaccount product by default.
12 years ago
Andreas Granig
63e9ded2ca
Properly set PBX preferences and use transaction.
12 years ago
Andreas Granig
85365959dd
Fix customer determination in dashboard.
...
Properly filter by product class.
12 years ago
Andreas Granig
23675b4da3
Implement group, admin and ext handling for PBX.
12 years ago
Andreas Granig
754f1f7887
Align customer detection to product handling.
12 years ago
Andreas Granig
dfb25d922c
Add skeleton to create admin/extension subscriber.
12 years ago
Andreas Granig
fe580d3c53
Show product name in customer details.
12 years ago
Andreas Granig
e6b9a0aad0
Add product selection for customer contracts.
12 years ago
Gerhard Jungwirth
1c154f8542
Only show relevant domains on reseller details
12 years ago
Gerhard Jungwirth
07d3ee5244
provide error message on "column" cannot be null
...
and by making the respective field not_nullable prevent this from even
happening
Mantis: 3677#c22033
12 years ago
Gerhard Jungwirth
4cfa5b7870
Only expose delete button to contacts with no contracts
...
else the delete fails anyway with foreign key constraint
12 years ago
Gerhard Jungwirth
f7586a4e29
fix missing include "NGCP::Panel::Utils::DateTime"
12 years ago
Gerhard Jungwirth
b856662883
Call end-user-contracts customers to avoid confusion
...
especially when the user navigates here from the Customer controller
Mantis: 0003605
12 years ago
Andreas Granig
ad9a8bb4dd
Use localtime in TS and set createtime for subs.
...
Consequently use server's localtime to align with auto-filled timestamps.
Set create_timestamp when creating subscribers.
12 years ago
Andrew Pogrebennyk
3d115071b2
Fix a typo on peering page: caller vs callee.
12 years ago
Gerhard Jungwirth
4e49c963aa
use the message utility for all controllers
12 years ago
Gerhard Jungwirth
778c3caba3
fix missing validation on integer preferences
...
which failed a test
also adapt the domain test to the new login path
12 years ago
Gerhard Jungwirth
0909c813f3
Use the messaging utility for Domains
12 years ago
Gerhard Jungwirth
a8a0d9b8fd
Validation on the replacement pattern of rewrite rules
...
Mantis: 0003197
12 years ago
Gerhard Jungwirth
f569c82dd6
adapt search data structure to older versions of DBIx::Class
...
we would require 0.08250 to omit this
12 years ago
Gerhard Jungwirth
e892998959
Adapt literal sql to older versions of DBIx::Class
...
the previous version failed on the debian version (0.08196)
12 years ago
Gerhard Jungwirth
a2ddf93c8d
Copy rewrite rule set functionality
...
Mantis: 0003135
12 years ago
Gerhard Jungwirth
607932f175
don't count terminated resellers in Dashboard
...
Mantis: 0003629
12 years ago
Gerhard Jungwirth
c69ab29c54
Add some fields to contacts form
...
also preselect the reseller in the contacts form
Mantis: 0003625
12 years ago
Gerhard Jungwirth
e44482fee6
possibility to search a subscriber by his number
...
Mantis: 0003599
12 years ago
Gerhard Jungwirth
62124acf50
Have a new messaging util for custom filtering of error messages
...
Use MooseX Method signatures for a cleaner environment
12 years ago
Gerhard Jungwirth
356891c29b
Handle the preference man_allowed_ips like allowed_ips
12 years ago
Gerhard Jungwirth
c33021d30e
Handle allowed_ips preference.
...
Write data to voip_allowed_ip_groups. Use voip_aig_sequence as counter.
Also move the Preference handling to Utils/Preferences.pm
12 years ago
Andreas Granig
0f9d12f8a7
Prevent termination of contract with id 1.
12 years ago
Andreas Granig
7b24025822
Filter sound groups according to config.
12 years ago
Andreas Granig
2d1d5b6ebd
Allow to add empty offpeak start/end time.
12 years ago
Andreas Granig
017446312f
Clear created domain from session.
12 years ago
Andreas Granig
e5652b3535
Pass ctx to DestinationSet form.
...
Needed to show the right CF targets.
12 years ago
Andreas Granig
0f6fc8a995
Fix preference handling with max_occur > 1.
12 years ago
Andreas Granig
b430850306
Fix filtering of free reseller contracts.
12 years ago
Andreas Granig
eb063dd79e
Fix syntax error.
12 years ago
Andreas Granig
d43f4ca6e6
Re-use ossbss logging config if available.
...
Otherwise, either panel or csc/ossbss doesn't log anything, depending
which is started first.
12 years ago
Gerhard Jungwirth
ec18d91ee8
move admin deletion to Utils::Contract::recursively_lock_contract
...
and prohibit deletion of the currently used account
12 years ago
Andreas Granig
b2faa82206
Properly filter customer contracts.
12 years ago
Andreas Granig
083fbc71ca
Catch all exceptions and log errors as error.
12 years ago
Gerhard Jungwirth
fa6905766b
correctly terminate reseller from edit-modal
12 years ago
Gerhard Jungwirth
099c097294
delete related tables on reseller terminate
...
and prohibit termination of reseller with id 1
12 years ago
Gerhard Jungwirth
057301b0d8
Handle the case, the user logs out twice
...
This was throwing an exception because of a missing target
12 years ago
Andreas Granig
685d7d42d7
Pass back newly created domain to parent.
12 years ago
Andreas Granig
70d9280af7
Fix syntax error.
12 years ago
Andreas Granig
f9ed88af39
Provision "search" domain to prosody.
...
Implicitely add a domain search.$domain for each domain we're creating,
and tie the sipwise_vjud XEP-0055 module onto it.
12 years ago
Andreas Granig
56c167c575
Fix terminating voip_subscribers for reseller.
12 years ago
Gerhard Jungwirth
e41fe3305d
Use a modal to display the NCOS setting "Include local ac"
12 years ago
Andreas Granig
9b8ce0d783
Align billing fees to new DT mechanism.
...
Finally remove the ajax_process_resultset function from Root controller.
12 years ago
Andreas Granig
a884e45915
Fix syntax error in Panel.pm
12 years ago
Andreas Granig
b9f04c9a0c
Set correct config file for logger.
12 years ago
Andreas Granig
6054ada6fb
Tell prosody about new/deleted domains.
12 years ago
Andreas Granig
c8beecba9a
Only allow callflows if enabled in config.
12 years ago
Andreas Granig
dee0bf8f8d
Show UUID in subscriber list.
12 years ago
Andreas Granig
fc74628e46
Show reseller name in billing profile field.
12 years ago
Andreas Granig
0b596b7c85
Implement reseller dashboard widgets.
12 years ago
Andreas Granig
7db9c09b13
Don't show terminated customers.
12 years ago
Andreas Granig
bd60a1dbda
Pretty-print timestamp in call flows.
12 years ago
Andreas Granig
036caca71e
Don't count terminated subscribers in dashboard.
12 years ago
Andreas Granig
06482210fb
Add CF delete and fix simple handling.
...
Redirect back to preferences when saving in advanced view.
Re-use destination sets in simple view.
12 years ago
Andreas Granig
1437084795
Add global callflow controller.
12 years ago
Andreas Granig
fd0ad5891a
Fix typo in navigation chain.
12 years ago
Andreas Granig
a164d0b126
Gracefully handle missing billing profile.
12 years ago
Andreas Granig
a4103ee09f
Centrally reject any write-urls for r/o-users.
...
We currently filter for create/edit/delete in any part of the uri.
12 years ago
Andreas Granig
e43fc4b1c5
Implement graphing of captured sip messages.
...
Last part of subscriber-base call-flow handling.
TBD: filtering call-id in subscriber master data.
12 years ago
Andreas Granig
688ed5871e
Implement backend png graphing of call flows.
...
This is the second part of the SIP callflow implementation.
12 years ago
Andreas Granig
9beefb8f83
Implement backend for downloading pcaps.
...
This is the first part of the callflow analyzer.
12 years ago
Andreas Granig
361d59a578
Fix unban handling.
...
URI-encode ips and usernames.
Properly delete right keys when unbanning a user.
12 years ago
Andreas Granig
cb7e0fb63c
Implement ip/auth ban management.
12 years ago
Andreas Granig
b7d7989b61
Fix typo in options method reference.
12 years ago
Andreas Granig
861bebef8c
Migrate server/rules handling to new DT mechanism.
...
This fixes searching and sorting for servers and rules.
12 years ago
Andreas Granig
c2805f5678
Fix RWR priority handling.
12 years ago
Andreas Granig
ba46a201a9
Use Sipwise::Base instead of Moose.
12 years ago
Andreas Granig
a6b648aa8f
Fix redirect after NCOS delete.
12 years ago
Andreas Granig
a9b68ae367
Fix contract/contact editing from within reseller.
12 years ago
Andreas Granig
d050c6b3be
Make RWR description mandatory.
12 years ago
Andreas Granig
1481894d68
Fix special offpeak handling.
12 years ago
Andreas Granig
64fffe783b
Allow on-the-fly reseller creation.
12 years ago
Andreas Granig
ab79afbb67
Fix config paths and dbalias creation.
...
In case a subscriber is created from within the customer view, then also
clear the created objects and write a dbalias.
12 years ago
Andreas Granig
66a708ea36
Only allow alphanum chars in handle name.
...
Needed for backwards-compat with old admin panel.
12 years ago
Andreas Granig
119039dd5a
Set create/modify timestamp.
12 years ago
Andreas Granig
b97592375d
Allow empty callee prefix in peering rule.
12 years ago
Andreas Granig
c98b27936e
Put peering contract first.
...
If we create one on the go, we lose all fields above, so, offer that
one first.
12 years ago
Andreas Granig
29df28e9ee
Allow absolute paths in DT field helper.
12 years ago
Andreas Granig
d31ff8b9f1
Put result sets to stash.
...
Fixes last commit.
12 years ago
Andreas Granig
fc45e11c49
Remove noreseller hack.
...
Add proper create_reseller function for creating reseller contracts.
12 years ago
Andreas Granig
e4f8d7d047
Show correct reseller stats for admin.
12 years ago
Andreas Granig
440afcedd4
Temp. fix for template helper path.
...
For now, use absolute path to make it work in real environments.
12 years ago
Andreas Granig
933db41421
Use ajax in url name for urls used for ajax.
...
*sic*
12 years ago
Andreas Granig
ed02cf232d
Fix paths and debian packaging.
...
Look for templates and static files in /usr/share/ngcp-panel.
Actually package the share/ folder.
Add config file to /etc/ngcp-panel/ngcp_panel.conf
12 years ago
Andreas Granig
4572d950d0
Fix billing handling.
12 years ago
Andreas Granig
e770783788
Fix navigation and CF handling.
...
Old CF handling didn't work with Firefox due to some auto-focus issue with our
HTML code in the URI/timeout fields.
12 years ago
Andreas Granig
d2db386252
Fix contract creation and subscriber lock handling
...
Properly create contact on-the-go.
Set lock preferences of subscribers only if >0.
12 years ago
Andreas Granig
6d38442876
Filter terminated elements; visual cleanups.
...
Don't show terminated resellers and contracts.
Wrap customer details into accordion.
12 years ago
Andreas Granig
45334bbd42
Fix administrator creation/editing.
...
Properly handle on-the-fly reseller creation.
Remove unnecessary id from forms.
12 years ago
Andreas Granig
d9ff6d5555
Enforce minimum password lengths.
12 years ago
Andreas Granig
aee8feeb01
Rework rewrite rules.
...
Add reseller id to rule set.
Align to new DT handling.
Remove DBIC handling.
12 years ago
Andreas Granig
4b956f6e8a
Clean up sound set handling.
...
Align to new DT handling.
Remove DBIC handling.
Add reseller selection.
12 years ago
Andreas Granig
e4d305895c
Clean up NCOS handling.
...
Add reseller selection when creating level as admin.
Align to new DT methods.
12 years ago
Andreas Granig
01b3856ee7
Align domain handling to new DT mechanism.
...
While we're at it, show reseller domains in reseller details.
12 years ago
Andreas Granig
e1f7a4710e
Properly handle back button.
12 years ago
Andreas Granig
21af84fdf6
Lots of cleanups and bugfixes and back-nav.
...
Implement automatic back navigation.
Fix subscriber creation.
Unify controller handling.
12 years ago
Andreas Granig
e384577cb0
Fix subscriber creation for customer.
...
Reseller is now in Contact instead of Contract.
Make passwords visible.
12 years ago
Andreas Granig
08e5a2a3a8
Propagate reseller and contract status to children
...
Properly terminate/lock/unlock sub-contracts and subscribers if the
parent contract status changes.
12 years ago
Andreas Granig
3494c02e27
Terminate children on contract termination.
...
Terminate customer contracts and subscribers on reseller termination.
Terminate subscribers on customer contract termination.
12 years ago
Andreas Granig
072d5b8b61
Align peering handling to usual controller flow.
...
Use navigation utils.
Make required fields required.
12 years ago
Andreas Granig
bee006efcd
Rework reseller handling.
12 years ago
Andreas Granig
6e7ddeeac3
Properly propagate new contract back to reseller.
12 years ago
Andreas Granig
5e0c8faa0a
Properly carry back new objects in nav-chain.
...
If you create something (e.g. a contract) and have a sub-field
you create on-the-go (e.g. contact and billing profile), then
properly pre-select them once you get back to the original view
(the contract form in this example).
12 years ago
Andreas Granig
9350d4258e
Fix contract and peering creation.
12 years ago
Andreas Granig
04296de4c4
First part of reworking reseller handling.
12 years ago
Andreas Granig
55b79ae3d6
Properly handle sort and search for nested joins.
12 years ago
Andreas Granig
0b37392f54
Enhance navigation.
...
Simplify back-uri for navigation utils calls.
Start using back_or navigation utils function for auto-checking
close-targets.
Move navigation stack check into auto of each controller.
12 years ago
Andreas Granig
264a5460da
Add reseller top menu.
12 years ago
Andreas Granig
4b3d1caab6
Streamline forms in regards to submitid.
12 years ago
Andreas Granig
b8c66ca818
Hook up controller with DB.
...
This one still had hardcoded mock data.
12 years ago
Andreas Granig
bfda0821fc
Harden and enhance admin handling.
...
Move admin forms to own subfolder and split into reseller and admin form.
Migrate DT handling to Utils function.
Allow resellers to create admins within their own reseller.
Make sure to not lock out an admin when editing own admin.
Deny write access to admins for non-master admins.
12 years ago
Andreas Granig
8c7a23fb71
Implement speed dial management.
12 years ago
Andreas Granig
90dedaa1bc
Implement fax preference handling.
12 years ago
Andreas Granig
1c4fd57e19
Implement registered device management.
12 years ago
Andreas Granig
7a75e448f4
Implement subscriber trusted source management.
12 years ago
Andreas Granig
b2ba73cecc
Cleanup debug messages.
12 years ago
Andreas Granig
46f4a3a609
Implement system statistics page.
12 years ago
Andreas Granig
f775f84fcf
Remove debug messages.
12 years ago
Andreas Granig
579d5cc1e2
Add system options to subscriber CF simple view.
12 years ago
Andreas Granig
af28876437
Propagate primary number change to CF and VM.
12 years ago
Andreas Granig
544e7e8252
Implement subscriber reminder settings.
12 years ago
Andreas Granig
4aebd6aa8b
Implement voicemail settings.
12 years ago
Andreas Granig
2b966d8190
Implement subscriber alias handling.
12 years ago
Andreas Granig
d111caee98
Implement editing of subscriber master data.
12 years ago
Andreas Granig
b194556431
Move transcoder to separate file.
...
Transcode VM messages to get WAV instead of WAV49.
Fix sound set handling and transcode PCMA to WAV.
12 years ago
Andreas Granig
da4170c2a6
Implement voicemail table.
...
Listening to WAV49 doesn't seem to work out of the box with a normal
linux player, probably we need to transcode GSM?
12 years ago
Andreas Granig
06a6470783
Filter rows by date range, e.g. CDR table.
12 years ago
Andreas Granig
114742b366
Implement call list.
12 years ago
Andreas Granig
cd2f79bfa1
Allow creation of subscribers within customer.
12 years ago
Andreas Granig
ba30dde294
Implement new datatables ajax dispatching.
...
It works with single-nested joins both for searching and ordering,
and the definition of what is searchable and what is displayed is
done in the controller once during setup.
12 years ago
Andreas Granig
a976854f9e
Show registered devices for subscribers.
12 years ago
Andreas Granig
0fd0e8fec9
Show domain name in subscriber list.
12 years ago
Andreas Granig
602e579971
Cleanup debug messages.
12 years ago
Andreas Granig
efddf71181
Pretty-print CF destinations.
12 years ago
Andreas Granig
71f5e663dc
Implement proper destination selection for CF.
12 years ago
Andreas Granig
076d7a8963
Pretty-print period definitions.
12 years ago
Andreas Granig
9fa426139e
Adapt time set handling to new form.
12 years ago
Andreas Granig
5e2ca66f3b
Minor cleanups.
12 years ago
Andreas Granig
53a287dedb
Implement row-based period definition for time set
12 years ago
Andreas Granig
8dc84bd287
Use proper Utils modules.
12 years ago
Andreas Granig
f6ff8aaec5
Remove debug dumpers.
12 years ago
Andreas Granig
f996d4a15e
Move naviation to NGCP::Panel::Utils::Navigation
12 years ago
Andreas Granig
1c48ba879d
Gracefully handle contract without billing profile.
...
This should actually never happen (tm).
12 years ago
Andreas Granig
3a1a15164a
Implement time/destination set creation for CF.
12 years ago
Andreas Granig
32134113ce
Fix deleting active time sets.
12 years ago
Andreas Granig
bcc9b83bf9
Add basic timeset handling for CF.
12 years ago
Andreas Granig
82f7c08ae4
Implement deletion of CF destination sets.
12 years ago
Andreas Granig
7b9697cf34
Properly set voip_usr_preferences on CF changes.
12 years ago
Andreas Granig
a7467ebbb5
Properly set close target for correct work-flow.
12 years ago
Andreas Granig
86d89f881d
Some cleanups using preference helper.
12 years ago
Andreas Granig
b0cf42bd92
Fix handling of multiple mappings per CF type.
12 years ago
Andreas Granig
7d5cd8cd0f
Handle assigning of multipe sets in CF mapping.
12 years ago
Andreas Granig
c5942e83c9
Implement destination set handling.
12 years ago
Andreas Granig
79118bd3d7
Add advanced time/destinations set buttons.
...
Also align them in one row in the modal footer.
12 years ago
Andreas Granig
b8eeebb2de
Add own RepeatableJS renderer.
...
We don't pop up a JS confirm dialog on deletion of a repeatable row.
12 years ago
Andreas Granig
c720fe9ec2
Add time/destination set selectors.
12 years ago
Andreas Granig
c72cac0c95
Add Advanced CF mock.
12 years ago
Andreas Granig
0573234779
Implement CF deletion and visual cleanups.
12 years ago
Andreas Granig
6937ac595f
Implement simple way of adding Call-Forwards.
12 years ago
Andreas Granig
818716b2cd
Add Call Forward Forms.
12 years ago
Gerhard Jungwirth
4a179ac2d4
add some tooltips
12 years ago
Gerhard Jungwirth
25c535cda1
Check for correct date in billing weekday settings
12 years ago
Gerhard Jungwirth
00d279f6d1
restrict access to Administrator Controller
12 years ago
Gerhard Jungwirth
702aacda1d
handle the preference sound_set
12 years ago
Andreas Granig
7205cac8b2
Add subscriber preferences.
...
Also fix preference handling for deleting preferences when they are set to
false (boolean), empty (string/int) or defaults (enum).
12 years ago
Gerhard Jungwirth
a3d42f2cd3
preselect rewrite_rule_set, ncos and adm_ncos on preferences modal
12 years ago
Gerhard Jungwirth
20c34c71ef
handle the preference ncos and adm_ncos
12 years ago
Gerhard Jungwirth
85c28e259d
handle the preference rewrite_rule_set
12 years ago
Gerhard Jungwirth
d321c3a1a6
remove unused provisioning_domain_id from stash
12 years ago
Andreas Granig
d39a073efd
Sort subscribers by status.
12 years ago
Andreas Granig
cc99beed76
Add usr_preferences on subscriber creation.
12 years ago
Andreas Granig
cc707fa6d0
Add subscriber termination.
12 years ago
Gerhard Jungwirth
5e5b221bbf
fix bug in enum display
...
in the modal to edit preferences only relevant enums should be displayed
12 years ago
Gerhard Jungwirth
1253d10e31
fix create/delete of Domains
...
Domains are now updated in billing.domains and provisioning.voip_domains
12 years ago
Andreas Granig
394595cd48
Implement subscriber creation.
12 years ago
Gerhard Jungwirth
4b4c393c41
adapt new schema with single namespace
...
just domain creation/delete is not working yet
12 years ago
Gerhard Jungwirth
52fe28451c
use XMLDispatcher for Peering and RewriteRules
12 years ago
Gerhard Jungwirth
01cea1a76d
use XMLDispatcher for Domains and SoundFiles
12 years ago
Gerhard Jungwirth
36d3317da8
XMLDispatcher
12 years ago
Andreas Granig
74ae3d91d3
Add customer list to reseller details.
12 years ago
Andreas Granig
4cbf5be13f
Make reseller status active by default.
12 years ago
Gerhard Jungwirth
773890a105
transcode sound files
12 years ago
Gerhard Jungwirth
2715939400
fix reconfirmation on soundfile-delete, make soundfiles downloadable
12 years ago
Gerhard Jungwirth
02d27a814b
CRUD Sound Sets and Sound Files
12 years ago
Gerhard Jungwirth
07e3c0a699
Validate Date (start before end)
12 years ago
Andreas Granig
f7433e3b8a
Implement admin peering widget.
...
Also fix singular/plural handling in names.
12 years ago
Andreas Granig
761aab3220
Implement reseller and billing widget for admins.
12 years ago
Andreas Granig
06eecf8a3d
Fix reseller handling.
12 years ago
Andreas Granig
1a61093b9c
Fix weekdays peaktime handling.
12 years ago
Gerhard Jungwirth
c41dbe80b3
fix NCOS Pattern creation
...
wrong form had been validated
mantis: 0003347
12 years ago
Gerhard Jungwirth
b2317f2005
align modal fields
...
- fields are full width
- create button is pull-right
12 years ago
Andreas Granig
f149aa525b
Migrate to new datatables filter method.
12 years ago
Andreas Granig
99fbe92d0c
Fix displaying special peak times.
12 years ago
Andreas Granig
215748a033
Migrate to new datatables search method.
12 years ago
Andreas Granig
3911119b39
Make datatables fields searchable by "subnames".
12 years ago
Andreas Granig
be0cea94be
Display billing profile name instead of id. WIP.
12 years ago
Lars Dieckow
d37314bfc1
create reseller with defaults
12 years ago
Lars Dieckow
9356af6e3e
refactor
12 years ago
Lars Dieckow
38a45d594f
skip offset calculation if pagination is disabled
12 years ago
Lars Dieckow
9df80c6caf
hash-based aaData for datatables via serialisation hook
12 years ago
Lars Dieckow
ee642f0b93
build search expression only if search was submitted
12 years ago
Lars Dieckow
add111dbad
stricter parameter checking
12 years ago
Lars Dieckow
412b9ee493
not needed anymore
12 years ago
Andreas Granig
0dfd3d3f54
Add tooltip support.
12 years ago
Andreas Granig
48cd51d910
Datatables always need the id column.
12 years ago
Andreas Granig
baa377581e
Some more layout cleanups.
12 years ago
Andreas Granig
8eabbecde9
Implement subscriber creation mock.
12 years ago
Andreas Granig
749352537b
Set contract status to active by default.
12 years ago
Andreas Granig
0045d2f1dc
Remove unnecessary Customer fields.
12 years ago
Andreas Granig
06facd90c9
Remove unnecessary Customer form.
12 years ago
Andreas Granig
26879effe6
Fix customer creation.
...
Point link to Contract controller on creation.
Redirect into customer details after creation.
12 years ago
Andreas Granig
5a4c362152
Implement contract balance handling.
12 years ago
Andreas Granig
f3f7f62868
Implement customer fraud levels.
12 years ago
Andreas Granig
3b0119e603
Add customer mock.
12 years ago
Andreas Granig
4bbbee3aa1
Finish migration to new button handling.
...
You can now define in your datatables template which buttons to
show on top and which to show per row while defining an arbitrary
action for it.
Buttons with name "Delete" pop up a confirm dialog automatically.
12 years ago
Andreas Granig
1731006570
Check for uploaded file before deleting/processing
12 years ago
Andreas Granig
8245329a76
Implement listing of customer contracts.
12 years ago
Andreas Granig
dda40dcc16
Customer implementation. WIP.
12 years ago
Andreas Granig
cba76fc619
Write contract_balance also for peering contracts.
12 years ago
Andreas Granig
98a7b3867c
Move contract_balance creation to tmp helper.
...
This needs to be implemented in the schema at some point!
12 years ago
Lars Dieckow
7a29024cfe
DateTime API
12 years ago
Gerhard Jungwirth
ae4c3660d7
use different Forms for BillingProfile when admin/reseller is logged in
...
reseller cannot create billing_profiles for other resellers/admins...
12 years ago
Gerhard Jungwirth
4ef08be450
restructure parameters of NGCP::Panel::Utils::check_form_buttons
...
to allow multiple redirect_uris to be given to it
the old style (arrayref) is still supported though
+fix typo
12 years ago
Andreas Granig
b8b41d8657
Populate contract_balance on contract creation.
...
PoC. Needs to be put into separate module/function, as it needs to be used when
querying a contract balance which doesn't exist.
12 years ago
Gerhard Jungwirth
3903a8fd0b
Option to set local_ac in billing.ncos_levels
12 years ago
Gerhard Jungwirth
832ca26af2
Limit Reseller access to NCOS Levels
...
Only show resellers own NCOS Levels.
12 years ago
Gerhard Jungwirth
34f8a717df
CRUD NCOS Levels and NCOS Number Patterns.
12 years ago
Lars Dieckow
1ae8494e23
automatic UTF-8 decoding/encoding
12 years ago
Lars Dieckow
67a7ff3627
Catalyst 5.90040
12 years ago
Lars Dieckow
421f9f319d
centralised ACL roles for all controllers
12 years ago
Gerhard Jungwirth
48f1a3a3a5
Rewrite Rule Set and Rewrite Rule Management
12 years ago
Lars Dieckow
bcbaa9915c
dynamic runtime dispatch
12 years ago
Lars Dieckow
f79846801a
better syntax high-lighting
12 years ago
Lars Dieckow
605eb563ad
admin, reseller ACL roles for domains
12 years ago
Lars Dieckow
817f62d586
column encoding handled in model
12 years ago
Gerhard Jungwirth
e9bf0956b9
fix mistaken diff garbage
12 years ago
Gerhard Jungwirth
f3982ebd50
Use Custom Fields to check EmailList, IP address and Regexp
...
mantis: 0003081
12 years ago
Gerhard Jungwirth
35776406a9
Correct management of billing_mappings
...
* When session->{create_peering_contract} is set, set the corresponding
product (sippeering).
* When changing the billing_profile create a new billing_mapping with
the start_date of now.
* Preselect the correct billing_mapping on the edit modal-dialog.
12 years ago
Gerhard Jungwirth
8d43a6ae92
select only one billing_mapping per contract
...
select the billing_mapping which has an start_date and end_date closest
to the current time. do not select one that does not match the current time.
also prevent db error about multiple id columns by using 'me.id' in
the root controller
12 years ago
Gerhard Jungwirth
bb0d585418
Implement Create/Show/Update/Delete of Contracts
...
Use sippeering contracts to update peering groups.
12 years ago
Gerhard Jungwirth
25e75e4420
Show/Edit peer preferences under peer servers
...
* some code has been outsourced to NGCP::Panel::Utils
12 years ago
Gerhard Jungwirth
08d2105b56
Show/Create/Update/Delete of peering servers and rules
...
* also the create link in datatables is now based on helper.base_uri
* also the peering controller checks exceptions on every db update
12 years ago
Gerhard Jungwirth
b5449a575e
peering group management
...
- Show/Create/Edit/Delete of peering groups
- using a new controller
12 years ago
Andreas Granig
e3ae499789
Filter reseller contracts.
...
Only show currently active (if edit) and unused contracts when
editing or creating resellers.
12 years ago
Andreas Granig
bffa977192
Implement basic reseller CRUD.
12 years ago
Andreas Granig
fced11b461
Rework Administrator handling.
...
Use is_superuser as admin indicator.
Only show admins, no resellers (will be handled in another view/ctrl).
Allow updates without reentering password.
Hide internal fields in view.
Set sane default values.
12 years ago
Andreas Granig
f5b69ed87e
Cleanup debug dumpers.
12 years ago
Andreas Granig
db12421890
Cleanup unused var.
12 years ago
Andreas Granig
97b7f01164
Add simple role handling via realm check.
12 years ago
Andreas Granig
35bade1640
Allow searching by login.
12 years ago
Andreas Granig
1f50a3ae50
Fix administrator handling.
...
Actually use admins table for authentication of reseller and admin.
Save pass as md5 hash (should be bcrypt at some point!)
Display proper user name in view.
12 years ago
Lars Dieckow
d98a4f8cba
CRUD administrators and pick reseller
12 years ago
Gerhard Jungwirth
dec990e570
perl5i to check for integers, documentation
...
* Method name "list" is not allowed with Sipwise::Base
* Correctly break chain in peaktime_specials_edit, peaktime_specials_delete
* better use ->is_integer instead of regex
12 years ago
Gerhard Jungwirth
25e0057b24
add tests for billing controller
...
and make weekdays generic
12 years ago
Gerhard Jungwirth
abfadb4988
provide CSV upload of billing_fees
...
using Text::CSV_XS
12 years ago
Gerhard Jungwirth
e7d92ff670
prevent deletion of billing_profiles
...
Billing-Profiles MUST NOT be deleted
Fixes: sipwise-0003127
12 years ago
Gerhard Jungwirth
210140f483
Make Preferences a button
...
Closes: sipwise-0003083
12 years ago
Gerhard Jungwirth
ee50a88695
implement create/edit/delete of billing_peaktime_special
12 years ago
Gerhard Jungwirth
016ae58929
fix syntax (indirect call)
...
fix syntax so that indirect cannot complain
now we can use correct scope for Sipwise::Base
12 years ago
Gerhard Jungwirth
e89dfa5f4a
show peaktime dates as datatables table
12 years ago
Gerhard Jungwirth
82386265f2
billing weekdays: option to add/delete time ranges
12 years ago
Gerhard Jungwirth
f908c19483
outsource modal, introduce peaktime page
...
modal uses a separate template file now
the weekdays edit modal is WIP
12 years ago
Gerhard Jungwirth
309f0c3c91
fix some URIs and fix redirection on fees_create
...
Closes: sipwise-0003085
12 years ago
Gerhard Jungwirth
99d5b3d53e
add a list of zones and the option to delete them (Billing)
...
+ rename list, as it collides with an imported method from Sipwise::Base
12 years ago
Lars Dieckow
1d8d7bab2c
model configuration is in schema classes
12 years ago
Lars Dieckow
0c3e980e61
correct dependencies
12 years ago
Gerhard Jungwirth
5f36ccea1b
outsource TODOs to bugtracker.sipwise.com
12 years ago
Gerhard Jungwirth
bf41772200
remove commented code
...
and one small code simplification
12 years ago
Gerhard Jungwirth
e953697c8f
new modal to create billing zones
12 years ago
Gerhard Jungwirth
0af4c6293f
fix editing of billing_fees
...
- the foreign key billing_zone_id was not treated correctly
- also added a link to billing in the dashboard widget
- update some documentation
12 years ago
Gerhard Jungwirth
d1d4ec754b
make billing_fees editable, add billing_zone as datatables form
...
the use of get_columns in lib/NGCP/Panel/Controller/Billing.pm
line 141 could cause problems according to #dbix-class
12 years ago
Gerhard Jungwirth
a0773b2591
billing: fix links, create forms (billing_fees, billing_profiles)
...
- another datatables structure is there for billing_fees
- forms are now performing the desired actions (in ngcp-schema)
12 years ago
Gerhard Jungwirth
3df437082c
create "Edit Billing" modal, make validator happy
...
plus add a topmenu entry for Billing
plus better align actions column
12 years ago
Gerhard Jungwirth
1f73491b9c
Create new controller for Billing
12 years ago
Gerhard Jungwirth
dc67ed1303
add some source documentation
...
to domain controller and preferences form
12 years ago
Gerhard Jungwirth
c597b3fc7d
restructuring DB access
...
using prefetch to improve performance
the whole preferences page now only needs 4 sql queries
12 years ago
Gerhard Jungwirth
3b367079ea
group preferences (using bootstrap accordion)
12 years ago
Gerhard Jungwirth
c3caf6442e
style multiple entry form more nicely
...
also show label correctly
12 years ago
Gerhard Jungwirth
a1ca6af6b9
options to delete and deactivate prefs with multiple values
12 years ago
Gerhard Jungwirth
da8f3b267d
editing preferences with multiple values (WIP)
12 years ago
Gerhard Jungwirth
5d6374f153
html encode preference description
12 years ago
Gerhard Jungwirth
6dce0d610c
Fix prefill and update of preferences.
12 years ago
Andreas Granig
6af4d59390
Some more fix attempts for dom-prefs, WIP.
12 years ago
Andreas Granig
2c16631a4b
Implement first part of editing domain preferences.
...
Show form accordig to preference type. Still doesn't save
correctly and lacks support for max_occur=0 cases (e.g.
lists of strings).
12 years ago
Andreas Granig
7f92d7f82c
Properly display domain preferences in full list.
12 years ago
Gerhard Jungwirth
8ddff24cdc
domain preferences: fix form, create overlay
12 years ago
Gerhard Jungwirth
b7a582c87a
make preferences table
...
but keep preference form for now
12 years ago
Gerhard Jungwirth
0b706763c2
have a Preferences Form (extending FormHandler)
12 years ago
Gerhard Jungwirth
7e3f856be0
domain: remove edit button, add preferences link
12 years ago
Gerhard Jungwirth
16f82c70fa
domain: use create_domain() from ngcp-schema to create domain
12 years ago
Gerhard Jungwirth
416ae48813
domain controller: error message, some simplifications
...
its possible to use resultset in base chain now,
but that will change when we use the convenience methods in the schema
12 years ago
Gerhard Jungwirth
a95a5d3cfd
use resultset for searching, sorting and pagination
...
- also for rowcount
- also do some cleanup/coding style
12 years ago
Gerhard Jungwirth
547aea4c5b
fix/restructure domain controller to use resultset more consistently
12 years ago
Gerhard Jungwirth
79adff3037
change data handling in ajax method
...
- resultset is now processed directly by ajax method
- small fix in config file
12 years ago
Gerhard Jungwirth
f982cbbe0b
outsource model config to config file
12 years ago
Gerhard Jungwirth
c3f8397fad
simple edit, create, delete for domains
...
- does not use the dedicated methods in NGCP::Schema::billing
12 years ago
Gerhard Jungwirth
764865cdcf
start using ngcp-schema (for domains)
...
- requires: ngcp-schema and sipwise-base
12 years ago
Gerhard Jungwirth
0e276f2782
bugfix in edit dialog containing datatables field
...
- when a row is preselected in a datatables field, it is shifted top, to make sure its visible
Conflicts:
lib/NGCP/Panel/Controller/Root.pm
12 years ago
Gerhard Jungwirth
dcd965f312
use a bootstrap style 404 error page
12 years ago
Gerhard Jungwirth
8d781eb898
sort dashboard widgets through priority
12 years ago
Andreas Granig
8ff5c4e427
Migrate domain handling to datatables.
12 years ago
Andreas Granig
6ede6b4e09
Dynamically load top menu widgets.
12 years ago
Andreas Granig
47a7b3bf24
Fix error handling for datatable fields.
12 years ago
Andreas Granig
ba235d629e
Align modal datatable to form layout.
12 years ago
Andreas Granig
3b2523473b
Use datatables by default for each table.
...
For the main tables, we use datatables now anyways.
Also use it for datatables fields within forms (needs some visual
optimization and positioning of error messages, as well as
validation code).
12 years ago
Andreas Granig
4b22a492df
Fix modal handling.
...
Remove hardcoded columns in datatables fields.
Make modal popup wider to fit the table better.
Add pagination to table.
12 years ago
Andreas Granig
277d9d34f2
Fix hardcoded urls and missing wrapper function.
12 years ago
Gerhard Jungwirth
d6d7784969
fix warning, add datatables into /contract/create
...
- fix warning caused by missing "widget" attribute
- use datatables to select contacts in /contract/create
12 years ago
Gerhard Jungwirth
63484ee94a
use hidden field for the new datatables field
12 years ago
Gerhard Jungwirth
2d7d691de3
New datatables based fields.
12 years ago
Gerhard Jungwirth
080feb9c6f
Commit WIP.
12 years ago
Gerhard Jungwirth
93968c3a11
design of edit/delete buttons, permission handling, bugfix
...
- hide edit/delete buttons and show them on hover
- show a 403 error on ../ajax urls when user is not logged in
- distinguish between totalRecords and totalDisplayRecords
- fix missing ; in Makefile.PL
12 years ago
Gerhard Jungwirth
f5afd4911b
use serverside sorting in datatables
12 years ago
Gerhard Jungwirth
6b64c732ac
outsource ajax processing into private action /ajax_process in Root controller
12 years ago
Gerhard Jungwirth
d8f05dc1a3
make /contacts use datatables
12 years ago
Gerhard Jungwirth
ac9d981aa9
Pagination, Template enhancements for datatables
...
- made template more flexible
- process pagination in reseller/ajax
- use datatables on /reseller
- add edit/delete buttons to template
12 years ago
Gerhard Jungwirth
4c9c766380
create reseller output with datatables
...
- introduce jQuery plugin datatables
- make reseller/ajax searchable
12 years ago
Gerhard Jungwirth
8f14fbda59
add ajax action that returns json representation of reseller data
12 years ago
Gerhard Jungwirth
a9808ee53f
add new view "JSON"
12 years ago
Lars Dieckow
7ed2dccb52
less log spam by default
12 years ago
Lars Dieckow
c4caeb6e02
debug spam interferes with testing
...
if you need it for development environments:
<http://p3rl.org/Catalyst::Manual::Cookbook#Enable-debug-status-in-the-environment >
12 years ago
Andreas Granig
320a25024b
Add Contact form and extract redir chain handling.
12 years ago
Gerhard Jungwirth
ade81ba964
Align template path to general structure.
12 years ago
Andreas Granig
e1d5b84afb
More fixes for the redirecting chain.
12 years ago
Andreas Granig
1d092e5cc6
Fix redirecting back in creation chain.
12 years ago
Andreas Granig
48c8378719
Extend work-flow for reseller creation/edit. WIP.
12 years ago
Andreas Granig
c87ff36170
Add contract and contact lists. WIP.
12 years ago
Andreas Granig
61f57290ed
Use compound fields for element groups.
12 years ago
Andreas Granig
460ecd825b
Add domain handling skeleton.
12 years ago
Andreas Granig
cd109ee5ed
Cleanup debug messages.
12 years ago
Andreas Granig
065d8aafd3
Implement role and controller filter for widgets.
12 years ago
Andreas Granig
9067242a0f
Add custom Contract form field.
12 years ago
Andreas Granig
37def5fbe1
Clean up log messages.
12 years ago
Andreas Granig
5ce4b91aa8
Rework controller for proper chaining.
12 years ago
Andreas Granig
a6e94ba881
Simplify login form handler.
12 years ago
Andreas Granig
e7cafadcc3
First version of using rendering helpers.
12 years ago
Andreas Granig
d06c66626f
Add close button to modal form.
12 years ago
Andreas Granig
d823a0d113
Don't fade modal and use horizontal form.
12 years ago
Andreas Granig
aea25b930c
Use bootstrap widget to render forms.
12 years ago
Andreas Granig
a32be4d6f7
Further work in reseller forms.
...
Getting closer to a first concept of handling resellers.
12 years ago
Andreas Granig
b87c9ea71c
Add skeleton for reseller management.
12 years ago
Andreas Granig
51969bc880
Use proper auth realm for login action.
12 years ago
Andreas Granig
d2d0fef99b
Rework form rendering to use formhandler.
12 years ago
Andreas Granig
7ca48ece05
Provide proper form error fields.
12 years ago
Andreas Granig
be3a9f6521
Use formhandler for forms. WIP.
...
Needs adaptions to stylesheets to format error messages properly.
12 years ago
Andreas Granig
76e9d458d4
Add basic error handling.
...
Will be rebuilt using formhandler.
12 years ago
Andreas Granig
11fecbd7ae
Implement basic authentication logic.
12 years ago
Andreas Granig
5e9ccf605f
Fix content-type for woff font files.
12 years ago
Andreas Granig
063aa3ab79
Implement moose-based widget plugin architecture.
12 years ago
Andreas Granig
ee4de08f89
Implement naive plugin framework.
...
Will be refactored to use MooseX::Object::Pluggable.
12 years ago
Andreas Granig
f33ed45938
Restructure root/ and add wrapper and /test page.
12 years ago
Andreas Granig
4316ff59c4
Initial commit of catalyst skeleton.
12 years ago