* Initial start on new templating support
* further updates
* more updates
* More working version
* Last fixes
* Small updates
* modified test to look for dbname.
* Schema update
* Added fix for not being able to disable Philips Hue transport
* Updated sql file
* Updated db_schema
* Set myclabs/deep-copy to be 1.7.x version in composer
* Fixes from murrant
* Forced nikic/php-parser to version 3.1.x in composer
* Updated composer to use custom fork of string-blade-compiler + fixed transport use
* Updated to always use correct template
* Merged legacy and blade templating engines
* Removed template type + fixed test-alert.php
* Added more template placeholders
* Added ability to reference data in templates as $alert->X
* Updated docs for templates
* Updated db_schema.yaml
* Added $alert->builder
* Clarify the use of $alert->builder
* Fixed the use of $alert->transport
* renamed schema file
* Added template validation
* Small update to fix travis issue
* Add Docs text to title bar
* Updated amqp to new of version
* Consistency in alert rule and template title bars
DO NOT DELETE THIS TEXT
#### Please note
> Please read this information carefully. You can run `./scripts/pre-commit.php` to check your code before submitting.
- [x] Have you followed our [code guidelines?](http://docs.librenms.org/Developing/Code-Guidelines/)
#### Testers
If you would like to test this pull request then please run: `./scripts/github-apply <pr_id>`, i.e `./scripts/github-apply 5926`
* feature: Added new alert rule builder UI
* Updated to export sql queries
* More updates
* more changes
* removed debug
* fix scrut
* Updated to include import options + various other fixes
* fix rule
* Populate name from collection rules.
* Fix default rule import
Allow new and old style rules in the collection.
Don't add new yet as I'm not sure GenSQL() is working.
* Fix GenSQL call
* Extract filter building to class so it is nicely contained in one place
* moved schema
* some fixes and tweaks
* travis fixes
* Some more features / updates
* Fix up my mistakes when adding default rules
* Use a modal for new alert (Incomplete)
Larger dialog!!
Remove page loading stuff.
Working:
Loading rules, resetting dialog, importing from collection.
Not working yet:
select width
device limited rule access? don't know what this is...
Lots of unused stuff to delete...
* reload "table" after save
* fixed editing rule
* Auto select2 width
* Reload window on save
* Restore per-device alert. Remove debug.
* Small cleanups. Rule Name first.
* Restore button to button type. Rename schema.
* Fixes: wrong command to reload window, remove extra attributes, rule is never passed
* Fixed old rule editing
* some small updates for old imports
* travis update to use trusty
* maybe travis fix
* Ability to set alert rule mappings on the rule edit screen
* pip installs one line, no quiet for deploy
* update schema def
* Fix style and some copyright headers
* fix docs missing file
* Allow new versions of snmpsim and libraries
* Parser WIP
* Fix default rules insert
* reorganize
* Legacy import first draft done
* Implement saving
Skip translation to sql for now
* Working on glues
* small rule collection fix
* Working on glues
* Working on glues
* Docs updates + small UI changes
* Parser WIP
* reorganize
* Legacy import first draft done
* Implement saving
Skip translation to sql for now
* Working on glues
* Working on glues
* Working on glues
* Add table mapping, should move to it's own class
* WIP
* Glue working!!
* Extract Schema class
* Some final touches.
revert alerts_rules.json for now.
* Finish up initial implementation
Needs more tests
* Fix a few places
* small doc updates
* Fix finding tables in grouped rules.
* remove unused code
* code format fixes
* Some quick tests for Schema
Simplified output for findRelationshipPath. Always includes start and target in the result.
This simplifies a lot of code in QueryBuilderParser.php
This also always loads the target table data now (which we want)
* Make bill_id the PRIMARY index for the bills table
* Load macros from a json file in misc instead of the database.
* Fix whitespace and wrong key for collection.
* Handle IN properly when generating SQL
* Fix glue (devices.device_id = ports.port_id) is incorrect :D
Show ALL tables we can resolve relationships for in the query builder filter.
* Remove all macros from the database
Remove insert statements, leave updates to update user's existing rules.
Added two html alert template examples. Asked pii100 for permission to include his and he said ok.
Included my html service alert check that includes service_message.
Added a note for html and graphs. I believe most people will find it useful on this page.
* gitlab alert transport added
* fixed SQL file and cleaned up a bit
* updated license information
* added relevant information Transports documentation
* Fixed spacing issues
* removed unnecessary text from variable
* fixed sql schema file syntax
* changed sql schema order
* fixed creation of issues for resolution events
* addressed file name conflict
* fixed spacing, again
* removed unused variable
* Update Transports.md
* First draft of the modals and the config interfaces
* GUI part done
* Backend code and db schema addition
* Documentation added, fixed alerting bug
* Fix typos
* Do not try to push an older db_schame.yaml
* Small db fix
* More db fixes
* Travis CI fixes
* missed a line in the travis error
* Fixed dependency clearing bug, Manage Host dependencies button now shows current selections
* Removed unnecessary index
* Correct faulty query
* Fixed sql query as requested, and renamed sql file
* Added requested changes
* Removed debug code
* Renamed sql file
* More fixes as requested
* Trying to fix db_schema.yaml
* adding laf's diff
* Corrected a small bug
* Try to resolve scrutinizer issue
* Main page bootgrid ajax modifications
* Also corrected travis ci errors
* Added select2 for pull downs, removed a redundant debug output. Changed parent_id to text
* Add missing class in the device settings page
* Fix bug where a link wasn't added after save
* Better parent down detection
* Add missing comma
* Behold the multi-parent code
* Added lookup table
* Ready for testing
* Trying to fix documentation conflicts
* Fix copy paste errors, and possible sql injection
* indentation problems
* Modified db_schema.yaml as well
* Typos, typos
* This should correct alerts
* Try to fix travis ci error
* Fix the typo in index.php
* Changed to Tony's query
* function explanation text changed
* Updated db_schema.yaml
* Trying to make automated tests happy
* Changes as requested
* Added acknowledgment for select2
* Added laf's patch
* dbBulkInsert when adding parents
* Refactor alert transports to classes
* Fix linting
* Make Slack alert transport php 5.3 compatible
* Rename call method to deliverAlert for alert transport
* feature: Generic alerts for state sensors
A bit of a hack, but gets the job done. Perhaps someone can refactor the ResolveGlues() function sometime to make it better.
* Fix mistakes
* Add docs and collection rules, critical enabled by default
* moved schema file to 221.sql
* docs: Continue to reorganize things
Make landing pages for /Installation, /API, etc.
Split API out into multiple docs
Properly use multi-level navigation
Add lower nav buttons (tops are bug so disable for now)
Add logo for fanciness
Refine index page a bit
* Improve API TOC layout
* Couple of fixes.
* Fix API/API-Docs, assumed it was at the right url.
* docs: testing alert rule link
added link to the device troubleshooting page.
* Update Rules.md
fix link
* Update Testing.md
fix link
* Update Rules.md
removed link - not useful for this part.
* image for alert rules collection
* image for alert rules collection
added image alert rules collection
* docs: alert rules, added in the alert rules video
alert rules, added in the alert rules video from youtube. On libreNMS channel.
* docs:alert rules
changed some of the formattings.
* Ignore docs/
* Fix indenentation
YAML's pretty strict
* Remove static anchor names
Markdown does this automatically for us
* Tabelize entities
* Remove tildes
They don't do anything
* newfeature: ability to edit default alert template
* Fix style errors
* Added missing db query
* Removed unnecessary code, and added faq section
* Minor documentation about default alert template. And put back wrongly removed lines
* Fixing the silly old mistakes... again