Commit Graph

739 Commits

Author SHA1 Message Date
Thomas Lamprecht
b9a5e7079d quarantine: display how many mails are selected
Mostly taken from a bigger patch of Dominik, for now lets just show
the count (release is near) and add some padding

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-04-24 16:16:37 +02:00
Dominik Csapak
3d309d74b9 MailTracker: sort by time by default
so that the mails get shown in correct order

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-04-24 16:09:56 +02:00
Dominik Csapak
4fd7bd9b44 MailTracker: let panel decide about width
else, the fieldLabels might be cut off

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-04-24 16:09:56 +02:00
Dominik Csapak
227ddd7a93 Dashboard: remove autoLoad from updateStores
those stores all have 'autoStart' set, which loads the store anyway
as soon as possible. this seems to fix some store load issues

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-04-24 16:09:56 +02:00
Thomas Lamprecht
8ffa8523c9 mail proxy options: add maxValue config for netmasks
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-04-20 17:39:53 +02:00
Stoiko Ivanov
62a6bcc8aa MailProxyOptions: add greylist enhancements
This patch adds 3 new configuration settings to the MailProxy Options Tab, for
comfortably enabling greylisting for IPv6 addresses, and configuring the
netmask used for greylist matching

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2020-04-20 17:37:46 +02:00
Dominik Csapak
853ecba79d add Language selection in user menu for admin view
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-04-20 12:14:32 +02:00
Dominik Csapak
903548bc3c use LanguageEditWindow from widget-toolkit
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-04-20 12:14:32 +02:00
Stoiko Ivanov
bafcdcf887 Add before_queue_filtering checkbox"
This reverts commit a89fcfd62b.

Since the pmg-log-tracker is now able to parse logs with before queue
we can add the checkbox for enabling it again.

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2020-04-17 15:30:55 +02:00
Dominik Csapak
11f43687bb align spacing with pve
it really irked me that the buttons/text was a few pixels off in pmg....

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-04-16 15:42:02 +02:00
Dominik Csapak
6886c8b485 MainView: make UserName a button/menu
with logout as only option.

This makes the header style again consistent between
pmg quarantine/pmg admin/pve

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-04-16 15:42:02 +02:00
Dominik Csapak
74468b03a5 add 'Match Archive Filename' to list of what objects
and add an editor for it

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-04-16 15:02:32 +02:00
Dominik Csapak
60652b756a fix MailInfo update without data
e.g. when the user changes the email while having a mail selected,
it gets unselected (albeit briefly) and update will be called
with 'undefined'

this throws an error, so prevent this by always supplying an object

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-04-16 14:44:58 +02:00
Dominik Csapak
590a3b9fa3 fix #2667: and 'language' option to QuarantineView
this moves the the login name to a button/menu like we have for pve
and adds a 'language' option there

this is useful for uses which explicitely login via ticket, which makes
it hard to change the language otherwise
(they'd have to logout, change the language, go to their mail client
and click again the link for the quarantine; also most users do not know
that they *can* change the language when they are logged out)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-04-16 11:00:29 +02:00
Dominik Csapak
76d5a73865 QuarantineList: rename from/to to since/until
To not confuse 'from' with the 'email from'
partly fixes #2678

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-04-15 14:07:46 +02:00
Dominik Csapak
9133f72f56 QuarantineList: improve savedPosition behaviour
by not saving the position across time or email changes, since that
makes no real sense. (The user cannot really know what will be selected,
in contrast to when the mails will be deleted etc.)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-04-15 14:07:46 +02:00
Dominik Csapak
61a8a658d2 fix #2680: make Quarantine E-Mail list searchable
using an explicit load on time change and queryMode 'local', we can
enable typeAhead (and related settings) to let the user type in an email
which will be autocompleted by the loaded list.

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-04-15 14:07:46 +02:00
Dominik Csapak
72d8403cb6 Quarantine: set mailinfo visible only on html preview
We did already hide it when toggling raw/html, but when choosing raw
and changing the mail, it was again set to visible.
This patch fixes that by always taking 'me.raw' into account.

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-04-15 14:06:43 +02:00
Thomas Lamprecht
4935e8fb22 qurantine: hide mailinfo in raw mode
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-04-15 12:59:38 +02:00
Thomas Lamprecht
b6b5d7184d mailinfo: ellipsize info fields after 100 characters
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-04-15 12:59:10 +02:00
Thomas Lamprecht
ca33688b5d mailinfo: fix bold in firefox and add some margin
As the <b> tag in combination with extjs resulted in a "font-weight:
bolder" setting which was not rendered correctly in Firefox.
Use our own css class to set font-weight to bold.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-04-15 12:57:31 +02:00
Dominik Csapak
ac6c1fb818 fix #2676: add MailInfo box on Quarantine Views
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-04-14 15:00:33 +02:00
Dominik Csapak
54d0de79a7 add 'MailInfo' Widget
This will be used to show the Subject and From on E-Mail Previews.

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-04-14 15:00:33 +02:00
Stoiko Ivanov
816483a244 ClamAVDatabase: add scriptedupdates checkbox
to provide users with a comfortable way of changing between incremental
and complete signature download in case one of the methods has a problem.

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2020-04-14 14:37:06 +02:00
Stoiko Ivanov
650d81000a Add port to SpamQuarantineOptions
If the quarantine is made available via reverse proxy, it sometimes
is bound to a different port (e.g. on 443 for firewall policy reasons)

The use-case seems common enough to justify exposing the parameter via
GUI.

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
Reviewed-By: Dominik Csapak <d.csapak@proxmox.com>
Tested-By: Dominik Csapak <d.csapak@proxmox.com>
2020-04-07 13:58:12 +02:00
Stoiko Ivanov
0f5a92f010 rename TLSDomain to TLSDestination
with the changes for fixing #1948 it is now possible to define tls policies
for destinations (remote domains or next-hop transports) instead of only for
Domains.
This patch reflects this addition by renaming all occurences of Domain with
Destination.

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
Reviewed-By: Dominik Csapak <d.csapak@proxmox.com>
2020-03-24 18:10:51 +01:00
Stoiko Ivanov
06c37f16e8 TLSDomains: rename domain to destination
in order to stay consistent with the change in pmg-api

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
Reviewed-By: Dominik Csapak <d.csapak@proxmox.com>
2020-03-24 18:10:51 +01:00
Dominik Csapak
a144e5343d fix #2632: use alternative api call for user black/whitelist
which expects the entry as parameter instead of part of the path
this allows all special characters to be included in the entry

in the url, some characters were problematic (e.g. '/') and not properly
handled by the api in the backend

we use Ext.applyIf (which copies the non-existant entries to params) here
instead of getting the ExtraParams from the proxy and setting '.address'
(that would modify the ExtraParams of the proxy and send unwanted
parameters to subsequent api calls like the list-loading)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-03-11 12:07:29 +01:00
Stoiko Ivanov
4460d9531d Add flex to domain lists
By adding a flex value to the domain list items they become scrollable, should
the grid contain more entries than fit on the screen.

This fixes #2579.

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2020-02-04 08:51:32 +01:00
Thomas Lamprecht
156bd3f883 deferred mailq: make column widths responsive
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-01-21 11:08:48 +01:00
Stoiko Ivanov
84d84db140 use format_size renderer for size in deferred queue listing
The listing of the contents of the deferred queue gets its data via
postqueue (1) json output, which lists the size in bytes.
Change the column renderer to use the Proxmox.Utils.format_size
renderer, which computes a sane human readable unit.

Tested by sending a mail, which gets deferred and comparing the
output with the size of the file on disk in
'/var/spool/postfix/deferred'

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-01-21 11:06:43 +01:00
Thomas Lamprecht
7de008cc1c dkim selector: use autoLoad config of store
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-01-21 09:19:35 +01:00
Stoiko Ivanov
39b73de789 dkim: list all available selectors
by making the selector field a ComboBox, users can pick from any existing
selector without changing it, replace it or create a new one.

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2020-01-21 09:08:41 +01:00
Stoiko Ivanov
b07fc43096 fix #2504: add checkbox for overwriting selectors
Add a checkbox with descriptive label for the force parameter of
config/dkim/selector.

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2020-01-21 09:08:41 +01:00
Thomas Lamprecht
ae377bbed1 transport edit: hide/disable Use-MX for LMTP
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-01-10 14:26:27 +01:00
Thomas Lamprecht
00b648d2c9 transport: add real PMG.TransportEditor definition
instead of hacking it together inside the gridpanel

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-01-10 14:25:17 +01:00
Thomas Lamprecht
c502e50c6c transport: code cleanups
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-01-10 14:24:36 +01:00
Thomas Lamprecht
1f6e503c74 MailProxyRelaying: fix indentation and style
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-01-10 12:00:04 +01:00
Julian Zehnter
d895a7463c Feature #2438 add support for lmtp delivery to downstream servers
new feature lmtp support for simplifying setups
with lmtp capable downstream servers (e.g. dovecot)
Postfix support lmtp out of the box and can now deliver
mails directly to internal mailbox servers without
one more smtp connection

extending the gui code for new lmtp option:
MailProxyConfiguration & MailProxyConfiguration:Transport:
Adding combobox "smtp" / "lmtp" as a new option
Generalizing some "SMTP" keywords

Signed-off-by: Julian Zehnter <pmg-devel@j-z.it>
2020-01-10 11:58:29 +01:00
Dominik Csapak
0391bb7a4c add browser cache workaround
to prevent indefinite caching of the js files in the browser,
we add the package version to the js files, this will be read
by the pmgproxy and added as template variables

we use those to add the version to the get parameter and
thus tell the browser the file has changed

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-11-28 11:29:05 +01:00
Thomas Lamprecht
07a9b44595 quarantine: set mail-dowanload link's download attribute again
to ensure the browser sets the download filename we need to set the
link elements download attribute[0].

fixes commit 41a290e3f0

[0]: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-22 12:21:41 +01:00
Stoiko Ivanov
53d909f713 add onlineHelp anchors to SpamDetectorCustom
Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2019-11-20 11:43:40 +01:00
Thomas Lamprecht
5883753d3c add onlineHelp anchor to ndr_on_block
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-20 11:43:30 +01:00
Stoiko Ivanov
a89fcfd62b Revert Adding of before_queue_filtering checkbox
This partially reverts commit 28c12d957f.

Given that the before queue filtering currently breaks pmg-log-tracker, and
the Tracking Center is one of the central features of PMG, we should
release the before queue support as experimental feature for now.

That way users who really want to use it are a bit more aware, that
log-tracking will currently not work on the GUI.

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2019-11-18 14:37:57 +01:00
Stoiko Ivanov
28c12d957f Add ndr_on_block and before_queue options
Generation of NDRs on block and before queue filtering are configured
via 2 boolean flags and belong to the MailProxyOptions.

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2019-11-15 12:46:16 +01:00
Stoiko Ivanov
d545f59e01 fix 1652: rename NDR to empty senders in GUI
Bug 1652 indicates a slight misalignment of our use of NDR with the
expectations users might have:
We use it throughout our codebase meaning - mails with empty senders (NDRs
a.k.a bounces do most often have an empty sender (to prevent mailloops) but
quite a few messages being directly non-delivery-notifications also use an
empty sender (since noone would be reading the automated bounces for them) -
e.g. our quarantine report)

By renaming the GUI-display field it should be more clear to users of the
Tracking center.

The fix is left at the GUI-level, since the use of ndr for empty sender is
quite consistent throughout our complete stack (in that case from the GUI, via
pmg-api down to the pmg-log-tracker) and I don't see the direct benefit for
renaming it everywhere (and am lacking a better concise phrase for "empty
envelope sender").

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2019-11-15 10:14:35 +01:00
Dominik Csapak
e2c7198f53 add Custom Scores panel to the Spam Detector
with this panel, users can manually override a rule score for
SpamAssassin rules. This can be useful sometimes, e.g. if
a certain rule always triggers in a certain environment which
is considered spam by the SpamAssassin rules

after adding/editing a rule, we show diff, similar to the network
panel, and offer a button to apply those changes (and restart
pmg-smtp-filter). the changes can also be reverted

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-11-15 10:01:17 +01:00
Dominik Csapak
38771d946b fix broken maillist when deleting last mail in list
on deleting the last mail in the list, the selection is empty and
the access below to 'rec.data.id' breaks, leaving the maillist broken
(until the user changed the panel or reloaded)

so give rec an empty fallback object and check if there is a 'data'
property and use that, otherwise set the id to the empty string

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-By: Stoiko Ivanov <s.ivanov@proxmox.com>
Reviewed-By: Stoiko Ivanov <s.ivanov@proxmox.com>
2019-11-14 13:34:56 +01:00
Thomas Lamprecht
550a2c5b7c SpamQuarantine: onSelectMail: re-use queried selection
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-25 12:37:05 +02:00
Thomas Lamprecht
41a290e3f0 SpamQuarantine: simplify download button by binding its href config
This avoids all the strange click event hack. We already have a
button where the users needs to click on, so just use that.

A viewModel with a downloadMailURL formula to assemble the href
allows us to just bind the "href" config from the Download button,
and be done with it..

refactors commit 7ad0de10d6

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-25 12:23:43 +02:00
Dominik Csapak
8b1d19f3a1 SpamQuarantine: fix download of large emails
since datauri downloads are size limited (2MB in chrome), we have
to use another method, and instead of working around in the gui
(e.g. by using URL.createObjectURL) make use of the existing download
code in the api, which should have better compatibility
(and omits the whole raw -> json -> raw -> base64 conversion chain from
file to download)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-By: Stoiko Ivanov <s.ivanov@proxmox.com>
Reviewed-By: Stoiko Ivanov <s.ivanov@proxmox.com>
2019-10-25 09:19:05 +02:00
Dominik Csapak
e0e9a1bedf ActionList: add info about editable state
and set state of the buttons accordingly

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Reviewed-By: Stoiko Ivanov <s.ivanov@proxmox.com>
Tested-By: Stoiko Ivanov <s.ivanov@proxmox.com>
2019-10-23 19:18:39 +02:00
Dominik Csapak
b759e68998 ActionList: make labels in editwindow consistent
to make it consistent with the grid in which the actions get shown,
since we have a different column with the name 'description' there
already

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-10-23 16:06:20 +02:00
Stoiko Ivanov
295fbab8a1 Add DKIM Tab to MailProxy configuration
This adds another panel to the MailProxy configuration for DKIM-Settings.
Additionally the index-template now includes the css-file from
proxmox-widget-toolkit (for the pmx-hint user-class), needed in the
Settings-panel.

The Panel consists of 2 Grids:
* DKIM Settings
* DKIM Domains

DKIMDomains is a list of domain, currently like RelayDomains (hence the
code-reuse).

The DKIM settings grid binds to the dkim-related settings in pmg.conf, but the
edit-window for the selector uses the /config/dkim/selector route in the
PMG-API.

Additionally 2 checks for invalid configurations are excluded (you cannot
enable DKIM-Signing without creating a private key first)

The warnings were inspired by PVE's handling of EFIDisks and BIOS.

Finally the 'View DNS Record' button displays the DKIM TXT record for the
current key in the same format that opendkim-genkey writes it out.

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2019-10-23 11:51:26 +02:00
Stoiko Ivanov
35cf797dff MailProxyConfiguration.js: whitespace cleanup
Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2019-10-23 11:50:07 +02:00
Stoiko Ivanov
e4b744c3f9 refactor RelayDomains:
by making the base-url, the description text and the online help anchor static
fields we can override it and reuse the component for DKIMDomains.

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2019-10-23 11:50:04 +02:00
Dominik Csapak
0023ef6ab2 add Attachment Quarantine
the Quarantine part is mostly copied from VirusQuarantine and adapted
the AttachmentGrid is inspired by the SpamScore list

this adds a new quarantine type 'Attachment' in the gui, where the admins
can review and control the mails in the attachment quarantine

it also shows a list of attachment/parts and a link where they can
be downloaded (in case the admin want to only forward a single
attachment or review the file in detail)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Reviewed-By: Stoiko Ivanov <s.ivanov@proxmox.com>
Tested-By: Stoiko Ivanov <s.ivanov@proxmox.com>
2019-10-17 15:25:31 +02:00
Dominik Csapak
19b455dd5c add render_filetype
this will be used to show the icon in the attachment list

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Reviewed-By: Stoiko Ivanov <s.ivanov@proxmox.com>
Tested-By: Stoiko Ivanov <s.ivanov@proxmox.com>
2019-10-17 15:25:31 +02:00
Dominik Csapak
572198b7e6 Action remove: add quarantine checkbox
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Reviewed-By: Stoiko Ivanov <s.ivanov@proxmox.com>
Tested-By: Stoiko Ivanov <s.ivanov@proxmox.com>
2019-10-17 15:25:31 +02:00
Thomas Lamprecht
d45be08eb8 Revert "add beta text with link to bugzilla"
This reverts commit 1a119c5248.
2019-08-23 10:24:23 +02:00
Thomas Lamprecht
0c503218e1 use 'Documentation' as name for the global docs button, mirroring PVE
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-08-14 10:26:05 +02:00
Stoiko Ivanov
1a119c5248 add beta text with link to bugzilla
for the upcoming BETA test-phase

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2019-08-12 16:05:17 +02:00
Dominik Csapak
5101a9f82e fix html entities in system report file
since the content of the window is encoded with 'Ext.htmlEncode'
we have to decode it with 'Ext.String.htmlDecode' (Ext.htmlDecode is
a deprecated alias for it) before downloading the file

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-08-09 09:22:17 +02:00
Stoiko Ivanov
9e9c9d2671 change display for 'archiveblockencrypted'
As described in the release notes of ClamAV 0.101.0 the legacy Option
ArchiveBlockEncrypted was used for blocking both encrypted archives _and_
documents. This patch reflects the change in the VirusDetectorOptions.

[0] https://blog.clamav.net/2018/12/clamav-01010-has-been-released.html

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2019-08-09 08:49:24 +02:00
Thomas Lamprecht
4da158ce09 adapt to new pmgcfg version/release semantic
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-25 18:56:38 +02:00
Dominik Csapak
4714e65d85 mobile: fix formajax event parameters for f7
framework7 changed those with 4.1.1

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-07-25 13:45:14 +02:00
Stoiko Ivanov
0729f168cf Make report labels more explicit
PMG (optionally) sends two kinds of reports:
* the reports to users, which mails of theirs are in the Spamquarantine
  (`pmgqm`)
* the reports about the System's state and performance to the Administrator
  (`pmgreport`)

Given that these get confused quite often, make their labels in the GUI
more explicit.

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2019-05-28 12:45:22 +02:00
Dominik Csapak
1b146c1093 use JournalView instead of LogView for syslog
and point to the new /journal api

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-05-16 13:21:51 +02:00
Dominik Csapak
3600c3c76a add LDAP+STARTTLS as ldap protocol
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-03-18 06:36:44 +01:00
Dominik Csapak
6bd27800dc add verify certificate checkbox for ldap
that defaults to on, this way we have a new default on the gui without
breaking existing installations

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-03-18 06:36:16 +01:00
Dominik Csapak
479e6fa224 fix #1945: enable dns names for ldap servers on gui
was only available in the backend, allow it also on the gui

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-03-18 06:35:34 +01:00
Dominik Csapak
a827641e33 fix gettext invocations
using gettext the way we did, broke the jsgettext.pl in proxmox-i18n
during a 'make update'

instead of using the template way, simply replace it by using plain
gettext as a function, this way we do not skip over the getttext uses
accidentally

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-03-07 14:25:33 +01:00
Dominik Csapak
c29d577dc9 fix wrong 'no subscription' toolbar
remove the toolbar altogether when there is a valid subscription,
since on every navigate to the page, framework7 shows it again

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-02-27 06:40:53 +01:00
Dominik Csapak
35241008bf add system report to gui
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-02-26 12:57:15 +01:00
Dominik Csapak
d387246f48 show emptyText when no users are available to select
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-02-26 10:52:13 +01:00
Dominik Csapak
c1f045cdf3 limit userlist to the respective list
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-02-26 10:51:58 +01:00
Dominik Csapak
c41c360014 allow multiselect for user white- and blacklist
this allows to delete multiple entries at once

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-02-26 10:51:32 +01:00
Dominik Csapak
7ad0de10d6 add download button to spam quarantine preview
so that users can download the file directly

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-02-26 10:46:29 +01:00
Dominik Csapak
4eab05c273 make who regex tests anchored
they are in the rule system, so let the users test it correctly

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-02-25 06:15:43 +01:00
Dominik Csapak
7a0d854095 mobileui: fix list height
the items have different heights depending on theme and type
so use the correct ones

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-02-20 09:20:11 +01:00
Dominik Csapak
d0d381a817 add missing encodeURIComponent
some data contains special characters that might make problems in urls,
so encode them

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-02-20 09:19:59 +01:00
Dominik Csapak
43f0b189d9 close #1671: implement mobile UI for quarantine
this patch implements a UI for the Quarantine, designed to
be looked at on mobile phones

for this we use Framework7 instead of extjs, since it has much more
features and looks more native on phones

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2019-02-19 10:04:19 +01:00
Stoiko Ivanov
573a6e8b71 add onlineHelp properties to all edit windows
Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-10-03 14:32:24 +02:00
Stoiko Ivanov
e762dd6784 refactor js/MailProxyTLSDomains.js
make TLS policy selection a widget of its own, and improve splitting
between logic and presentation

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-09-28 11:00:41 +02:00
Stoiko Ivanov
3155688b19 js/MailProxyTLSDomains.js: reload UpdateStore
instead of DiffStore, fixing the grid remaining empty for one second after
a change glitch

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-09-28 10:59:52 +02:00
Dietmar Maurer
bf289fa759 improve TLS panel layout
Use same padding as in SystemConfiguration panel.
2018-09-27 07:16:42 +02:00
Stoiko Ivanov
0c77683d63 Implement TLS Policy Setting
* add js/MailProxyTLSDomains.js for setting per domain TLS policies
* add js/MailProxyTLSPanel.js as a wrapper for the current MailProxyTLS.js and
  MailProxyTLSDomains.js

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-09-27 07:02:35 +02:00
Dominik Csapak
7acc9a1e6b fix #1701: add port option for smarthost
allows editing/showing the smarthost and -port

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-09-12 06:39:30 +02:00
Dietmar Maurer
f31c7df96c MailProxyOptions.js: use deleteEmpty flag for dnsbl_threshold 2018-06-21 10:33:32 +02:00
Alexander Plank
feb7e67883 Add postfix dnsbl threshold
Signed-off-by: Alexander Plank <alexander.plank@siconnex.com>
2018-06-21 10:18:38 +02:00
Dietmar Maurer
cc66960f8f fix bug #1707: use correct units for deferred mail queue (minutes) 2018-05-04 12:42:53 +02:00
Dominik Csapak
01e0e5e511 overwrite run_editor of base class
so that every call lands in the custom run_editor

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-06 14:14:26 +02:00
Dietmar Maurer
6265117277 cleanup: set selModel only where we need it 2018-03-29 14:40:32 +02:00
Dominik Csapak
0b9c052824 SpamQuarantine: add keyboard shortcuts for actions
d/D: deliver
delete: delete
w/W: whitelist
b/B: blacklist

the delete key registers differently depending on browser,
so we have to check for event.DELETE and '127'

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-03-29 14:33:45 +02:00
Dominik Csapak
c627f092b8 SpamQuarantine: add context menu
with the actions: deliver,delete,whitelist,blacklist

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-03-29 14:31:58 +02:00
Dominik Csapak
7f0619ff3b quarantine: refactor action logic
so that it can be reused

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-03-29 14:31:29 +02:00
Dominik Csapak
5fb0f71ea0 quarantine: do not deselect when list changes
when an e-mail is selected and an action goes through,
select the e-mail on the position the old one was,
this way, one does not have to reselect an e-mail after
an action is done

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-03-29 14:31:00 +02:00
Dominik Csapak
e6eb9495fa set the default quarantine timespan to a week
instead of only the current day

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-03-29 14:30:07 +02:00
Dominik Csapak
74901b37df reword the action success message to not show the id
but the count if we have multiple messages

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-03-29 14:27:43 +02:00
Dominik Csapak
d42f85b806 implement multiselection of spamquarantine mails
and allow the actions to be sent for all simultaniously

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-03-29 14:22:42 +02:00
Dietmar Maurer
751d131c4d add new helpdesk role 2018-03-22 11:40:39 +01:00
Dominik Csapak
bb7ab2baa6 collect and show errors on dashboard
if a cluster member is not reachable, collect the errors and show
them once to the user

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-03-05 06:48:57 +01:00
Dominik Csapak
91c74e81a8 use defaults for resources in dashboard
else we get an error if a node is not available

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-03-05 06:48:54 +01:00
Wolfgang Bumiller
40ced6648d UserEdit: add minLength of 4 to username field
To reflect the minimum length required by the backend.

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2018-02-15 08:25:37 +01:00
Dominik Csapak
bee11278a6 remove outlook report style
this does not exist anymore

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-02-01 11:20:14 +01:00
Dominik Csapak
64fb657f83 improve gettext usage
optimized a few string
EMail/Email/E-mail -> E-Mail
No Data in Database/No data in database. -> No data in database
etc.

removed 'Outlook 2007' from gettext
added some strings to gettext where they were missing
(e.g. Active, etc.)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-01-24 06:26:26 +01:00
Dietmar Maurer
d42f76fc8d MailTracker.js: improve status text 2018-01-19 08:43:09 +01:00
Dietmar Maurer
00ac25c188 MailTracker.js: set start of next day for end-time 2018-01-18 11:47:55 +01:00
Dietmar Maurer
957ba04a4a change default mail port numbers 2018-01-16 14:40:50 +01:00
Dietmar Maurer
c40038d459 remove BETA, do not display repoid 2018-01-16 13:50:00 +01:00
Dominik Csapak
5b621b46c6 use htmlEncode for the username
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-01-11 10:19:51 +01:00
Dietmar Maurer
9367049b9d set maxspamsize default back to 256K 2017-12-29 12:28:47 +01:00
Dietmar Maurer
aac17b9be4 Revert "doQuarantineAction: pass pmail parameter"
This reverts commit 794e411a4f.

Not required any longer, because the backend now encode all info inside
the id.
2017-12-28 12:47:11 +01:00
Dietmar Maurer
794e411a4f doQuarantineAction: pass pmail parameter 2017-12-28 08:41:59 +01:00
Dietmar Maurer
285cb4be15 ClusterAdministration.js - avoid duplicate load mask 2017-12-19 07:51:15 +01:00
Dietmar Maurer
ad80b56032 ClusterAdministration.js - sort nodes by cid 2017-12-19 07:50:37 +01:00
Dietmar Maurer
d7dd15626c ClusterAdministration.js - catch undefined value in loadavg renderer 2017-12-19 07:48:13 +01:00
Dominik Csapak
f4de85b4e9 check if load is successfull in GeneralMailStatistics
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-12-18 13:34:22 +01:00
Dietmar Maurer
03dbbc5a2e bump default maxspamsize to 1M 2017-12-18 09:51:56 +01:00
Dominik Csapak
87517465e3 jslint: fix type confusion of handler
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-12-15 09:01:04 +01:00
Dominik Csapak
b12554018d jslint: fix trailing comma
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-12-15 09:00:55 +01:00
Dominik Csapak
829b82f762 add BETA link to bugtracker
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-12-15 09:00:45 +01:00
Dietmar Maurer
97c8b7b097 add node reboot and shutdown buttons 2017-12-14 10:00:31 +01:00
Dominik Csapak
6ad5f9f2c6 replace novnc with xtermjs
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-12-11 14:50:03 +01:00
Dietmar Maurer
85e3298111 add spam detector option clamav_heuristic_score 2017-12-11 13:44:01 +01:00
Dietmar Maurer
126df33c9a fix title in Incoming Mails graph (use 'Junk Mails') 2017-12-07 11:23:08 +01:00
Dietmar Maurer
d6a00b29ca js/RBLStatistics.js - show pregreet rejects, change title to 'Postscreen' 2017-12-07 08:40:41 +01:00
Dietmar Maurer
9bde3d85f0 MailTracker.js - display all receivers 2017-12-06 08:09:48 +01:00
Dietmar Maurer
2db550f94a SpamDetectorOptions.js: fix default for maxspamsize 2017-11-30 10:03:18 +01:00
Dietmar Maurer
aa62f092aa use MiB instead of MBytes 2017-11-29 13:28:01 +01:00
Dietmar Maurer
f7066f0371 DomainStatistics: s/mbytes/bytes/ 2017-11-29 13:24:09 +01:00
Dominik Csapak
86109d3a8b correctly use 'getStore' instead of 'get' and reload instead of load
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-11-29 13:13:33 +01:00
Dietmar Maurer
5009e3438b DomainStatistics.js - api returns bytes now 2017-11-29 11:58:58 +01:00
Dietmar Maurer
47ee337f6a add DNSBL sites option 2017-11-27 11:54:24 +01:00
Dominik Csapak
b6248f6e12 make avg_ptime default 'N/A'
so it does not say 'undefined s' when no mail was processed

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-11-23 06:19:17 +01:00
Dominik Csapak
db13d7e3c5 add RestoreWindow and use it
this adds a Restore window, where the user can choose what he
wants to restore

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-11-14 11:41:03 +01:00
Dominik Csapak
75a6815975 only allow to create linux bonds
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-11-14 11:40:54 +01:00
Dominik Csapak
18b5b6adce rename create to isCreate
following the changes in the edit window, we have to use
isCreate instead of create, which gets rid of many jslint
type confusion errors

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-11-14 11:40:42 +01:00
Dietmar Maurer
929f40ffd8 Dashboard.js - fix subscription status for single node installations 2017-11-13 10:32:16 +01:00
Dominik Csapak
467b217d70 jslint fix: do not use single statements when using if
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-11-10 17:30:57 +01:00
Dominik Csapak
dd79f43aa0 add seperator between backup and restore,remove
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-11-10 17:30:40 +01:00
Dominik Csapak
8fa824d436 move factory defaults button to RuleConfiguration
because it only resets the rules

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-11-10 17:30:22 +01:00
Dominik Csapak
bedf67eefc add download column for backups
instead of making the filename clickable

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-11-10 17:30:04 +01:00
Dominik Csapak
adc5c38553 fix (de)activate/destroy events for system configuration
relay the events to all children of the network panel,
and add the deactivate event to the options

this properly starts and stops the updatestores

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-11-10 17:29:30 +01:00
Dominik Csapak
4a1b15b9d7 fix removal of rules
setting a non-object to undefined is not designed to be done
in a viewmodel

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-11-10 17:29:08 +01:00
Dietmar Maurer
0b33a628f3 BackupRestore.js - add timestamp column 2017-11-10 07:48:40 +01:00
Dietmar Maurer
1b2565a35d js/BackupRestore.js - do not reload view after restore - simply not required 2017-11-09 11:45:22 +01:00
Dietmar Maurer
7cd5155cb1 js/BackupRestore.js - add restore button 2017-11-09 11:44:32 +01:00
Dietmar Maurer
75a55308e9 BackupRestore.js - use Proxmox.Utils.format_size to render size 2017-11-09 07:27:37 +01:00
Dietmar Maurer
560360fb8d BackupRestore.js - add anchor to download backup files 2017-11-09 07:24:59 +01:00
Dietmar Maurer
7f261b55d5 js/BackupRestore.js - implement backup/restore panel 2017-11-07 07:43:31 +01:00
Dominik Csapak
e92087299d add missing itemIds
necessary for the routing via url fragment

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-27 14:47:38 +02:00
Dominik Csapak
66caa558cc add SpamDetectorStatus.js
show the update status for spamassassin,
and lets it update manually

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-27 14:47:22 +02:00
Dietmar Maurer
cea4e924e7 js/ServerAdministration.js - enable upgrade button inside controller init
Because Proxmox.UserName may not be set at class load time.
2017-10-24 11:30:52 +02:00
Dominik Csapak
3cac8c4e6b add icons for white/blacklist in QuarantineView
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-23 17:34:26 +02:00
Dominik Csapak
5a768cc51a jslint: empty block and || syntax
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-23 17:34:02 +02:00
Dominik Csapak
07adbc8947 jslint: correctly escape regexes
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-23 17:33:37 +02:00
Dominik Csapak
20d8d03735 jslint: rework icon_status_map to avoid type confusion
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-23 17:33:24 +02:00
Dominik Csapak
ccbf186ff4 jslint: mixed whitespace
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-23 17:33:00 +02:00
Dominik Csapak
cac4542e01 jslint: declare variables correctly
some were never declared, some ware doubly declared

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-23 17:32:45 +02:00
Dominik Csapak
be95ef5dff jslint: move the parensis inwards
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-23 17:32:29 +02:00
Dominik Csapak
77dab24d90 jslint: rename new to newProfile to avoid reserved name
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-23 17:31:58 +02:00
Dominik Csapak
b76ce2c5f7 jslint: remove unnecessary code, optimize updatePreview
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-23 17:31:40 +02:00
Dominik Csapak
7b18f75e06 jslint: rework MailProcessing names to avoid reserved names
'in' is a reserved names, rework all names to match the outer names

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-23 17:31:25 +02:00
Dominik Csapak
c17f9fe4d0 jslint: if needs a block
single statements after if can be confusing

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-23 17:30:58 +02:00
Dominik Csapak
131ba4f60a jslint: add missing semicolons
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-23 17:30:43 +02:00
Dominik Csapak
de0ebd99a1 jslint: type confusion
resolve/mark several type confusions

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-23 17:30:26 +02:00
Dominik Csapak
771bd0b94b jslint: remove trailing commas
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-23 17:29:17 +02:00
Dominik Csapak
ff735274ca jslint: add Proxmox global to files
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-23 17:28:56 +02:00
Dominik Csapak
a0a98b8d9d set the from date for QuarantineList from url parameter
when we click a link in a Quarantine report, we want the
'from' date to be the day of that mail, so that we can
select the mail

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-23 17:27:53 +02:00
Dominik Csapak
c70a57fbd3 QuarantineList.js: save from and to date as statics in class
so that when we have the same timespan when we change the quarantine,
as long as we do not reload the browser window

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-23 17:27:11 +02:00
Dietmar Maurer
30a27efac8 Fetchmail - implement create 2017-10-23 10:57:35 +02:00
Dietmar Maurer
a989cf6204 FetchmailView.js - add remove button 2017-10-23 09:26:09 +02:00
Dominik Csapak
78ec45ebbd add group and user list for LDAP Config View
this patch adds two grids for showing the synced groups and
users, with the ability to show the users in the groups and
the additional email addresses for the users

also rework the ldapconfig grid to a declarative syntax

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-19 15:44:29 +02:00
Dominik Csapak
fb511cb253 add missing Ext.htmlEncodes
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-19 15:44:17 +02:00
Dominik Csapak
3718baf37e add missing itemIds
this is needed for the url routing

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-19 15:43:59 +02:00
Dominik Csapak
a151c079d8 remove border from Subscription
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-19 15:43:48 +02:00
Dominik Csapak
dd26ba9ae2 add an Group objectclass textfield to the LDAPEditor
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-19 15:43:30 +02:00
Dominik Csapak
0641d180b0 simplify relayEvents call
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-19 15:43:02 +02:00
Dietmar Maurer
c37614f59a add fetchmal configuration panel 2017-10-19 12:51:02 +02:00
Dietmar Maurer
6a2f908e59 FetchmailView.js - new panel toö configure fetchmail 2017-10-18 09:41:58 +02:00
Dominik Csapak
6994550a3f add regex Tester to regular expression editor
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-17 09:12:26 +02:00
Dominik Csapak
628eccdb9a add missing action list editors
and add them in the ActionList to be listed in the drop down

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-17 09:12:12 +02:00
Dietmar Maurer
ab01cd9569 LoginView.js - remove realm selector
Because it is not really required. Instead, we always use realm 'pmg'
to login toö the admin interface. The backend can map 'root@pmg' to
'root@pam'.
2017-10-13 06:47:20 +02:00
Dominik Csapak
ea4f2a7923 add icons to the object types
and show them in the editwindow, the grid and the add menu

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-13 06:29:24 +02:00
Dominik Csapak
8ddd9c44f5 add virusfilter
we now also disable the edit button if the objectgroup editor has an
'uneditable' flag set, we need this, because the virusfilter has nothing
which we could edit

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-13 06:21:55 +02:00
Dominik Csapak
b79fbba8e4 normalize the dashboard graph to per minute
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-12 11:11:15 +02:00
Dietmar Maurer
c407e16892 QuarantineView.js - do not display @quarantine realm 2017-10-11 11:11:56 +02:00
Dietmar Maurer
815c295cea ConfigPanel.js - remove debug code 2017-10-11 10:37:24 +02:00
Dietmar Maurer
c1e4fa2a26 LoginView.js - hide realm selector for quarantine login 2017-10-11 08:21:07 +02:00
Dietmar Maurer
fcf672c579 Application.js: remove trailing slash from pathname
To correctly detect /quarantine/ and /quarantine
2017-10-11 08:16:57 +02:00
Dominik Csapak
b047eec060 add Dashboard
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-11 06:53:18 +02:00
Dominik Csapak
5c6967845c add MailProcessing Component
this shows the traffic and the average mail processing time

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-11 06:52:42 +02:00
Dominik Csapak
ffdf818d71 add new SubscriptionInfo component
this shows the SubscriptionInfo status in the dashboard and with a
click on it you get to the Subscription menu item

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-11 06:51:37 +02:00
Dominik Csapak
a0ff4ab728 add minigraph component
this is a preconfigured RRDChart for the dashboard

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-11 06:49:46 +02:00
Dominik Csapak
7d4f02a370 set button state in load handler instead of callback
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-09 13:00:09 +02:00
Dominik Csapak
fdebab3d17 relay events to clamav subpanels and listen to the activate event
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-09 12:59:11 +02:00
Dominik Csapak
decc60909d set correct size/mask for clamav status
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-09 12:58:40 +02:00
Dominik Csapak
41ab900592 fix wrong stopUpdate to startUpdate
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-09 12:58:07 +02:00
Dietmar Maurer
7818f0a3c0 UserView.js: display role 2017-10-09 09:17:55 +02:00
Dietmar Maurer
69bc007cae ObjectGroup.js - do not overwrite proxy, use monStoreErrors 2017-10-09 08:25:44 +02:00
Dominik Csapak
5810fc6bea add emptytext to user white/blacklist
so that we get feedback that there is no data when using
an email which has no white/blacklist

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-09 06:42:28 +02:00
Dominik Csapak
46c04649b9 remove old RuleList
we do not use it anymore

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-09 06:42:17 +02:00
Dominik Csapak
a32f9554d9 add vtype to email selector in white/blacklist
and check if it is valid before making an api request

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-09 06:41:50 +02:00
Dominik Csapak
e8dbe19576 do not use autoload
instead of autoloading (which leads to api errors in the admin interface)
we load it instantly only in the quarantineview
(we load it anyway in the admin interface when selecting an email)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-09 06:41:05 +02:00
Dominik Csapak
94153e9a9e add emptytext to email selector in quarantine
so that when there is no email in the quarantine for the selected
timeframe, we now get the feedback that there is no data

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-09 06:40:38 +02:00
Dominik Csapak
ff0ee46d29 setEmptyText when when loading the store with an email selected
so that we get 'no data' instead of 'no email selected'

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-09 06:40:15 +02:00
Dominik Csapak
96fba078bf add missing htmlEncode
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-09 06:39:40 +02:00
Dominik Csapak
793ac2e46e remove unnecessary 'new Ext.menu.Menu'
this is implicit when having an object as 'menu' property

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-09 06:39:19 +02:00
Dominik Csapak
201f1b7030 check if the call was successful
if not, we return, otherwise we run into an javascript exception

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-09 06:38:50 +02:00
Dominik Csapak
00564597e5 execute stopUpdate on 'deactivate'
when we have a panel/grid with an updatestore which starts
on activation, we also have to stop it on deactivation,
otherwise those stores gets updated even when we are on another tab

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-09 06:38:04 +02:00
Dominik Csapak
2f8fe1a335 add missing clearbeforeload arguments for monStoreErrors
otherwise we gat double loading masks

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-09 06:37:16 +02:00
Dietmar Maurer
7c3ac540cc LoginView.js - allow to select a realm 2017-10-06 12:41:12 +02:00
Dietmar Maurer
6cbc3de350 Application.js - initialize state provider here
So that we can also use it for LoginView.
2017-10-06 12:35:18 +02:00
Dietmar Maurer
d853d9a254 SpamDetectorOptions.js - new option bounce_score 2017-10-06 11:44:52 +02:00
Dietmar Maurer
9114dc424f RuleConfiguration.js - monitor storage errors 2017-10-06 08:29:35 +02:00
Dominik Csapak
2fa0b5059a reuse do quarantineAction
and make it possible to show both subscription and action window after
one another

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-06 07:31:22 +02:00
Dominik Csapak
ac5fcb29ad do not send pam field on automatic login
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-06 07:30:34 +02:00
Dominik Csapak
7bd1a4b7dc remove superfluous/wrong 'xcalss'
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-06 07:30:08 +02:00
Dominik Csapak
207471c040 select mail when coming from link in SpamQuarantine mail
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-06 07:29:58 +02:00
Dietmar Maurer
07d37f5946 MailTracker.js - encode html 2017-10-05 13:32:37 +02:00
Dominik Csapak
c45e23e4ac make PMG header look like the PVE header
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-05 12:57:35 +02:00
Dominik Csapak
dd502c643d add colors and icons to trackingcenter
add icons for all of the stati,
and background colors for bounced/quarantine/blocked

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-05 12:56:56 +02:00
Dominik Csapak
0960034c27 use rowexpander for trackingcenter logs
instead of opening a window with the log,
use the rowexpander and display the logs inline

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-05 12:56:41 +02:00
Dominik Csapak
c4ff49f761 add status icons to utils
used later for the tracking center

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-05 12:56:20 +02:00
Dominik Csapak
99bba12c7f improve login/logout/cookie behaviour
this changes the login/logout/cookie behaviour

if you go to /quarantine
    you get to the loginview
    except you have a valid cookie
    or you have a ticket via url (this takes precedence)

    when you have a valid login
	you go to the quarantineview
else if you have not a quarantine ticket
    you get to the mainview
else
    you get to the loginview

also adds a logout button to the quarantineview
and moves the viewchange/logout logic to the Application.js

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-05 12:51:38 +02:00
Dominik Csapak
13444d537a fix typo
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-04 12:55:53 +02:00
Dominik Csapak
afbec2f819 check if current StateProvider is already the right one
else we get an error on logout -> login

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-04 12:55:26 +02:00
Dominik Csapak
ad02dfe776 add title to Subscription panel
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-04 12:54:52 +02:00
Dietmar Maurer
282d45fb73 change lang cookie name to PMGLangCookie 2017-10-04 11:33:02 +02:00
Dietmar Maurer
65921b407b LoginView.js - correctly mask loginwindow on language change 2017-10-04 11:27:32 +02:00
Dietmar Maurer
de4f1b8aa0 remove obsolete LoginWindow.js 2017-10-04 11:24:17 +02:00
Dietmar Maurer
775b9a7d54 add language selector 2017-10-04 11:23:17 +02:00
Dietmar Maurer
24e6dc95f8 ClusterAdministration.js - display subscription status for all members 2017-10-03 14:51:41 +02:00
Dietmar Maurer
54fd9bd875 add help button to subscription upload window 2017-10-03 14:50:56 +02:00
Dietmar Maurer
9584871dc7 display subscription status after login 2017-09-29 10:41:13 +02:00
Dominik Csapak
4700c0375b hide column headers for spam level info
they dont give any useful information

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-29 09:42:59 +02:00
Dietmar Maurer
c811498512 SpamInfoGrid.js - use single store object
And only set/change url.
2017-09-29 08:02:02 +02:00
Dietmar Maurer
b4c60642b6 SpamInfoGrid.js - score need to be a numeric field
To make grid summary working.
2017-09-29 07:24:34 +02:00
Dietmar Maurer
f34abacac7 SpamInfoGrid.js - avoid border 2017-09-29 07:11:33 +02:00
Dominik Csapak
56b4528f24 add missing titles for quarantines
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-28 15:16:34 +02:00
Dominik Csapak
387aeedfca use VirusQuarantine and change icon for SpamQuarantine
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-28 14:47:19 +02:00
Dominik Csapak
644f752b75 add VirusQuarantine component
this adds the VirusQuarantine component, which is mostly copied from
the SpamQuarantine but the relevant things changed

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-28 14:47:06 +02:00
Dominik Csapak
2d1f7824e4 make SpamQuarantine use the QuarantineList and SpamInfoGrid
this changes the SpamQuarantine so it uses the refactored version
of the list, and add the function to show the spaminfo
in a table

also it changes from "show html"/"show raw" buttons to
a single button which gets toggled

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-28 14:46:56 +02:00
Dominik Csapak
cf5268ca8a add doQuarantineAction and sender_renderer
doQuarantineAction executes a quarantine action with a callback

sender_renderer is the renderer for the quarantine list

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-28 14:44:38 +02:00
Dominik Csapak
79a3f18d31 add SpamInfoGrid component
this component will be used to show the Spam info in the quarantine
in a nice tabular format

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-28 14:43:49 +02:00
Dominik Csapak
75fcb6fdde add QuarantineList component
this component is a refactored version of the PMG.SpamList
component, but it incorporates the logic and layout for
changing dates/emails from the PMG.SpamQuarantine component

additionally, it has some logic to show/hide the email selection box
via a config property ('emailSelection')

this will be used for the SpamQuarantine in admin/user view and
for the virus quarantine

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-28 14:43:33 +02:00
Dominik Csapak
2468e1a139 jslint: empty block
reverse logic of if block to avoid empty block

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-28 14:42:52 +02:00
Dominik Csapak
6355fc2cfe jslint: correct escaping
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-28 14:42:39 +02:00
Dominik Csapak
7a3b5e2d5e jslint: not declared variable, missing semicolon, parseInt base
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-28 14:42:24 +02:00
Dominik Csapak
ea07c9aa8e jslint: type confusion
fix many type confusions

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-28 14:42:13 +02:00
Dominik Csapak
acc1fedeea jslint: use dot notation
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-28 14:41:57 +02:00
Dominik Csapak
749af0601a jslint: trailing commas
fix many trailing commas

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-28 14:41:43 +02:00
Dominik Csapak
2c1d504e90 jslint: globals
adds the global object proxmox to most files

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-28 14:41:31 +02:00
Dominik Csapak
05e2764be8 multiply cpu and iowait with 100
since the charts expect values from 0-100 instead of 0-1

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-28 14:39:45 +02:00
Dietmar Maurer
28580cc2af Subscription.js - add onlineHelp 2017-09-27 17:45:12 +02:00
Dietmar Maurer
562d589cea set enableTextSelection in Subscription grid 2017-09-27 13:13:58 +02:00
Dietmar Maurer
a10c81d94d add Subscription panel 2017-09-27 12:55:54 +02:00
Dietmar Maurer
57acb12077 remove SSH access panel 2017-09-27 12:24:52 +02:00
Dietmar Maurer
6a3d1c515b add online help 2017-09-27 10:06:13 +02:00
Dietmar Maurer
91814a7615 PostfixQShape: fix onDeleteAll 2017-09-26 10:23:00 +02:00
Dietmar Maurer
81c250bdcd add Updates panel (APT interface). 2017-09-25 12:58:45 +02:00
Dietmar Maurer
087dc38ec6 SystemOptions.js - add http_proxy option 2017-09-22 11:08:37 +02:00
Dietmar Maurer
cf2485332b add MailTracker 2017-09-21 09:47:48 +02:00
Dietmar Maurer
4af3781f81 NavigationTree.js - remove useless bordert attribute 2017-09-19 12:11:32 +02:00
Dominik Csapak
61415efabe add missing itemIds for url mapping
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-19 12:10:15 +02:00
Dominik Csapak
2c866ec990 make navigation tree scrollable
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-19 11:43:20 +02:00
Dominik Csapak
50531ef945 get rid of unnecessary borders
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-19 11:35:19 +02:00
Dietmar Maurer
bd69f90e64 fix time format (i => hour) 2017-09-18 12:28:00 +02:00
Dietmar Maurer
cc6b80b6c8 fix some jslint errors 2017-09-18 11:39:58 +02:00
Dominik Csapak
9d6d9b3a81 add archivefilter,spamlevel and filenamefilter to the otype_list
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-14 06:29:39 +02:00
Dominik Csapak
e234e99d0f implement archivefilter editor
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-14 06:29:26 +02:00
Dominik Csapak
6af3977271 implement matchfilename editor
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-14 06:29:06 +02:00
Dominik Csapak
bed64e74c3 implement spamlevel editor
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-14 06:28:36 +02:00
Dominik Csapak
3fb5067f1e change Content Type text and use emptyFn for reset for displayfield
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-14 06:28:24 +02:00
Dominik Csapak
50fa65204a add regextester to the match field editor
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-14 06:27:42 +02:00
Dominik Csapak
f3aa84ddaa add new RegexTester component
used for testing regexes in the what object editors

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-14 06:27:27 +02:00
Dominik Csapak
f2a235e3d1 show user black/whitelist in tree
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-12 07:21:16 +02:00
Dominik Csapak
7d51f9ff94 add email combobox to black/whitelist
so that we can show it in the admin interface too

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-12 07:20:51 +02:00
Dominik Csapak
8e89b895fe add white/blacklist, deliver and delete button for the spam quarantine
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-12 07:18:46 +02:00
Dominik Csapak
cdff090fa3 only reset email if not in quarantineview
else the user could not view his own spams until a refresh anymore

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-12 07:18:06 +02:00
Dominik Csapak
f4404f28c2 better formatting of spam list
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-12 07:17:21 +02:00
Dominik Csapak
3a9b95a74a add matchfield and contenttype rules
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-12 07:16:54 +02:00
Dietmar Maurer
a32c09e62d add RBL statistics 2017-09-11 12:32:12 +02:00
Dietmar Maurer
4183c5557f NavigationTree - move statistics up one level 2017-09-07 12:09:25 +02:00
Dietmar Maurer
e98379210f improve gettext messages 2017-09-07 09:37:31 +02:00
Dietmar Maurer
eaf3ebec87 do not set remoteFilter unless we have set an url
Else ExtJS displays 'Loading...' mask.
2017-09-06 12:58:01 +02:00
Dietmar Maurer
d4be125b9f add new advanced statistic filters option 2017-09-06 12:35:28 +02:00
Dietmar Maurer
8e346db374 more grid filters for statistics 2017-09-06 12:03:49 +02:00
Dietmar Maurer
575e5e2ff2 implement contact statistics 2017-09-06 11:52:01 +02:00
Dietmar Maurer
16e23ef4df SenderStatistics.js: display viruscount 2017-09-06 11:51:24 +02:00
Dietmar Maurer
c1a5d15012 StatStore: new flag autoReload
So that we can disable listening to pmgStatTimeSelectorUpdate events.
2017-09-06 09:32:09 +02:00
Dietmar Maurer
5486028efe Sender/Receiver Statistics - improve error mask handling 2017-09-06 08:59:27 +02:00
Dietmar Maurer
89399b2f84 StatStore.setUrl - abort pending request, clear data, do not call reload 2017-09-06 08:57:20 +02:00
Dietmar Maurer
d6d1af0e2b cleanup: use Ext.data.Proxy.Ajax.abort() 2017-09-06 07:22:39 +02:00
Dietmar Maurer
2ca04e02bc implement receiver statistic panel 2017-09-05 14:03:43 +02:00
Dietmar Maurer
cc28836a9f SenderStatistics.js: rename virusname to virusinfo 2017-09-05 13:47:39 +02:00
Dietmar Maurer
a61d685f40 SenderStatistics.js - display store errors 2017-09-05 13:02:33 +02:00
Dietmar Maurer
f4fedceea6 SenderStatistics.js - use new PMG.FilterProxy class 2017-09-05 10:51:23 +02:00
Dietmar Maurer
2f5b0b8ae4 FilterProxy.js - helper class 2017-09-05 10:50:39 +02:00