Releases: nofusscomputing/centurion_erp
Releases · nofusscomputing/centurion_erp
1.7.0
1.7.0 (2025-01-04)
feat
- access: Enable Objects from global organization to be viewable by user with the permission
- access: Enable Objects from globally set organization to return within query
- access: Enable the calling of the dynamic permissions function to obtain permissions
- itam: Cater for RabbitMQ errors when uploading inventory
- itam: On Inventory upload validate existing device
- access: During permission checking also capture Http404
- access: Super User to be granted permission
- access: Cache the permission required during permission checking
- api: Add
IndexViewset
to ViewSet mixin - access: If the user lacks the permission during permission checks, return sooner
- access: Enforce view action and HTTP/Method match for permission checks
- itim: External Links to display on cluster details page
- api: Add API v2 Endpoint for cluster services
- api: distinguish between read-only and authenticateed user permissions
Fixes
- api: Ensure ALL required classes for viewset are inherited
- itam: Dont query parent class for permissions
- core: If no org specified serializer fetch, dont attempt to access
- access: If no org specified during permission check, rtn false for permission
- itam: return serializer for inventory endpoint
- api: base index must inherit from IndexViewset
- core: Dont attempt to access the object if it doesn't exist when fetching ticket permissions
- access: Cached list objects must be a list including an empty one as required
- core: when gather ticket permissions, use getter as object may not exist
- core: action metadata to use view permission for tickets
- access: Use request.method for determining the HTTP/Method for permission checks
- access: Add HTTP/Method=DELETE as valid option for object delete/destroy.
- access: Ensure Object permission are checked when an object is having an action performed against it.
- core: History View is a read-only view
- core: Permissions for Related ticket to be derived from ticket org
- access: Team User permission organiztion is team org
Refactoring
- itam: Device UUID field requires no default
- itam: mv inventory task to itam app
- access: Use exceptions for permission flow as required
- api: dedup code within viewset mixin
- access: Object permission checking moved to
has_object_permission
function - access: move ability to get required permissions from permissions mixin to organization mixin
- core: move ticket linked item to dynamic parent model
- api: Use new re-writen Mixins for Tenancy and Permission checks
- access: Organization Permission Mixin now caters for API ONLY
- access: Organization Mixin now caters for API ONLY
Tests
- access: Skip test case for appsettings different organization due to model not being tenancy model.
- access: Ensure items returned from query are from user organization and/or globally set organization
- itam: API v2 Inventory Permission Check skip diff org
- itam: API v2 Inventory Permission Checks
- mv inventory test to itam app
- access: Test Cases for Organization Permission Mixin
- api: Adjust test case for metadata visibility
- core: remove different org testcase from history checks
- core: When testing if history access is possible for user with perms, correct status is HTTP/200
- access: When adding org, test case must use non-super user
- itim: Ensure external_links are returned as part of _urls
- itim: Add API v2 permission checks for cluster services
- itim: Add API v2 permission checks for device services
Images part of this release
The following images were built and published:
docker pull docker.io/nofusscomputing/centurion-erp:dev
docker pull docker.io/nofusscomputing/centurion-erp:bc85c532ddbbd8bcfcb8b4d41a8c39f0936890ac
docker pull docker.io/nofusscomputing/centurion-erp:1.7.0
1.6.0
1.6.0 (2024-12-23)
feat
- access: Check if organization field is read-only during permission check
- access: Ability to specify parent model for permission to do
- information_management: add cluster type kb article linking
- information_management: Ability to link Knowledge Base article to a Software
- information_management: Ability to link Knowledge Base article to a Software
- information_management: Ability to link Knowledge Base article to a Software Category
- information_management: Ability to link Knowledge Base article to a Operating System Version
- information_management: Ability to link Knowledge Base article to a Operating System
- information_management: Ability to link Knowledge Base article to a Device
- information_management: Ability to link Knowledge Base article to a Device Type
- information_management: Ability to link Knowledge Base article to a Device Model
- information_management: Ability to link Knowledge Base article to an External Link
- information_management: Ability to link Knowledge Base article to a Project
- information_management: Ability to link Knowledge Base article to a Project Type
- information_management: Ability to link Knowledge Base article to a Project State
- information_management: Ability to link Knowledge Base article to a Project Milestone
- information_management: Ability to link Knowledge Base article to a Service
- information_management: Ability to link Knowledge Base article to a Port
- information_management: Ability to link Knowledge Base article to a Cluster Type
- information_management: Ability to link Knowledge Base article to a Cluster
- information_management: Ability to link Knowledge Base article to a Ticket Category
- information_management: Ability to link Knowledge Base article to a Manufacturer
- information_management: Ability to link Knowledge Base article to a Config Group
- information_management: Ability to link Knowledge Base article to a Team
- information_management: Ability to link Knowledge Base article to an Organization
- information_management: Add API v2 Endpoint for model KB articles
- information_management: Add method
get_url
to model kb article - information_management: DB Model for linking KB articles to models
- assistanace: remove kb article content from details tab
- core: call models
clean
method prior to saving model to DB - api: during permission checking, if model is an organization and the user is a manager allow access to the organization.
- api: If user is organization manager of any org, show organization within navigation
- core: Link Team to ticket
- core: Link Organization to ticket
- core: Link KB to ticket
- access: Add project_management permissions to teams avail permissions
Fixes
- core: Add missing KB article delete signal for ticket linking cleanup
- core: Ensure for KB article permissions can be correctly checked
- core: use cooorect model name for choices
- itam: Use Device organization for device operating system
- settings: remove field
owner_organization
from App Settings - core: Use object organization for ticket linked items
- itam: Use Software organization for Software Version
- itam: Use Operating System organization for OS Version
- itam: Use Device organization for device software
- core: Use Ticket organization for ticket linked items
- core: Use parent model organization for object notes
- access: During permission checking also use
get_serializer
if avail - access: default to empty when attempting to get view attribute
- core: Use ticket organization for permission checking for adding a comment
- itam: KB url must use
obj
notitem
when building ursl for device type - itam: KB url must use
obj
notitem
when building ursl for device model - core: Add missing migrations for linking kb to ticket
- core: Ensure that a user cant reply to a discussion reply
- core: Add Org, Team and KB article to ticket linked Item serializer
- core: Ticket Linked Item serializer removed from inheriting from common serializer.
- core: Ticket model serializer must inherit from common serializer
- core: Ticket Related Item model serializer must inherit from common serializer
- core: Ticket Linked Item model serializer must inherit from common serializer
- core: Ticket Comment model serializer must inherit from common serializer
- core: Notes model serializer must inherit from common serializer
- docker: Correct nginx proxy headers passed to gunicorn
- core: Generate the correct url for a ticket comment when it's a discussion
- core: organization field set to
write_only=True
- core: If ticket comment is a reply, add the parent id post validation
Refactoring
- access: Adjust permission check logic to use try..catch instead of gettattr due to base method throwing exception
- base: move model calling of clean to tenancy model class
- docker: gunicorn config moved to con file
- core: Add ticket comment organization post validation
Tests
- core: KB article delete ticket link clean up checks
- core: KB Ticket linking serializer checks
- core: KB Ticket linking permission checks
- core: Add data for ticket comment does not use organization field
- revert test case changes from 1c06560
- information_management: Add model test cases for Model KB Article
- information_management: Add API v2 Endpoint test cases for Model KB Article
- information_management: Add Viewset test cases for Model KB Article
- information_management: Add Serializer test cases for Model KB Article
- api: mv test case change denied delete to apipermissionchange test cases
- base: Ensure Models inherit from Tenancy and SaveHistory Classes
- core: test to ensure that a user cant reply to a comment that is already part of a discussion
- core: test to ensure that a user can reply to a comment (start comment)
Images part of this release
The following images were built and published:
docker pull docker.io/nofusscomputing/centurion-erp:dev
docker pull docker.io/nofusscomputing/centurion-erp:bd31777331c082af2c62c4bcf9c14812e9a31903
docker pull docker.io/nofusscomputing/centurion-erp:1.6.0
Images part of this release
The following images were built and published:
docker pull docker.io/nofusscomputing/centurion-erp:dev
docker pull docker.io/nofusscomputing/centurion-erp:bd31777331c082af2c62c4bcf9c14812e9a31903
docker pull docker.io/nofusscomputing/centurion-erp:1.6.0
1.5.0
1.5.0 (2024-12-09)
feat
- python: update django 5.1.2 -> 5.1.4
- api: If global organization defined, filter from ALL organization fields
- api: Add nav menu permission checks for settings
- api: When fething an items url dueing metadata creation, used named parameters
- access: Modify Admin User panel by removing perms and adding teams
- access: filter permissions available
- api: Filter navigation menu by user permissions
- api: Add API version details to the metadata
- access: add
back
andreturn_url
urls to team user metadata - access: add
back
andreturn_url
urls to team metadata - api: Add
back
url to metadata - api: Add
return_url
to metadata
Fixes
- settings: Add missing
get_url
function to user_settings model - settings: Add missing
get_url
function to app_settings model - core: correctr the required parameters for related ticket serializer when fetching own url
- core: Remove requirement that ticket be specified for related tickets
get_url
- access: Add missing
table_fields
attribute to team users model - api: during metadata navigation permission checks, cater for non-existant keys
- core: Remove superfluous check from ticket viewset
- access: Team permissions is not a required field
- core: History query must also be for self, not just children
- access: correct team users table to correct data key
Refactoring
- access: Settings must be an available permissions when setting team permissions
- itam: set deviceoperatingsystem model, device field to be type
onetoone
- assistance: make content the first tab for kb articles
- api: move metadata url_return -> urls.self
Tests
- api: Nav menu permission checks for settings
- api: Nav menu permission checks
- core: Correct
url.self
checks to use list view - core: Dont test History for table view
- settings: Dont test user settings for table view
- steeings: Dont test app settings for table view
- core: Dont test related ticket for table or detail view
- api: Refactor test so that endpoints not expected to have an endpoint or be rendered in a table wont be tested for it.
- settings: API Metadata checks for user settings
- settings: API Metadata checks for external links
- settings: API Metadata checks for app settings
- project_management: API Metadata checks for project type
- project_management: API Metadata checks for project task
- project_management: API Metadata checks for project state
- project_management: API Metadata checks for project milestone
- project_management: API Metadata checks for project
- itim: API Metadata checks for problem ticket
- itim: API Metadata checks for incident ticket
- itim: API Metadata checks for change ticket
- itim: API Metadata checks for service
- itim: API Metadata checks for port
- itim: API Metadata checks for cluster type
- itim: API Metadata checks for cluster
- itam: API Metadata checks for software version
- itam: API Metadata checks for software category
- itam: API Metadata checks for software
- itam: API Metadata checks for operating system version
- itam: API Metadata checks for operating system
- itam: API Metadata checks for software
- itam: API Metadata checks for operating system
- itam: API Metadata checks for device type
- itam: API Metadata checks for device OS
- itam: API Metadata checks for device model
- itam: API Metadata checks for device
- core: API Metadata checks for ticket comment category
- core: API Metadata checks for ticket comment
- core: API Metadata checks for ticket category
- core: API Metadata checks for history
- core: API Metadata checks for related tickets
- core: API Metadata checks for manufacturers
- config_management: API Metadata checks for config group software
- config_management: API Metadata checks for config groups
- access: API Metadata checks for request ticket
- access: API Metadata checks for kb category
- access: API Metadata checks for kb
- api: correct metadata testcases
- access: API Metadata checks for organization
- api: API Metadata test cases for navigation menu rendering
- api: correct logic for test class attribute fetching
- access: API Metadata checks for Team User model
- access: API Metadata checks for Team model
- api: API Metadata functional Test Cases
Images part of this release
The following images were built and published:
docker pull docker.io/nofusscomputing/centurion-erp:dev
docker pull docker.io/nofusscomputing/centurion-erp:39e06a43a3ac4612bfb5f61eb921ccc75caf3418
docker pull docker.io/nofusscomputing/centurion-erp:1.5.0
1.4.1
1.4.1 (2024-11-30)
Fixes
- itam: When validating device config, only do so if there is config defined
Images part of this release
The following images were built and published:
docker pull docker.io/nofusscomputing/centurion-erp:dev
docker pull docker.io/nofusscomputing/centurion-erp:75cf55fe6a63b436492e2b126620fd4aa2dede99
docker pull docker.io/nofusscomputing/centurion-erp:1.4.1
1.4.0
1.4.0 (2024-11-28)
feat
- project_management: add project completed field
- api: Implement Sanity error handling for uncaught exceptions
- itam: Split device software serializer to include seperate software installs serializer
- itam: Add Operating System Installs API v2 endpoint
- itam: based off of the request kwaargs, adjust device serializer fields accordingly
- itam: Add Software installs endpoint
- itim: add cluster and device to Services in new UI
- config_management: add hosts to new UI
- api: add ticket icons
- itim: Add nodes and devices to detail view
- api: return_url to default to list view
- base: move setting
SECURE_SSL_REDIRECT = True
to etc/settings - base: use senisible settings for SSL
- itam: Add device operating system API v2 endpoint
- api: Add return URL to metadata if model has attribute
get_url
- config_management: Add field child group count to table fields for groups
- itam: Add
page_layout
to SoftwareVersion model - itam: Add
page_layout
to OperatingSystemVersion model - project_management: Add
page_layout
to Milestone model - settings: Add
page_layout
to AppSettings model - access: render team_name field as anchor
- api: Support setting char field as an anchor field using .urls._self
- api: Added abilty to specify a css class for markdown field
- Add timezone support
- api: Add a Common Model serializer to be inherited by all model serializers
- core: new field type markdown
- core: new field type char
- core: add RElated Items choices to metadata
- itam: Add Inventory API v2 endpoint
- api: Depreciate API V1 endpoint /api/config
- core: New signal for cleaning linked ticket items when the item is deleted
- core: Show milestone using base serializer for all ticket types
- core: Show project using base serializer for all ticket types
- core: Add Parse error to exceptions
- core: Ticket serializer to ensure user who opens ticket is subscribed to it
- core: Ticket serializer to validate milestone
- core: Ticket serializer to validate organization
- itim: Add Project Task API v2 endpoint
- itim: Add Problem Ticket API v2 endpoint
- itim: Add Incident Ticket API v2 endpoint
- itim: Add Change Ticket API v2 endpoint
- api: Depreciate v1 API Endpoint Assistance
- api: Depreciate v1 API Endpoint Request Ticket
- api: Depreciate v1 API Endpoint Assistance
- api: Depreciate v1 API Endpoint Ticket Comments
- api: Depreciate v1 API Endpoint Ticket Comment Categories
- api: Depreciate v1 API Endpoint Ticket Categories
- core: Ensure Related Tickets validate against duplicate entries
- core: Add MethodNot Allowed to Centurion exceptions
- core: Determine serializer from action and user permissions for Ticket Comments
- core: Add custom exception class
- core: Ensure ticket comment Serializer validates for existance of comment_type and ticket id
- core: Ensure ticket comment Serializer is picked based off of comment_type
- core: Ensure that ticket linked item validates if ticket supplied
- core: Ensure that ticket comment category cant assign self as parent
- core: Ensure that ticket category cant assign self as parent
- core: Add Ticket Comment Category API v2 endpoint
- core: Add Item Ticket API v2 endpoint
- core: Add Related Ticket API v2 endpoint
- core: Add Ticket Linked Item API v2 endpoint
- core: Add url function to Ticket Linked Items model
- itim: Add url function to Service model
- itim: Add url function to Cluster model
- itam: Add url function to Software model
- itam: Add url function to Operating System model
- itam: Add url function to Device model
- config_management: Add url function to Config Groups model
- core: Add Ticket Comment API v2 endpoint
- core: Add Ticket Category API v2 endpoint
- assistance: Add Request Ticket API v2 endpoint
- api: Custom exception UnknownTicketType
- core: Add Base Ticket Serializer and ViewSet
- api: Setup API to be correctly versioned
- settings: Add get_organization function to app settings model
- settings: Add Celery Task Logs API v2 endpoint
- api: Added ability to specify table fields within the viewset.
- settings: Add User Settings API v2 endpoint
- settings: Add App Settings API v2 endpoint
- project_management: Add remaining Project base serializers for API v2
- project_management: Project Validation for API v2
- project_management: Add Project Type API v2 endpoint
- project_management: Add Project State API v2 endpoint
- project_management: Add Project Milestone API v2 endpoint
- project_management: Add Project API v2 endpoint
- itim: Port Serializer Validations
- itim: Service Serializer Validations
- itim: Ensure cluster cant assign itself as parent on api v2 endpoint
- itim: Add Port API v2 endpoint
- itim: Add Cluster API v2 endpoint
- itim: Add Cluster Type API v2 endpoint
- itim: Add Service API v2 endpoint
- itam: Depreciate API v1 Software Endpoint
- core: Add Operating System Version API v2 endpoint
- core: Add Operating System API v2 endpoint
- core: Add External Link API v2 endpoint
- itam: Add Device Software API v2 endpoint
- itam: Add Device API v2 endpoint
- itam: Add Device Type API v2 endpoint
- itam: Add Software Version API v2 endpoint
- itam: Depreciate API v1 device endpoint
- itam: Add Software API v2 endpoint
- itam: Add Device Model API v2 endpoint
- itam: Add Device API v2 endpoint
- itim: Add Service Notes API v2 endpoint
- core: Add Software Notes API v2 endpoint
- core: Add Manufacturer API v2 endpoint
- itim: Add Service base serializer
- itam: Add operating system Base Serializer
- config_management: Add Notes API v2 endpoint
- config_management: Add History API v2 endpoint
- config_management: Depreciate API v1 config endpoint
- config_management: Add config groups to config api endpoint
- config_management: Add Device Base Serializer
- itam: Add Software Version Base Serializer
- itam: Add Software Base Serializer
- config_management: Add Config Group Software API v2 endpoint
- config_management: Add Config Group API v2 endpoint
- assistance: Ensure Knowledge Base Category cant assign self as parent category
- assistance: Knowledge Base Serializer Validation method added
- assistance: Add Knowledge Base Category API v2 endpoint
- assistance: Add Knowledge Base API v2 endpoint
- api: Depreciate API v1 permission endpoint
- access: Add Team Users API endpoint
- access: Depreciate Team API v1 endpoint
- access: Depreciate Organization API v1 endpoint
- access: Add Organization API endpoint
- base: Add Team API endpoint
- base: Add Permission API endpoint
- base: Add Content Type API endpoint
- api: Add Read Only abstract ViewSet
- base: Add user API endpoint
- api: add v2 endpoint
- project_management: Add attribute table_fields to Project Type model
- project_management: Add attribute page_layout to Project Type model
- project_management: Add attribute table_fields to Project State model
- project_management: Add attribute page_layout to Project State model
- project_management: Add attribute page_layout to Project Milestone model
- project_management: Add attribute table_fields to Project Milestone model
- project_management: Add attribute table_fields to Project model
- project_management: Add attribute page_layout to Project model
- itim: Add attribute table_fields to Service model
- itim: Add attribute page_layout to Service model
- itim: Add attribute table_fields to Service Port model
- itim: Add attribute page_layout to Service Port model
- itim: Add attribute table_fields to Cluster Type model
- itim: Add attribute page_layout to Cluster Type model
- itim: Add attribute table_field to Cluster model
- itim: Add attribute page_layout to Cluster model
- itam: Add attribute table_field to Software Category model
- itam: Add attribute table_fields to Software model
- itam: Add attribute page_layout to Software model
- itam: Add attribute table_fields to Operating System Version model
- itam: Add attribute page_layout to Operating System Version model
- itam: Add attribute table_field to Operating System model
- itam: Add attribute page_layout to Operating System model
- itam: Add attribute table_fields to "Device Type" model
- itam: Add attribute page_layout to "Device Type" model
- itam: Add attribute page_layout to "Device Software" model
- itam: Add attribute table_fields to "Device Software" model
- itam: Add attribute page_layout to "Device Software" model
- core: Add attribute table_fields to Ticket Comment Category model
- core: Add attribute page_layout to Ticket Comment Category model
- core: Add attribute page_layout to Ticket comment model
- core: Add attribute table_fields to Ticket Category model
- core: Add attribute page_layout to Ticket Category model
- core: Add attribute page_layout to Ticket model
- core: Add attribute page_layout to Notes model
- core: Add attribute table_fields to Manufacturer model
- core: Add attribute page_layout to Manufacturer model
- access: Add attribute table_fields to Config Group Software model
- access: Add attribute page_layout to Config Group Software model
- access: Add attribute table_fields to Config Groups model
- access: Add attribute page_layout to Config Groups model
- access: Add attribute table_fields to KB model
- access: Add attribute page_layout to KB model
- access: Add attribute table_fields to KB Category model
- access:...
1.3.1
1.3.1 (2024-11-27)
Fixes
- core: Ensure user cant view tickets in orgs they are not part of
Tests
- access: Add dummy functional test for CI to complete
Images part of this release
The following images were built and published:
docker pull docker.io/nofusscomputing/centurion-erp:dev
docker pull docker.io/nofusscomputing/centurion-erp:26b0bfac7010f1370793da0913039a5f8636a811
docker pull docker.io/nofusscomputing/centurion-erp:1.3.1
1.3.0
1.3.0 (2024-10-31)
feat
- docker: Add worker service config for SupervisorD
- docker: ensure supervisor starts
- docker: use correct file location for nginx config
- docker: Fail the build if django is not found
- docker: Install NginX to serve site
- docker: Add supervisord for install
- docker: Add gunicorn for install
- update docker image alpine 3.19 ->3.20
Fixes
- docker: Ensure SupervisorD daemon config directory exists.
- docker: use alias for static
- access: testing of param causing gunicorn to fail
- docker: place nginx conf in correct path
- docker: gunicorn must call method
- docker: Ensure NginX config applied after it's installed
- docker: Add proxy params for NginX
- docker: Make centurion the default nginx conf
- docker: Correct NginX start command
Refactoring
- docker: Switch to entrypoint
Images part of this release
The following images were built and published:
docker pull docker.io/nofusscomputing/centurion-erp:dev
docker pull docker.io/nofusscomputing/centurion-erp:4b8353350b2ec97ddf160682722e9ad84e249aa5
docker pull docker.io/nofusscomputing/centurion-erp:1.3.0
1.2.2
1.2.2 (2024-10-29)
Fixes
- docker: adjust pyyaml to >-6.0.1
Images part of this release
The following images were built and published:
docker pull docker.io/nofusscomputing/centurion-erp:dev
docker pull docker.io/nofusscomputing/centurion-erp:ca3b99cb3a3ff5d2ca2b4881988e70037bf644fe
docker pull docker.io/nofusscomputing/centurion-erp:1.2.2
1.2.1
1.2.1 (2024-10-22)
Fixes
- project_management: Ensure user cant see projects for organizations they are apart of
Refactoring
- project_management: dont order queryset for project
Images part of this release
The following images were built and published:
docker pull docker.io/nofusscomputing/centurion-erp:dev
docker pull docker.io/nofusscomputing/centurion-erp:6351acabe5b5e2df6a48120eb438d1f0b4015d13
docker pull docker.io/nofusscomputing/centurion-erp:1.2.1
1.2.0
1.2.0 (2024-10-11)
feat
- update django 5.0.8 -> 5.1.2
- settings: Add API filter and search
- core: Add API filter of fields external_system and external_ref for projects
- core: Add API filter of fields external_system and external_ref to tickets
- project_management: increase project field length 50 -> 100 chars
- core: increase ticket title field length 50 -> 100 chars
- core: Add ability track ticket estimation time for completion
- core: Add ability to delete a ticket
- core: [Templating Engine] Add template tag concat_strings
- itim: Add ticket tab to services
- itim: Add ticket tab to clusters
- itam: Add ticket tab to software
- itam: Add ticket tab to operating systems
- itam: Add ticket tab to devices
- config_management: Add ticket tab to conf groups
- core: Add slash command
link
for linking items to tickets - core: Add to markdown rendering model references
- core: Ability to link items to all ticket types
- core: add model ticket linked items
- project_management: Add project milestones api endpoint
- project_management: Add import_project permission and add api serializer
- core: great odins beard, remove the checkbox formatting
- project_management: Add field is_deleted to projects
- project_management: Calculate project completion percentage and display
- core: order project categories with parent name if applicable
- project_management: Add Project Type to the UI
- project_management: Add Project State to the UI
- project_management: add priority field to project model, form and api endpoint
- project_management: add organization field to project form and api endpoint
- project_management: add project_type field to project form
- project_management: add external_ref and external_system field to project model
- project_management: add project type field to project model
- project_management: add project type api endpoint
- project_management: new model project type
- project_management: add project state api endpoint
- project_management: add project state field to project model
- project_managemenet: new model project state
- project_management: add field external system to projects
- core: validate field milestone for all ticket types
- core: Add field milestone to all ticket types
- project_management: Add project milestones
- core: Add slash command "related ticket" for ticket and ticket comments
- core: Suffix username to action comments
- core: Add slash command
/spend
for ticket and ticket comments - core: Disable HTML tag rendering for markdown
- project_management: remove requirement for code field to be populated
- core: Add ticket comment category API endpoint
- core: Ability to assign categories to ticket comments
- core: Add ticket comment categories
- core: Extend all ticket endpoints to contain ticket categories
- core: Add ticket category API endpoint
- core: Ability to assign categories to tickets
- core: Addpage titles to view abstract classes
- core: Add ticket categories
- core: during markdown render, if ticket ID not found return the tag
- core: Add heading anchor plugin to markdown
- core: correct markdown formatting for KB articles
- core: remove project field from being editable when creating project task
- core: Add admonition style
- project_management: Validate project task has project set
- core: set project ID to match url kwarg
- core: Add action comment on title change
- core: Add task listts plugin to markdowm
- core: Add footnote plugin to markdowm
- core: Add admonition plugin to markdowm
- core: Add table extension to markdowm
- core: Add strikethrough extension to markdowm
- core: Add linkify extension to markdowm
- core: move markdown parser py-markdown -> markdown-it
- core: Add organization column to ticket pages
- core: Allow super-user to edit ticket comment source
- core: Render linked tickets the same as the rendered markdown link
- core: Add project task link for related project task
- project_management: Add project duration field
- core: Add external ref to tickets if populated
- core: Add project task permissions
- project_management: Add project tasks
- api: Add project tasks endpoint
- api: Add projects endpoint
- api: Add project management endpoint
- core: support negative numbers when Calculating ticket duration for ticket meta and comments
- core: Caclulate ticket duration for ticket meta and comments
- core: Add edit details to ticket and comments
- core: Don't save model history for ticket models
- core: add option to allow the prevention of history saving for tenancy models
- core: Add project field to tickets allowed fields
- core: Update ticket status when assigned/unassigned users/teams
- core: Create action comment for subscribed users/teams
- core: Create action comment for assigned users/teams
- core: adding of more ticket status icons
- api: Ticket endpoint dynamic permissions
- core: add ticket status badge
- access: add ability to fetch dynamic permissions
- core: Add delete view for ticket types: request, incident, change and problem
- api: when attempting to create a device and it's found within DB, dont recreate, return it.
- core: When solution comment posted to ticket update status to solved
- core: Add opened by column to ticket indexes
- core: permit user to add comment to own ticket
- core: Allow OP to edit own Ticket Comment
- core: Ticket Comment form submission validation
- core: Ticket Comment can be edited by owner
- core: Ticket Comment source hidden for non-triage users
- core: When fetching allowed ticket comment fields, check against permissions
- core: pass request to ticket comment form
- itam: Accept device UUID in any case.
- core: Add ticket status icon
- core: Enable ticket comment created date can be set when an import user
- api: Set default values for ticket comment form to match ticket
- core: render ticket number
#\d+
links within markdown - core: Use common function for markdown rendering for ticket objects
- api: Ensure device can add/edit organization
- core: Add api validation for ticket
- core: Ensure for tenancy objects that the organization is set
- core: Ticket comment orgaanization set to ticket organization
- core: colour code related ticket background to ticket type
- core: Validate ticket related and prevent duel related entries
- core: Validate ticket status field for all ticket types
- core: Add ticket action comments on ticket update
- core: Add Title bar to ticket form
- core: Add field level permission and validation checks
- core: Add permission checking to Tickets form
- access: add dynamic permissions to Tenancy Permissions
- api: Add Tickets endpoint
- itim: Add Problem ticket to navigation
- itim: Add Incident ticket to navigation
- itim: Add Change ticket to navigation
- assistance: Add Request ticket to navigation
- core: add basic ticketing system
- development: add option for including additional stylesheets
- ui: add project management icon
- project_management: Add manager and users for projects and tasks
- project_management: Project task view "view"
- project_management: Project task edit view
- project_management: Project task delete view
- project_management: Project task add view
- project_management: Add project task model
- project_management: save project history
- project_management: add project delete page
- project_management: add project edit page
- project_management: add project view page
- project_management: add project add page
- project_management: add project index page
- project_management: add interim project model
Fixes
- ensure model mandatory fields don't specify a default value
- api: Ensure user is set to current user for ticket comment
- core: remove org field when editing a ticket
- core: during validation, if subscribed users not specified, use empty list
- core: add missing pagination to ticket comment categories index
- core: add missing pagination to ticket categories index
- project_management: Ensure project type and state show on index page
- core: Add replacement function within ticket validation as
cleaned_data
attribute replacement - core: Ensure the ticket clears project field on project removal
- core: Remove ticket fields user has no access to
- core: correct logic for slash command
/spend
- project_management: correct project view permissions
- core: Correct view permissions for ticket comment category
- core: correct url typo for ticket category API endpoint
- core: dont attempt to modify field for ticket category API list
- core: Dont attempt to render ticket category if none
- core: Correct the delete permission
- core: correct project task reply link for comments
- core: correct project task comment buttons
- project_management: correct comment reply url name
- core: Generate the correct edit url for tickets
- core: Generate the correct comment urls for tickets
- core: Redirect to correct url for itim tickets after adding comment
- core: correct linked tickets hyperlink address
- core: order ticket comments by creation date
- core: Ensure for both ticket and comment, external details are unique.
- core: Ensure on ticket comment create and update a response is returned
- core: Ensure related tricket action comment is trimmed
- core: Team assigned to ticket status update
- api: ensure ticket_type is set from view var
- *core...