Andreas Granig
ceb53a1837
MT#6693 Fix subadmin subscriber editing.
12 years ago
Andreas Granig
a3f944e777
MT#6693 Show extension vs number for customer subs
12 years ago
Andreas Granig
560bf47ab1
MT#6693 Fix PBX group editing.
12 years ago
Andreas Granig
9aead3f255
MT#6693 More subscriber editing rework.
...
- Update base cli of extensions on pbx admin primary number change.
- Use proper forms (hopefully) for editing various pbx subscriber types.
12 years ago
Andreas Granig
16b44673f4
MT#6693 Rework PBX subscriber/group handling.
12 years ago
Andreas Granig
f197d4a665
MT#6693 Fix profile(set) editing of pbx subs.
12 years ago
Andreas Granig
e98c94d1e8
MT#6693 Remove reseller "back" param workaround.
12 years ago
Andreas Granig
17d4140b64
MT#6693 Add separate form for subadmin pbx flow.
12 years ago
Andreas Granig
40663ebf56
MT#6693 Filter call-forwards for subs profiles.
12 years ago
Andreas Granig
9e57582662
MT#6693 Let admin/reseller clear subs profiles
12 years ago
Andreas Granig
202b9c9f39
MT#6693 Let subadmins edit subscriber profile.
12 years ago
Andreas Granig
8c867420e8
MT#6693 Rename profile categories to profile sets.
12 years ago
Andreas Granig
bc4bffc930
MT#6693 Align subs profile CRUD to catalog schema.
12 years ago
Andreas Granig
4d430b7578
MT#6693 Introduce profile catalogs.
...
Profiles are grouped into catalogs, so a subscriber should get a
catalog assigned, and from there he can choose his own profile.
12 years ago
Andreas Granig
a89b8ead71
MT#6693 Basic pref filter based on subs profiles.
12 years ago
Andreas Granig
4cf62bc8cd
MT#6693 Assign profiles to subscribers - WIP.
...
TODO:
- Subadmins must not see a "Create" button in profile selection
- Can sub(admins) unset a profile? What's the default?
12 years ago
Andreas Granig
54a56b5b00
MT#6693 Properly handle sub profile attributes.
...
Store selected attributes.
Let them be edited.
Correctly clone attributes.
12 years ago
Andreas Granig
a9ffa23288
Subscriber profile management. WIP.
12 years ago
Andreas Granig
f88eb321c2
MT#6687 Use transaction when cloning set.
12 years ago
Andreas Granig
88bcc049f5
MT#6731 Remove "back" param from form if posted.
...
Somehow this sneaked in from somewhere and so far only happens with
resellers, so make sure to just clear it if a form got posted.
12 years ago
Gerhard Jungwirth
2dd40a8999
MT#6497 API cftimesets
12 years ago
Gerhard Jungwirth
d4cf98646d
MT#6497 API cfdestinationsets
12 years ago
Gerhard Jungwirth
a7483ca351
MT#6497 API: callforwards, better validation
12 years ago
Gerhard Jungwirth
237ebdad95
MT#6665 show error on parsing billing fees
12 years ago
Gerhard Jungwirth
5ae0ed442b
MT#6497 API: edit cft ringtimeout
...
we also try to delete unused cf_mappings now
12 years ago
Gerhard Jungwirth
b343f16e5e
MT#6497 API: edit callforwards
...
we use the billing.voip_subscribers id now (as everywhere else)
12 years ago
Gerhard Jungwirth
fc1c89a7c1
MT#6497 API: get callforwards (simple)
12 years ago
Gerhard Jungwirth
741516634a
MT#6703 set static path correctly
12 years ago
Gerhard Jungwirth
c169414196
MT#6703 restore config paths to static and templates
12 years ago
Gerhard Jungwirth
4eeedf36fe
MT#6703 normalize CRLF to LF
12 years ago
Gerhard Jungwirth
3bdc7c74b9
MT#6703 fix merge conflict
...
and remove one more class dependency (see MT#6559)
12 years ago
Irina Peshinskaya
0c5c6ff0f8
Merge branch 'master' of git.mgm.sipwise.com:ngcp-panel
12 years ago
Gerhard Jungwirth
266d2eb48d
MT#6663 Make API more robust when contract has no billing_profile
...
This should at least not fail with 500
12 years ago
Irina Peshinskaya
84feeb1542
Merge branch 'master' of git.mgm.sipwise.com:ngcp-panel
12 years ago
Andreas Granig
f5ce7e9db5
MT#6461 Let resellers rebrand their panel
...
Implement view for resellers to edit their css.
12 years ago
Irina Peshinskaya
dcccfa9232
Merge branch 'master' of git.mgm.sipwise.com:ngcp-panel
12 years ago
Gerhard Jungwirth
6d17b70ab0
MT#6295 API: fix failing customers and contracts requests
...
validate max_subscribers (like in earlier versions) but don't
require product to be set
and typo
12 years ago
Irina Peshinskaya
021b0af430
Merge branch 'master' of git.mgm.sipwise.com:ngcp-panel
12 years ago
Gerhard Jungwirth
dfa5a2d1de
MT#6559 remove usage of CLASS
...
so in a future step we can remove this from
Sipwise::Base
12 years ago
Gerhard Jungwirth
9398c1083f
MT#6493 Start years selection in 2014
12 years ago
Gerhard Jungwirth
21a5d7ee37
MT#6195 API rwr: Give proper reseller access
...
see also MT#6479
12 years ago
Andreas Granig
861e38b649
MT#6283 Add more query params to existing colls
12 years ago
Andreas Granig
45a42b9b61
MT#6479 API: Allow resellers to access some funcs.
12 years ago
Andreas Granig
7cbb8633ab
MT#6461 Let admin rebrand reseller.
...
Reseller rebranding itself not yet there.
12 years ago
Gerhard Jungwirth
51b508fd60
MT#6443 Calculate dashboard costs correctly
12 years ago
Andreas Granig
32f704451a
MT#6459 Fix peering contract and peer auth pref.
...
- Properly call localization functions on error when changing
peering contract.
- Properly handle preference update in case of empty value.
Reported by Marc Storck on spce-users.
12 years ago
Irina Peshinskaya
bd7d18c49b
Merge branch 'master' of git.mgm.sipwise.com:ngcp-panel
12 years ago
Gerhard Jungwirth
d313bc7559
MT#4369 callflow: count total correctly
...
this group_by is ok, because it is optimized by mysql and the index on
call_id is still used
12 years ago
Andreas Granig
9274c0a82d
MT#5837 Fix syntax error in ru translation.
12 years ago
Gerhard Jungwirth
6f368e820f
MT#6195 API: rewriterule/rewriteruleset: DELETE
...
and remove some redundant checks (done by formhandler)
12 years ago
Gerhard Jungwirth
31e6c5fa71
MT#6195 API: ability to handle rules directly in rewriteruleset
12 years ago
Gerhard Jungwirth
edd904ce45
MT#6295 API: fix tests Prefer header no longer required
12 years ago
Gerhard Jungwirth
c7c1e012a9
MT#6195 API: adapt RewriteRules to search framework
...
see MT#6283
12 years ago
Gerhard Jungwirth
ede3d43a42
MT#6195 API: rewriterule/rewriteruleset: POST
12 years ago
Gerhard Jungwirth
11e421dc08
MT#6195 API: rename rewrite -> rewriterulesets
12 years ago
Gerhard Jungwirth
83fa4552f2
MT#4369 use min_timestamp
...
to really display the time, the call started
12 years ago
Gerhard Jungwirth
720e70b939
MT#4369 optimize callflow using a custom query
...
we need to disable the sorting option on the columns though
12 years ago
Gerhard Jungwirth
72ae4a5471
MT#4369 optimize mysql performance on callflow page
...
distinct is faster than group by here
drawback: we cannot select min(timestamp) anymore
query is still very slow, when filter is used
12 years ago
Irina Peshinskaya
34f77792c9
Merge branch 'master' of git.mgm.sipwise.com:ngcp-panel
...
Conflicts:
lib/NGCP/Panel/Role/API/Customers.pm
12 years ago
Andreas Granig
259cff4f18
MT#4235 Fix some Jitsi provisioning options.
12 years ago
Andreas Granig
7d76b46b10
MT#6283 Fix search framework to work on debian
...
- overriding item_rs doesn't work with that particular catalyst
version, use work-around.
12 years ago
Andreas Granig
11d83a7ead
MT#6283 Implement search-framework.
...
- let custom roles "derive" from main api role
- have an item_rs in each role
- call search logic after each item_rs call automatically
- render search query doc dynamically
12 years ago
Irina Peshinskaya
f0263620e4
Merge branch 'master' of git.mgm.sipwise.com:ngcp-panel
12 years ago
Gerhard Jungwirth
10b7ed52c4
MT#5599 fix role check
12 years ago
Gerhard Jungwirth
36f2be7689
MT#6195 API: rewrite: GET, PUT and PATCH implemented
12 years ago
Irina Peshinskaya
8508efc754
Merge branch 'master' of git.mgm.sipwise.com:ngcp-panel
12 years ago
Gerhard Jungwirth
8b7cdbb630
MT#6013 ignore duplicate insert errors
...
contract balances are created on demand, by different components so
race conditions can occur
12 years ago
Alexander Lutay
1c8ff01cc1
MT#5083 Fixes for several SendFax WEB interface issues
12 years ago
Irina Peshinskaya
f5b02e48f0
Merge branch 'master' of git.mgm.sipwise.com:ngcp-panel
12 years ago
Irka
3e393f1f5d
MT#5879 Now Preview works correct. Time to implement saving passed template.
12 years ago
Irka
631a069a02
MT#5879 Very basic logic without storing to db. But seems as will be able to make it generic against template types.
12 years ago
Andreas Granig
315fe4bce9
MT#6047 Implement system-wide field dev overview.
...
- Allows to search for macs
- Allows to delete devices on a global level, if needed
12 years ago
Andreas Granig
9b9b4c0628
MT#5601 Update field-device lines on model updates
...
- Update line ranges on model edit instead of re-creating them
to avoid dropping line range assignments of field devices
- Remove field device assignments which are out of key ranges
or use a unsupported feature after the model update.
12 years ago
Andreas Granig
432080d384
MT#5929 More external_id fixes.
...
Set external_id to NULL in db if it's empty.
Properly clear ext_xxx_id preferences if external_id gets unset.
12 years ago
Andreas Granig
4456bd02e4
MT#5929 Fix ext_subscriber_id handling.
...
When created via customer view, use external_id from form.
12 years ago
Irka
9b60794394
MT#5879: Fix applying empty search for admin
12 years ago
Irka
b61732daa5
MT#5879: Failed with condition unification for reseller_id of contracts. Return to double search using to construct query.
12 years ago
Irka
fb891ee0ed
Save state with incorrect, but fast svg template apply
12 years ago
Andreas Granig
74aeb7938d
MT#5929 Fix lock, ext_xxx_id and dbalias handling.
...
- ext_subscriber_id and ext_contract_id preferences weren't populated correctly.
- subscriber lock preference wasn't populated correctly
- old dbalias entries weren't cleared correctly for API calls
12 years ago
Irka
e923b71022
Merge remote-tracking branch 'origin' into ipeshinskaya/InvoiceTemplate2
12 years ago
Andreas Granig
d445274d1d
MT#5967 API: validate allowed ip entries.
12 years ago
Andreas Granig
c61b9eec5d
MT#3933 API: Handle subscriber lock/termination
12 years ago
Andreas Granig
71b8d2e957
MT#5967 Validate (man_)allowed_ip input.
...
Check for valid v4/v6 address and optional netmask.
12 years ago
Victor Seva
4b2f507219
MT#5835 Spanish translation update
12 years ago
Andreas Granig
f7de0b6564
MT#5967 Perform trusted source ip/net validation.
12 years ago
Alexander Lutay
5be3f87cad
MT#5835 Fixed Spanish datatables translations.
12 years ago
Andreas Granig
da79426c00
MT#3933 API: Implement subscriber preferences.
...
While at it, combine preference handling for subscribers, domains
and peers into a single role.
12 years ago
Andreas Granig
eb1464f558
MT#3925 Return json error for 403/404 on /api/.+
...
Return as usual a json struct with code and message under the /api/ path.
Otherwise an API client would get the html pages, which is
pretty pointless.
12 years ago
Andrew Pogrebennyk
95cac29b6f
MT#5837 Unify some terms; improve subscriber details look.
12 years ago
Alexander Lutay
c754afff57
MT#5837 Add Russian localisation
...
Many tnx to Andrew Pogrebennyk!
12 years ago
Andrew Pogrebennyk
d713bdc8c1
MT#5835 Translate javascript datatables file to Spanish.
12 years ago
Andreas Granig
2f749a341a
MT#3933 API: add subscriber editing via PUT/PATCH
12 years ago
Victor Seva
2e0bbde861
MT#5835 Spanish translation update
12 years ago
Victor Seva
0bf4d26d3d
MT#5835 Spanish translation update
12 years ago
Victor Seva
6d5ec218e8
MT#5835 Spanish translation update
12 years ago
Andreas Granig
bc08567683
MT#5811 Properly set websocket paths.
...
To work around ssl certificate issues with wss connections, use
a single entry point for wss to the system and let nginx do the
internal proxying to the correct addresses.
12 years ago
Irka
77136247f0
Invoices - a little bit more clean. But still DB is fake, and columns titles are interesting to think about more.
12 years ago
Irka
5818d51230
test commit
12 years ago
Andreas Granig
0218de9cc0
MT#5833 Update italian translation.
12 years ago
Victor Seva
ca4df9cfc2
MT#5835 Spanish translation by Jon
12 years ago
Andreas Granig
0f26d8fcbe
MT#3961 Update German localization.
12 years ago
Andreas Granig
1f9e407377
MT#3925 API: more doc and description fixes.
12 years ago
Andreas Granig
2c49abb49e
MT#3925 Add more field descriptions to forms.
12 years ago
Andreas Granig
c799df3ebd
MT#3925 API: dynamically render API documentation.
12 years ago
Andreas Granig
9587330201
MT#5251 Optimize billing fees upload.
...
Bring down upload time from 180s to 16s by optimizing purge of existing
ones (one query instead of one-by-one deletion) and optimizing upload
in batch (one query instead of one-by-one deletion).
12 years ago
Andreas Granig
84e465fb21
MT#3961 Add Italian translation.
...
Also prepare Spanish and Russian translation files for DT.
12 years ago
Gerhard Jungwirth
f99ce65102
MT#5859 let subscriber change his webpassword
12 years ago
Gerhard Jungwirth
4e6e9efb92
5861: remove unused fields from SubscriberEdit
...
this failed, because we tried to validate reseller
12 years ago
Andreas Granig
8c3a279247
MT#5473 Fix deleting peering groups.
...
Properly propagate deletion of hosts and their prefs, as triggers
don't hit in if they are deleted via constraints, so they leave
orphaned entries in the kamailio db.
12 years ago
Gerhard Jungwirth
360d622bcc
MT#3961 check language before login, map en to i-default
...
otherwise a priority of en is not considered
12 years ago
Andreas Granig
b88d36bdf0
MT#5083 Implement sendfax in ngcp-panel.
12 years ago
Andreas Granig
43291e9457
MT#5823 Allow underscore in billing profile handle
12 years ago
Andreas Granig
fbecee5d0e
MT#3961 Prepare languages it, es and ru.
12 years ago
Andreas Granig
35254456d0
MT#3961 Update German translation.
12 years ago
Andreas Granig
eaad8dfda5
MT#3961 Rework German localization.
...
Some fixes along the path where strings where not prepared for
localization yet, or element widths were too small.
12 years ago
Andreas Granig
33001ef88a
MT#5811 Prettify roster and add chat window
12 years ago
Andreas Granig
d1bcc66639
MT#5811 Basic framework for sip/xmpp via WS
12 years ago
Andreas Granig
8544fd0989
MT#3933 API: add form for subscriber validation.
12 years ago
Andreas Granig
d508a519c8
MT#3933 API: tighten subscriber creation.
12 years ago
Andreas Granig
aef3a499a3
MT#5797 Skip Link hdrs for fetching collections.
...
Too many headers break web servers (and probably UAs).
12 years ago
Gerhard Jungwirth
cc5d36d0a0
MT#3961 Localize the menu title "Language"
12 years ago
Gerhard Jungwirth
ede44ba653
MT#3961 automatic extraction of formhandler strings
...
it is important, that all form work without ctx available, so we add a check
in them
12 years ago
Gerhard Jungwirth
4ab0097744
MT#3961 translate HTML::FormHandler forms
12 years ago
Gerhard Jungwirth
8981667b77
MT#3961 Translate Preference groups
12 years ago
Gerhard Jungwirth
f7d4d8bb3d
MT#3961 I18N-ize missing strings
12 years ago
Gerhard Jungwirth
d989abc8f9
MT#3961 Translate everything
12 years ago
Gerhard Jungwirth
9040831ecd
MT#3961 more translations
12 years ago
Gerhard Jungwirth
1f37a80b84
MT#3961 Provide Dropdown to change the language
...
We save this setting in a session variable and a cookie
valid for 3 months
12 years ago
Gerhard Jungwirth
a272512298
MT#3961 Prepare to localize DB-Strings
...
For now, we ignore square brackets
12 years ago
Gerhard Jungwirth
1bf73a7bb6
MT#3961 Prepare for localization
12 years ago
Andreas Granig
e86a5d88f8
MT#5741 Allow upperchase in subscriber username
12 years ago
Andreas Granig
cd155992ca
MT#5661 API: fix prepaid flag changes.
12 years ago
Gerhard Jungwirth
029c51fad1
MT#5661 change selection of customers when bprof is updated
...
only those customers which have this billing profile
currently active are considered
this concerns the change of the prepaid flag
12 years ago
Andreas Granig
f31c2fcc88
MT#5661 Update prepaid pref on bilprof change
...
If prepaid flag is changed in billing profile, all subscribers
of all contracts currently having this profile are updated.
If customer changes from prepaid profile to postpaid and vice versa,
all subscribers of this contract are updated.
If subscriber is created either in subscriber or customer view,
the prepaid pref is set if billing profile of its customer is
prepaid.
12 years ago
Andreas Granig
6cd4ef04f1
MT#5629 Fix setting external_id in customer ctx.
12 years ago
Andreas Granig
6e60f43306
MT#5599 Fix pwd-based api auth.
12 years ago
Andreas Granig
6a9f4559b7
MT#5599 API: remove middleware handling.
12 years ago
Andreas Granig
71658e12a7
MT#5599 Rework auth/authz for pwd-based API access
...
Cleanup unnecessary realms.
Use roles instead of realms for authz.
HTTP basic auth for api access.
Use admin/reseller roles instead of api_admin/api_reseller.
Fix API::Root invalid_user detaching.
12 years ago
Andreas Granig
0fd10e018a
MT#5575 Clear audio cache only on specific service
...
Use appserver for system sets and pbx for customer sets.
12 years ago
Andreas Granig
b098c10f87
MT#5575 Properly clear pbx audio cache for moh/pbx
12 years ago
Andreas Granig
de9fc52c64
MT#5575 Clear audio cache on sems-pbx too.
12 years ago
Andreas Granig
ce01267079
MT#3933 API: Check for max_subscribers on create
12 years ago
Andreas Granig
aa5eee69a0
MT#5575 Migrate clear_audio_cache to Sems helper.
12 years ago
Andreas Granig
9651c81852
MT#3933 API: fetch and create subscriber. WIP.
...
Doesn't handle PBX stuff yet, only basic subscriber stuff.
13 years ago
Andreas Granig
ce93199ff8
MT#5349 API: return reseller_id for domain.
13 years ago
Gerhard Jungwirth
ef6bfee65b
MT#4967 update cloud_pbx_base_cli and other settings on cloudpbx-subscribers
...
This includes: primary_number, dbaliases, cfs
13 years ago
Gerhard Jungwirth
ef80d1967e
MT#4967 change primary number of extension-subscribers by extension
...
see comment 4967#c31031
13 years ago
Gerhard Jungwirth
b0d1d25301
MT#4967 update all cloudpbx-subscribers on change of head one
...
see comment 4967#c31031
13 years ago
Andreas Granig
1359aa556b
MT#5349 API: Implement special dompref removal.
13 years ago
Andreas Granig
ee9d4fab2f
MT#5349 API: Implement PUT/PATCH on special dprefs
...
For sound sets, allowed ips etc the update needs special treatment.
13 years ago
Gerhard Jungwirth
11841b2bba
MT#5465 preferences_enum stop using default_val
...
The real default enum option is the one with value set to NULL
13 years ago
Andreas Granig
8cdf9c7880
MT#5349 API: Implement GET for special domprefs
...
sound sets, rewrite rules, ncos and allowed ip groups require special
treatment when being fetched.
13 years ago
Andreas Granig
de6ac98ec9
MT#5349 API: Implement validation for dom prefs.
13 years ago
Andreas Granig
5929bcdc06
MT#5349 API: add method to fetch dompref meta data
13 years ago
Andreas Granig
a737e3f05e
MT#5349 API: skip updating prefs with null value
13 years ago
Andreas Granig
efafd55c87
MT#3931 API: Use TryCatch instead of Try::Tiny
13 years ago
Andreas Granig
e8fa8b2f9c
MT#5349 API: Implement domain preferences. WIP.
...
Missing sanity checks and special handling for certain preferences.
13 years ago
Andreas Granig
1d873fce27
MT#4229 Remove dump from logfile.
...
The stack-trace is undecodeable from syslog, and it usually doesn't
provide any additional infos on top of the actual error message.
13 years ago
Andreas Granig
329b831918
MT#5199 Offer API CA Cert for download too.
13 years ago
Andreas Granig
883cd9a8b3
MT#5199 Store client cert in DB and offer P12 fmt.
...
For browser imports, you need a PKCS12 format, so offer the cert
in that format for download also.
13 years ago
Andreas Granig
12edcd6f01
MT#3929 Set sane expiry values for prod usage.
13 years ago
Gerhard Jungwirth
f316797857
MT#4967 "Unsteal" number on subadmin terminate
...
When a subscriberadmin terminates a subscriber, the alias_numbers should
move back to the subscriberadmin
13 years ago
Gerhard Jungwirth
dfe18e5648
MT#4967 Do not show password on edit
...
but update it, if one is supplied
sub edit_master is now explicitly denied to subscribers, as there is already
a lot of conditional logic there, we should consider to handle a logged in
subscriber separately. (This option is not exposed to subscribers anyway.)
See also 4967#c28533
13 years ago
Gerhard Jungwirth
9fed07646d
MT#4967 Disallow subscriberadmin to change status
...
see 4967#c28533
13 years ago
Gerhard Jungwirth
2c7a0c4e6b
MT#4967 Let subadmins steal numbers
...
A subadmin can use the field alias_select to select any number of alias
numbers, which he is allowed to manage. If he selects one, it moves
to this subscribers alias_numbers. If he unselects one, it moves to his
own alias numbers.
13 years ago
Andreas Granig
5e5fbeeda6
MT#5307 Fix GD::Simple to avoid race conditions
13 years ago
Andreas Granig
7e3a2997f4
MT#5355 Implement peer_auth api calls to sems.
13 years ago
Andreas Granig
58adac5da9
MT#5349 API: Implement GET/DELETE for domain item.
...
There is no PUT/PATCH as we are not allowed to change the domain itself.
TODO: relations to preferences!
13 years ago
Andreas Granig
9592c6b3b7
MT#5349 API: Implement collection part for doms
13 years ago
Andreas Granig
52ea49a1bc
MT#4967 Fix invalid "has label" statement.
...
The label is in the form, not in the field. It leads to an exception at least.
13 years ago
Andreas Granig
1656f051d0
MT#5101 Mark primary numbers in voip_dbaliases.
13 years ago
Andreas Granig
456df97df0
MT#3931 API: implement customer contract handling.
13 years ago
Andreas Granig
3a07a53967
MT#3925 API: Merge branch 'agranig/rest'
13 years ago
Andreas Granig
3db6117dfd
MT#3931 API: Implement customer contacts.
...
Move update parts into role.
Implement customer contacts.
13 years ago
Andreas Granig
5c5668da28
MT#3949 API: Implement reseller resource handling.
13 years ago
Andreas Granig
c0a6264507
MT#5299 API: Implement implicit zone def for fees
13 years ago
Andreas Granig
d12520982f
MT#5299 API: more billing tests and bug fixes.
13 years ago
Andreas Granig
b3de58ff9c
MT#5299 API: Implement billing zone handling.
13 years ago
Andreas Granig
bdb129ec67
MT#5299 API: Add billing fee handling.
13 years ago
Andreas Granig
cd2d9e47aa
MT#5255 Fix boolean handling and HFH validation
13 years ago
Andreas Granig
5ba6edcadc
MT#5299 API: add first tests for billing profiles.
13 years ago
Andreas Granig
829b432b47
MT#5299 API: PUT/PATCH/GET billingprofiles item
13 years ago
Andreas Granig
3ce79d6703
MT#5299 API: GET and POST billing profiles.
13 years ago
Andreas Granig
45a460a1ce
MT#3949 API: implement contracts handling.
13 years ago
Andreas Granig
14d9374e8c
MT#3949 API: move common contract stuff to role.
13 years ago
Andreas Granig
b64266b969
MT#3949 API: Implement base-line for sys contracts
...
Allows to post, put, patch and get peering and reseller contracts.
Needs tests.
13 years ago
Andreas Granig
7a782eb4fb
MT#5255 API: Create roles for resources.
...
Collections and Items have common functions (e.g. hal_from_xxx),
so move them into separate roles.
13 years ago
Andreas Granig
458852f70e
MT#5255 API: use local time for timestamps.
13 years ago
Andreas Granig
02998dd688
MT#3949 API: base-line for system contracts.
13 years ago
Andreas Granig
6bb57f08f2
MT#3997 Finish API skeleton.
...
We should now have working baselines for
- collections (SystemContacts)
- items (SystemContactsItem)
with support for
- collections: OPTIONS, HEAD, GET, POST
- items: OPTIONS, HEAD, GET, PUT, PATCH, DELETE
covered by according tests and with a proper API documentation.
13 years ago
Andreas Granig
f4a9e39a8a
MT#5255 API: move contacts to systemcontacts.
...
Clearly distinguish between systemcontacts (those without reseller) from
customercontacts (those with resellers). Separating them frees us from
having to handle reseller_id magic.
13 years ago
Andreas Granig
beb93987eb
MT#3997 API: move req/res log functions to Role.
13 years ago
Andreas Granig
a135c00190
MT#5255 API: prevent DELETE of used contact
13 years ago
Andreas Granig
a6c3ecb580
MT#5255 API: Implement DELETE for contacts
13 years ago
Andreas Granig
2c51cbd0fb
MT#3997 Fix PUT with reseller_id=null for contact
13 years ago
Andreas Granig
9aa1560619
MT#3997 Dynamically return collections relations.
13 years ago
Andreas Granig
7b8092f702
MT#3997 Get rid of the remaining tt xml responses
13 years ago
Andreas Granig
5e3b642107
MT#5215 Replace NoPassword cred handler
...
In our catalyst version, there is no NoPassword credentials handler,
so use the Password handler instead.
13 years ago
Andrew Pogrebennyk
7587e666d7
MT#5193 MT#5195 Fix "Use of uninitialized value" when external_sbc is empty
13 years ago
Andreas Granig
515990623f
MT#3997 Fix general collection/item handling.
...
Use paging.
Start adding tests for contacts/ collection.
Move more common functions to Role.
Use proper forms for field checking.
13 years ago
Andreas Granig
a4a9f703bd
MT#3997 Remove QueryParameter dependency.
13 years ago
Andreas Granig
fd19cf79c1
MT#3997 Return JSON on precondition failures.
13 years ago
Andreas Granig
0fb58d2668
MT#3997 Use JSON in OPTIONS methods.
13 years ago
Andreas Granig
40ecb1e91d
MT#3997 Distinguish collection and item in URI
...
Use /api/foo/ for collections and /api/foo/{:id} for items to easily
distinguish between them. Also, we want to use query params for limiting
the collections, e.g. /api/foo/?name={:name}&something={:else}, which in
turn returns a filtered collection again. This makes it difficult then to
fetch items via /api/foo/?id={:id}, so use /api/foo/{:id} instead.
Also move rest of common functions into API Role.
13 years ago
Andrew Pogrebennyk
d52049a8f7
MT#3997 MT#5193 Fix build_via_routes with only one external sbc.
13 years ago
Gerhard Jungwirth
f11ae484ef
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)
13 years ago
Gerhard Jungwirth
83a4085255
MT#5147 Proper DateTime deflation in Forms
13 years ago
Andreas Granig
6d3fa76e7f
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
13 years ago
Gerhard Jungwirth
6524548201
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)
13 years ago
Gerhard Jungwirth
fdb2b49e1f
MT#4693 show contract balance in euros instead of cents
13 years ago
Gerhard Jungwirth
4fa47ff2b0
MT#4767 Show missing registered devices
...
on a non-multidomain installation, dont check for domain
in customer details - subscribers - registered devices
13 years ago
Andreas Granig
2bff65040d
MT#5103 Add date picker to call distribution graph
13 years ago
Andreas Granig
b84bc50b14
MT#5131 Make CSV fee parsing more tight.
13 years ago
Andreas Granig
2ef9dc16b5
MT#4565 Fix read-only permissions.
...
Properly deny write ops for read-only admins and resellers.
13 years ago
Andreas Granig
59a75ed63e
MT#5103 Add basic call distribution graph.
...
Still needs date picker to limit range.
13 years ago
Gerhard Jungwirth
342ba867d7
MT#4967 Show primary number in subscriber list
...
The wrong relation was used here. Discovered during testing for ticket
MT#4967.
13 years ago
Andreas Granig
c88c69d322
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.
13 years ago
Andreas Granig
f8dfb8fcae
MT#5009 Use proper alias number sub-elements.
13 years ago
Andreas Granig
d62a5ac948
MT#5009 Fix syntax error.
13 years ago
Andreas Granig
4384ec33b2
MT#5009 Properly reuse alias numbers also.
...
Previously, we assumed they were already deleted in billing.voip_numbers,
which they're not (anymore).
13 years ago
Andreas Granig
2258395ed7
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.
13 years ago
Andreas Granig
e3ba8b4243
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.
13 years ago
Andreas Granig
059607a8c7
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.
13 years ago
Gerhard Jungwirth
2ada158ac6
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.
13 years ago
Gerhard Jungwirth
7a20e3fc70
MT#4967 Refactor Subscriber Forms
...
Move Field e164 (Compound) and alias_number (Repeatable) to own
Files because of multiple occurence.
13 years ago
Andreas Granig
afa196900c
MT#4971 Fix follow symlink sp-SELF in statistics.
13 years ago
Andreas Granig
332ad0ca3a
MT#4949 Use pbx-1 suffix for callflows.
13 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.
13 years ago
Andreas Granig
36f6756079
MT#4955 Use cseq_method for subscriber captures.
13 years ago
Andreas Granig
097af29cb2
MT#4229 Still log the error causing a 500.
13 years ago
Andreas Granig
d2dfbeab1c
MT#4949 Use pbx in call flow graph.
13 years ago
Gerhard Jungwirth
3279897a1b
MT#4707 log IP on failed login
13 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.
13 years ago
Lars Dieckow
fbb03e359a
avoid db fetch for authenticated request
13 years ago
Andrew Pogrebennyk
76bf4a12c3
MT#4863 Grant access to Customer Settings for administrative subscribers.
13 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.
13 years ago
Gerhard Jungwirth
10cd46219c
MT#4369 Disable Timestamp search on Callflows
...
this created "min(timestamp) LIKE %search%" which is not valid SQL
13 years ago
Andreas Granig
10ddf43147
MT#4787 Send browser to PBX device when syncing
13 years ago
Andreas Granig
2ee40a3a6c
MT#3917 Show datetime in local timezone for DT.
13 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.
13 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)
13 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.
13 years ago
Gerhard Jungwirth
f16c1cfb5e
MT#4129 fix operator precedence
...
Check for diverging resellers when creating a customer
fails because == is evaluated before //
13 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
13 years ago
Gerhard Jungwirth
fa3c979fda
MT#4659 preserve product, when not set by form
13 years ago
Andreas Granig
58b496065e
MT#4657 Make ac an empty string if undef.
13 years ago
Andreas Granig
96edceda6d
MT#4655 Show reseller name in device mgm.
13 years ago
Lars Dieckow
e215422b89
MT#4609 extend checks when editing the own admin user to prevent locking oneself out
13 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.
13 years ago
Andreas Granig
0feebeb8a5
MT#4533 Don't transcode MOH files for PBX.
13 years ago