TIP: You can type at any time to perform a new search.
OpenEduCat Library
openeducat_library · OCA/vertical-education
- Repository
- OCA/vertical-education · module folder · Try on Runboat
- Module version
- 3.0.0
- Category
- Education
- Folder size
- 0.62 MB
- License
- LGPL-3
- Application
- Yes
- Auto-installable
- No
- Website
- http://www.openeducat.org
- Last tracking update
- 2026-08-07 07:17:52
- Authors
- Tech Receptives
- Maintainers
- Tech Receptives
- Committers
- Maxime Chambreuil, Pedro M. Baeza, Stéphane Bidoul (ACSONE), Parthiv Patel, Ajay Chauhan, ajaychauhan727
Code Analysis ⓘ
Views touched (44)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
issue_media_form |
issue.media.form | issue.media | form | New |
library_student_dashboard_form_view |
board.faculty.form | board.board | form | Inherits openeducat_core.board_student_form |
report_library_card_barcode |
report_library_card_barcode | ir.ui.view | qweb | New |
report_media_barcode |
report_media_barcode | ir.ui.view | qweb | New |
report_student_library_card |
report_student_library_card | ir.ui.view | qweb | New |
reserve_media_form |
reserve.media.form | reserve.media | form | New |
return_media_form |
return.media.form | return.media | form | New |
view_media_unit_form |
op.media.unit.form | op.media.unit | form | New |
view_media_unit_search |
op.media.unit.search | op.media.unit | search | New |
view_media_unit_tree |
op.media.unit.tree | op.media.unit | tree | New |
view_op_author_form |
op.author.form | op.author | form | New |
view_op_author_search |
op.author.search | op.author | search | New |
view_op_author_tree |
op.author.tree | op.author | tree | New |
view_op_faculty_form_library_inherit |
op.faculty.form.library.inherit | op.faculty | form | Inherits openeducat_core.view_op_faculty_form |
view_op_library_card_form |
op.library.card.form | op.library.card | form | New |
view_op_library_card_search |
op.library.card.search | op.library.card | search | New |
view_op_library_card_tree |
op.library.card.tree | op.library.card | tree | New |
view_op_library_card_type_form |
op.library.card.type.form | op.library.card.type | form | New |
view_op_library_card_type_search |
op.library.card.type.search | op.library.card.type | search | New |
view_op_library_card_type_tree |
op.library.card.type.tree | op.library.card.type | tree | New |
view_op_media_form |
op.media.form | op.media | form | New |
view_op_media_movement_form |
op.media.movement.form | op.media.movement | form | New |
view_op_media_movement_search |
op.media.movement.search | op.media.movement | search | New |
view_op_media_movement_tree |
op.media.movement.tree | op.media.movement | tree | New |
view_op_media_queue_form |
op.media.queue.form | op.media.queue | form | New |
view_op_media_queue_search |
op.media.queue.search | op.media.queue | search | New |
view_op_media_queue_tree |
op.media.queue.tree | op.media.queue | tree | New |
view_op_media_search |
op.media.search | op.media | search | New |
view_op_media_tree |
op.media.tree | op.media | tree | New |
view_op_media_type_form |
op.media.type.form | op.media.type | form | New |
view_op_media_type_search |
op.media.type.search | op.media.type | search | New |
view_op_media_type_tree |
op.media.type.tree | op.media.type | tree | New |
view_op_publisher_form |
op.publisher.form | op.publisher | form | New |
view_op_publisher_search |
op.publisher.search | op.publisher | search | New |
view_op_publisher_tree |
op.publisher.tree | op.publisher | tree | New |
view_op_purchase_form |
op.media.purchase.form | op.media.purchase | form | New |
view_op_purchase_search |
op.media.purchase.search | op.media.purchase | search | New |
view_op_purchase_tree |
op.media.purchase.tree | op.media.purchase | tree | New |
view_op_student_form_library_inherit |
op.student.form.library.inherit | op.student | form | Inherits openeducat_core.view_op_student_form |
view_op_student_library_form |
op.student.form | op.student | form | New |
view_op_student_tree_library_inherit |
op.student.tree.library.inherit | op.student | tree | Inherits openeducat_core.view_op_student_tree |
view_op_tag_form |
op.tag.form | op.tag | form | New |
view_op_tag_search |
op.tag.search | op.tag | search | New |
view_op_tag_tree |
op.tag.tree | op.tag | tree | New |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (19)
New fields (0)
No new fields.
Public methods (1)-
action_invoice_paid(self)@api.multi
New fields (8)
-
faculty_idMany2one → op.facultyargs: 'op.faculty', 'Faculty' -
issued_dateDatedefault=fields.Date.today()required=True args: 'Issued Date' -
library_card_idMany2one → op.library.cardrequired=True args: 'op.library.card', 'Library Card' -
media_idMany2one → op.mediarequired=True args: 'op.media', 'Media' -
media_unit_idMany2one → op.media.unitrequired=True args: 'op.media.unit', 'Media Unit' -
return_dateDaterequired=True args: 'Return Date' -
student_idMany2one → op.studentargs: 'op.student', 'Student' -
typeSelectiondefault='student'required=True args: [('student', 'Student'), ('faculty', 'Faculty')], 'Type'
-
check_max_issue(self, student_id, library_card_id) -
do_issue(self)@api.multi -
onchange_library_card_id(self)@api.onchange('library_card_id')
New fields (3)
-
addressMany2one → res.partnerargs: 'res.partner', 'Address' -
media_idsMany2many → op.mediastring='media(s)' args: 'op.media' -
nameCharrequired=Truesize=128 args: 'Name'
No public methods.
New fields (2)
-
library_card_idMany2one → op.library.cardargs: 'op.library.card', 'Library Card' -
media_movement_linesOne2many → op.media.movementargs: 'op.media.movement', 'faculty_id', 'Movements'
No public methods.
New fields (7)
-
faculty_idMany2one → op.facultyargs: 'op.faculty', 'Faculty' -
issue_dateDatedefault=fields.Date.today()required=True args: 'Issue Date' -
library_card_type_idMany2one → op.library.card.typerequired=True args: 'op.library.card.type', 'Card Type' -
numberCharreadonly=Truesize=256 args: 'Number' -
partner_idMany2one → res.partnerrequired=True args: 'res.partner', 'Student/Faculty' -
student_idMany2one → op.studentargs: 'op.student', 'Student' -
typeSelectiondefault='student'required=True args: [('student', 'Student'), ('faculty', 'Faculty')], 'Type'
-
create(self, vals)@api.model -
onchange_student_faculty(self)@api.onchange('student_id', 'faculty_id') -
onchange_type(self)@api.onchange('type')
New fields (4)
-
allow_mediaIntegerrequired=Truesize=10 args: 'No of medias Allowed' -
durationIntegerhelp='Duration in terms of Number of Lead Days'required=True args: 'Duration' -
nameCharrequired=Truesize=256 args: 'Name' -
penalty_amt_per_dayFloatrequired=True args: 'Penalty Amount per Day'
-
check_details(self)@api.constrains('allow_media', 'duration', 'penalty_amt_per_day')
New fields (14)
-
author_idsMany2many → op.authorrequired=Truestring='Author(s)' args: 'op.author' -
course_idsMany2many → op.coursestring='Course' args: 'op.course' -
descriptionTextargs: 'Description' -
editionCharargs: 'Edition' -
internal_codeCharsize=64 args: 'Internal Code' -
isbnCharsize=64 args: 'ISBN Code' -
media_type_idMany2one → op.media.typeargs: 'op.media.type', 'Media Type' -
movement_lineOne2many → op.media.movementargs: 'op.media.movement', 'media_id', 'Movements' -
nameCharrequired=Truesize=128 args: 'Title' -
publisher_idsMany2many → op.publisherrequired=Truestring='Publisher(s)' args: 'op.publisher' -
queue_idsOne2many → op.media.queueargs: 'op.media.queue', 'media_id', 'Media Queue' -
subject_idsMany2many → op.subjectstring='Subjects' args: 'op.subject' -
tagsMany2many → op.tagstring='Tag(s)' args: 'op.tag' -
unit_idsOne2many → op.media.unitargs: 'op.media.unit', 'media_id', 'Units'
No public methods.
New fields (16)
-
actual_return_dateDateargs: 'Actual Return Date' -
faculty_idMany2one → op.facultyargs: 'op.faculty', 'Faculty' -
invoice_idMany2one → account.invoicereadonly=True args: 'account.invoice', 'Invoice' -
issued_dateDatedefault=fields.Date.today()required=True args: 'Issued Date' -
library_card_idMany2one → op.library.cardrequired=Truetrack_visibility='onchange' args: 'op.library.card', 'Library Card' -
media_idMany2one → op.mediarequired=True args: 'op.media', 'Media' -
media_type_idMany2onerelated='media_id.media_type_id'store=Truestring='Media Type' -
media_unit_idMany2one → op.media.unitrequired=Truetrack_visibility='onchange' args: 'op.media.unit', 'Media Unit' -
partner_idMany2one → res.partnertrack_visibility='onchange' args: 'res.partner', 'Person' -
penaltyFloatargs: 'Penalty' -
reserver_nameCharsize=256 args: 'Person Name' -
return_dateDaterequired=True args: 'Due Date' -
stateSelectiondefault='available'track_visibility='onchange' args: [('available', 'Available'), ('reserve', 'Reserved'), ('issue', 'Issued'), ('lost', 'Lost'), ('return', 'Returned'), ('return_done', 'Returned Done')], 'Status' -
student_idMany2one → op.studentargs: 'op.student', 'Student' -
typeSelectionrequired=True args: [('student', 'Student'), ('faculty', 'Faculty')], 'Student/Faculty' -
user_idMany2one → res.usersrelated='student_id.user_id'string='Users' args: 'res.users'
-
calculate_penalty(self)@api.multi -
check_actual_return_date(self)@api.constrains('issued_date', 'actual_return_date') -
create_penalty_invoice(self)@api.multi -
issue_media(self)@api.multifunction to issue media -
onchange_library_card_id(self)@api.onchange('library_card_id') -
onchange_media_unit_id(self)@api.onchange('media_unit_id') -
return_media(self, return_date)@api.multi
New fields (9)
-
authorCharrequired=Truesize=256track_visibility='onchange' args: 'Author(s)' -
course_idsMany2one → op.courserequired=Truetrack_visibility='onchange' args: 'op.course', 'Course' -
editionCharargs: 'Edition' -
media_type_idMany2one → op.media.typeargs: 'op.media.type', 'Media Type' -
nameCharrequired=Truesize=128 args: 'Title' -
publisherCharsize=256 args: 'Publisher(s)' -
requested_idMany2one → res.partnerdefault=<expr> args: 'res.partner', 'Requested By' -
stateSelectiondefault='draft'readonly=Truetrack_visibility='onchange' args: [('draft', 'Draft'), ('request', 'Requested'), ('reject', 'Rejected'), ('accept', 'Accepted')], 'State' -
subject_idsMany2one → op.subjectrequired=Truetrack_visibility='onchange' args: 'op.subject', 'Subject'
-
act_accept(self)@api.multi -
act_reject(self)@api.multi -
act_requested(self)@api.multi
New fields (7)
-
date_fromDatedefault=fields.Date.today()required=True args: 'From Date' -
date_toDaterequired=True args: 'To Date' -
media_idMany2one → op.mediarequired=Truetrack_visibility='onchange' args: 'op.media', 'Media' -
nameCharcopy=Falsedefault='/'readonly=True args: 'Sequence No' -
partner_idMany2one → res.partnerargs: 'res.partner', 'Student/Faculty' -
stateSelectioncopy=Falsedefault='request'track_visibility='onchange' args: [('request', 'Request'), ('accept', 'Accepted'), ('reject', 'Rejected')], 'Status' -
user_idMany2one → res.usersdefault=<expr>readonly=True args: 'res.users', 'User'
-
create(self, vals)@api.model -
do_accept(self)@api.multi -
do_reject(self)@api.multi -
do_request_again(self)@api.multi -
onchange_user(self)@api.onchange('user_id')
New fields (2)
-
codeCharrequired=Truesize=64 args: 'Code' -
nameCharrequired=Truesize=64 args: 'Name'
No public methods.
New fields (6)
-
barcodeCharsize=20 args: 'Barcode' -
media_idMany2one → op.mediarequired=Truetrack_visibility='onchange' args: 'op.media', 'Media' -
media_type_idMany2onerelated='media_id.media_type_id'store=Truestring='Media Type' -
movement_linesOne2many → op.media.movementargs: 'op.media.movement', 'media_unit_id', 'Movements' -
nameCharrequired=True args: 'Name' -
stateSelectiondefault='available'track_visibility='onchange' args: [('available', 'Available'), ('issue', 'Issued')], 'State'
-
create(self, vals)@api.model -
name_search(self, name, args=None, operator='ilike', limit=100)@api.model
New fields (3)
-
address_idMany2one → res.partnerargs: 'res.partner', 'Address' -
media_idsMany2many → op.mediastring='media(s)' args: 'op.media' -
nameCharrequired=Truesize=20 args: 'Name'
No public methods.
New fields (2)
-
library_card_idMany2one → op.library.cardargs: 'op.library.card', 'Library Card' -
media_movement_linesOne2many → op.media.movementargs: 'op.media.movement', 'student_id', 'Movements'
No public methods.
New fields (1)
-
nameCharrequired=Truesize=64 args: 'Name'
No public methods.
New fields (0)
No new fields.
Public methods (2)-
get_barcode(self, type, value, width=350, height=60, hr=1)genrating image for barcode -
render_html(self, docids, data=None)@api.model
New fields (0)
No new fields.
Public methods (2)-
get_barcode(self, type, value, width=350, height=60, hr=1)genrating image for barcode -
render_html(self, docids, data=None)@api.model
New fields (1)
-
partner_idMany2one → res.partnerrequired=True args: 'res.partner'
-
set_partner(self)@api.multi
New fields (3)
-
actual_return_dateDatedefault=<expr>required=True args: 'Actual Return Date' -
media_idMany2one → op.mediareadonly=True args: 'op.media', 'Media' -
media_unit_idMany2one → op.media.unitreadonly=Truerequired=True args: 'op.media.unit', 'Media Unit'
-
do_return(self)@api.multi
Loading…