RMuseum User login/logout/register/... constructor Sign Up Email Subject subject Sign Up Email Html Content html content Forgot Password Email Subject subject Forgot Password Email Html Content html content Is Sign-up enabled? get all published artifacts (including CoverImage info but not items info) get list of artifact statuses user can see get all artifacts visible by user (including CoverImage info but not items info) gets specified publish artifact info (including CoverImage + images) remove unpublished artifact having no notes and not bookmarked gets specified publish artifact info (including CoverImage + images) where its items are filteted by tag gets specified publish artifact info (including CoverImage + images) where its items are filteted by tag gets specified publish artifact info (including CoverImage + images) gets specified publish artifact info (including CoverImage + images) where its items are filteted by tag gets specified publish artifact info (including CoverImage + images) where its items are filteted by tag edit artifactt master record (user should have additional permissions artifact:awaiting and artifact:publish to change status of artifact) editing related collections such as images and attributed or complex properties such as CoverImage is ignored Set Artifact Cover Item Index get tag bundle by frindly url add new tag only name is processed get all tags edit tag editable fields are limited changes order of tags based on their position in artifacts up / down the other tag which its Order got replaced with the input id changes order of tags based on their position in artifact items up / down the other tag which its Order got replaced with the input id get tag value bundle by frindly url get tag value by frindly url add new tag value to artifact only name is processed edit artifact attribute value editable fields are limited apply on all same value tags remove tag from artifact add new tag value to item only name is processed edit item attribute value editable fields are limited apply on all same value tags remove tag from item changes order of tag values based on their position in an artifact up / down the other tag which its Order got replaced with the input id changes order of tag values based on their position in an item up / down the other tag which its Order got replaced with the input id gets specified publish artifact item info (including images + attributes) gets specified publish artifact item info (including images + attributes) Add new artifact (multipart/form-data) const data = new FormData(); data.append('name', 'تست'); data.append('description', ''); data.append('srcUrl', ''); data.append('picTitle', 'تست'); data.append('picDescription', ''); data.append('file', this.file); data.append('picSrcUrl', ''); import from external resources loc/princeton/harvard/qajarwomen/hathitrust/penn/cam/bl/folder/walters/cbl 119 golestan-baysonghori keep alive (for import background service) true retry import due to a bug in loc json outputs some artifacts with more than 1000 pages were downloaded incompletely 123456 bookmark artifact bookmark item item bookmarks info fav artifact fav item artifact bookmarks info item bookmarks info user bookmarks user favorites add note for artifact add note for artifact item Edit User Notes a note can not be edited by a user other than its owner or another using having note:moderate permission only htmlContent is processed delete user notes 1. a note can not be deleted by a user other than its owner or another using having note:moderate permission 2. all notes which have refernce to deleting note (sent in reply to it) would be deleted irrelevant of their ownership list of notes deleted get private notes for artifact get private notes for artifact get private notes for artifact item get public notes for artifact item user public notes user public notes all users public notes suggest ganjoor link get suggested ganjoor links review suggested ganjoor link mark suggested ganjoor link as synchronized toc / temporary one time api / to be removed get suggested pinterest links suggest pinterest link for ganjoor review suggested ganjoor pinterest link mark suggested pinterest ganjoor link as synchronized Get User Notifications Switch Notification Status Delete Notification constructor Artifact Service IUserPermissionChecker instance IMemoryCache Captcha service Gets audio narrations, user must have narration::moderate permission to be able to see all users narrations default: false, user must have narration::moderate permission to be able to see all users narrations default: -1, unfiltered Narration Upload imports data from ganjoor MySql database constructor Artifact Service IUserPermissionChecker instance Audit Log Controller Base constructor returns image stream Rotate Image in 90 deg. multiplicants: 90, 180 or 270 Generate Cropped Image Based On ThumbnailCoordinates For Notes id of cropped image constructor Artifact Service Generic Image Provider constructor roles constructor Museum Database Context constructor Picture Files Item Attributes Artifacts Items Import Jobs Tags User Bookmarks User Notes Ganjoor Links Notifications Pinterest Links Ganjoor Audio Files Upload Sessions Items or pictures status Id parent id Order in Collections Friendly Url Name Name In English Description Description In English Main Image Last Modified for caching purposes All Images Attributes Museum Master Item Id Friendly Url Publish Status Name Name In English Description Description In English Date/Time Last Modified for caching purposes Cover Item Index Cover Image Cover Image Id Parts of this item Item Count (for lists and queries) Attributes Artifact Picture Files Title Title in English Description Description in English Publish status order in the collection it belongs to it نام فایل ذخیره شده با بالاترین کیفیت e0d7050a-7e30-4a2f-b181-0daa4a1e1068.jpg نام فایل ذخیره شده با بالاترین کیفیت fbe9cc8e-12fa-4cb9-8f09-bbf353333383.jpg عرض تصویر مناسب نمایش در صفحهٔ اختصاصی طول تصویر مناسب نمایش در صفحهٔ اختصاصی عرض تصویر با اندازه مناسب نمایش در صفحات لیستی طول تصویر با اندازه مناسب نمایش در صفحات لیستی source url Last Modified for caching purposes duplicated a picture record (Id is missing so you should store this to get a new Id) Item Attribute Id Order tag type Friendly Url Publish Status Name Name In English Plural Name Plural Name In English Value is normally changed globally نوع ویژگی عادی پیوند جستجو پیوند و جستجو متن چپ به راست بدون مقدار عنوان در فهرست Attribute Value Id Friendly Url Publish Status Value Values In English link or .... new artifact view model RArtifactItemRecord with additional info main item info parent parent name parent image parent item count empty or null means this is last item next image empty or null means this is first item prev image Formatted Tags Museum Master Item View Model constructor Tags Binary Tagged Items Titles of Items in Contents Artifact Tag (RTag with grouped related RTagValues of Artifact) Tag Bundle View Model Item Title Item Friendly Url Items Count Item Image Id Tag Bundle View Model Id Friendly Url Name Plural Name Values Artifact Binary Tagged items Summation Tag Name Tag Friendly Url Item Count Title of an Item in Artifact Contents Title Order Level Item Friendly Url specific forms and permission artifact tag note view drafts edittag awaiting publish import moderate review suggested ganjoor links audio narrations list of forms and their permissions Bookmark Type Private Bookmark Public Favorite User Bookmarks Id User Id User Master Record Id Master Record Item Record Id Item Record DateTime Type User Note Id User Id Master Record Item Record DateTime Type User Note Audio Review Status All / Unfiltered (for queris) Draft pending for review approved Rejected Audio Synchronization Status (binary combination is acceptable) no changed new upload meta data should be updated sound files should be reuploaded (this means xml file is also needs to reuploaded) Xml file should be reuploaded Item should be deleted Poem Narration Id Owner User Owner User Id Final data is actually exported to a MySQL database which this auto increment field is its key Ganjoor Post Id This determines where an audio is displayed between a list of sounds related to a specfic poem Using this field content you would determine xml, mp3 and ogg file names combining this with + .ext would preduce relative path of sound files on our file server the full path would become [HOMEPath] + '/i/' + this value "a2" We had previously used different pathes because when a directory became overcrowded our connection time would increase unbearably due to IRAN internet problems, so it is sensible to store it per record and not as a global option value MP3 File Path MP3 url OGG File Path OGG url This is also a legacy field "/i/a2/x" XML Schema is defined based on Desktop Ganjoor (https://github.com/ganjoor/ganjoor) code, for more information take a look at this code: https://github.com/ganjoor/ganjoor/blob/master/ganjoor/Audio%20Support/PoemAudioListProcessor.cs XML url Audio Title Audio Artist Audio Artist Url Audio Source Audio Src Url Legacy Audio Guid Audio File CheckSum mp3 size in bytes ogg size in bytes Upload Date Review Date (Approve or Reject) MP3 File local path on Windows Server (if item is not rejected probably it is not valid and it is deleted) XML File local path on Windows Server (if item is not rejected probably it is not valid and it is deleted) Value is one or a combination of Review Status Poem Narration view model constructor Id Owner User Final data is actually exported to a MySQL database which this auto increment field is its key Ganjoor Post Id This determines where an audio is displayed between a list of sounds related to a specfic poem Using this field content you would determine xml, mp3 and ogg file names combining this with + .ext would preduce relative path of sound files on our file server the full path would become [HOMEPath] + '/i/' + this value "a2" We had previously used different pathes because when a directory became overcrowded our connection time would increase unbearably due to IRAN internet problems, so it is sensible to store it per record and not as a global option value MP3 File Path MP3 url OGG File Path OGG url This is also a legacy field "/i/a2/x" XML Schema is defined based on Desktop Ganjoor (https://github.com/ganjoor/ganjoor) code, for more information take a look at this code: https://github.com/ganjoor/ganjoor/blob/master/ganjoor/Audio%20Support/PoemAudioListProcessor.cs XML url Audio Title Audio Artist Audio Artist Url Audio Source Audio Src Url Legacy Audio Guid Audio File CheckSum mp3 size in bytes ogg size in bytes Upload Date Review Date (Approve or Reject) MP3 File local path on Windows Server (if item is not rejected probably it is not valid and it is deleted) XML File local path on Windows Server (if item is not rejected probably it is not valid and it is deleted) Value is one or a combination of Review Status ganjoor link for artifacts and items Id Ganjoor Post Id ganjoor url ganjoor title Artifact Id artifact Artifact Item Id Artifact Item User Id who suggested the link Suggestion Date User who suggested the link User id who reviewed the link User who reviewed the link Review Date review result Synchronized with ganjoor Link Type Custom Museum Pinterest Instagram pinterest link Id Ganjoor Post Id ganjoor url ganjoor title alt text link type pinterest url pinterest image url User Id who suggested the link (this would always be null for anonyous suggestions, kept it so that someday it would be used to integerate GanjoorLink into this class) Suggestion Date User who suggested the link User id who reviewed the link User who reviewed the link Review Date review result review description Artifact Id artifact Artifact Item Id Artifact Item Synchronized with ganjoor Review Result Awaiting (default) Approved Rejected Ganjoor Link View Model Id Ganjoor Post Id ganjoor url ganjoor title entity name entity friendly url entity image id review result Synchronized with ganjoor suggested by Link Suggestion Ganjoor Post Id ganjoor url ganjoor title Artifact Friendly Url Artifact Item Id Safe pinterest link view model cosntructor Id Ganjoor Post Id ganjoor url ganjoor title alt text link type pinterest url pinterest image url Suggestion Date User id who reviewed the link Review Date review result review description Artifact Id Artifact Item Id Synchronized with ganjoor entity name entity friendly url entity image id pinterest / ganjoor link suggestion view model Ganjoor Post Id ganjoor url ganjoor title alt text link type pinterest url pinterest image url Captcha Image Id Captcha Value Import Job Job Type Note Type private public User Note Id User Id User Master Record Id Master Record Item Record Id Item Record DateTime Is Updated by User Last Modified Private / Public content In Reply to Other Note Reference Note Id Status New User Note For Artifact Artifact / Item Id Note Type Contents Reference Note Id Safe User Note View Model Constructor Id User Id User Name (FirstName + SureName) user image id DateTime Is Updated by User Last Modified Private / Public content Reference Note Id Status Related Entity (Artifact/Item) Name It is set only in cummulative api calls Realated entity Image Id It is set only in cummulative api calls Realated entity Friendly Url (for artifact items it would be ParentFiendlyUrl/ItemFriendlyUrl ) It is set only in cummulative api calls Related Item Artifact Name It is set only in cummulative api calls child notes It os set only in certain cases Notifaction Status User Notification Id User Id User DateTime Status Subject Text Upload Session Id Session Type User User Id Upload Start Time Upload End Time Process Start Time Process End Time Process Progress Status Uploaded Files Upload Session File Id ContentDisposition ContentType FileName Length Name File Path Process Result Process Result Message Upload Session Process Status Not Started Started Finished Upload Session Types Generic Audio Artifact Item Service get all artifacts (including CoverImage info but not items or attributes info) get tagged publish artifacts (including CoverImage info but not items or tagibutes info) gets specified artifact info (including CoverImage + images + attributes) gets specified artifact info (including CoverImage + images + tagibutes) edit master record Set Artifact Cover Item Index get tag bundle by frindly url get max lastmodified artifact date for caching purposes get all tags get tag bu friendly url add tag edit tag changes order of tags based on their position in artifacts true => up, false => down the other tag which its Order has been changed changes order of tags based on their position in artifact items true => up, false => down the other tag which its Order has been changed add artifact tag value changes order of tag values based on their position in an artifact true => up, false => down the other tag value which its Order has been changed changes order of tag values based on their position in an item true => up, false => down the other tag value which its Order has been changed get tag value bundle by frindly url get tag value by frindly url edit artifact tagibute value apply on all same value tags remove artfiact tag value add item tag value edit item tag value apply on all same value tags remove item tag value gets specified artifact item info (including images + attributes) add new artifact import from external resources loc/princeton/harvard/qajarwomen/hathitrust/penn/cam/bl/folder/walters/cbl 119 golestan-baysonghori reschedule jobs due to a bug in loc json outputs some artifacts with more than 1000 pages were downloaded incompletely import jobs Bookmark Artifact get artifact user bookmarks Bookmark Item get item user bookmarks update bookmark note delete user bookmark /// get user bookmarks (artifacts and items) Add Note to Artifact Add Note to Artifact Item Edit Note sending null here means user is a moderator delete note sending null here means user is a moderator or the note is being deleted in a recursive delete of referenced notes list of notes deleted get artifact private user notes get artifact public user notes get item artifact private user notes get item artifact item public user notes Get All USer Notes Get All Public Notes suggest ganjoor link get suggested ganjoor links Review Suggested Link Temporary api Synchronize suggested link get suggested pinterest links suggest pinterest link Review Suggested Pinterest Link Synchronize suggested pinterest link Add Notification Get User Notifications Get Unread User Notifications Count Switch Notification Status updated notification object Delete Notification an incomplete prototype for removing artifacts Audio Narration Service returns list of narrations send Guid.Empty if you want all narrations imports data from ganjoor MySql database User Id which becomes owner of imported data Initiate New Upload Session for audio Save uploaded file Get Upload Session (including files) IArtifactService implementation IArtifactService implementation IArtifactService implementation IArtifactService implementation IArtifactService implementation IArtifactService implementation IArtifactService implementation IArtifactService implementation IArtifactService implementation IArtifactService implementation IArtifactService implementation IArtifactService implementation import from http://www.qajarwomen.org 43117279 atame http://www.qajarwomen.org/fa/items/1018A10.html from http://www.bl.uk grenville_xli_f001r from http://cudl.lib.cam.ac.uk MS-RAS-00258 import from https://viewer.cbl.ie 119 golestan-baysonghori from https://curiosity.lib.harvard.edu example: https://curiosity.lib.harvard.edu/islamic-heritage-project/catalog/40-990114893240203941 from https://catalog.hathitrust.org 006814127 from https://www.loc.gov m084 boostan1207 plmp from http://www.library.upenn.edu/ MEDREN_9949222153503681 import from server folder C:\Tools\batches\florence shahname-florence https://t.me/dr_khatibi_abolfazl/888 from http://www.thedigitalwalters.org/01_ACCESS_WALTERS_MANUSCRIPTS.html W619 golestan-walters-01 from http://pudl.princeton.edu/ dj52w476m get all artifacts (including CoverImage info but not items or tagibutes info) get tagged publish artifacts (including CoverImage info but not items or tagibutes info) gets specified artifact info (including CoverImage + images + tagibutes) gets specified artifact info (including CoverImage + images + tagibutes) edit master record Set Artifact Cover Item Index get tag bundle by frindly url get max lastmodified artifact date for caching purposes get all tags get tag bu friendly url get tag value by frindly url add tag edit tag changes LastModified field value for tagged artifacts and items changes order of tags based on their position in artifacts true => up, false => down the other tag which its Order has been changed changes order of tags based on their position in artifact items true => up, false => down the other tag which its Order has been changed get tag value bundle by frindly url add artifact tag value remove artfiact tag value edit artifact tag value apply on all same value tags add item tag value remove item tag value edit item tagibute value apply on all same value tags changes order of tag values based on their position in an artifact true => up, false => down the other tag value which its Order has been changed changes order of tag values based on their position in an item true => up, false => down the other tag value which its Order has been changed gets specified artifact item info (including images + tagibutes) add new artifact import from external resources loc/princeton/harvard/qajarwomen/hathitrust/penn/cam/bl/folder/walters/cbl 119 golestan-baysonghori reschedule jobs an incomplete prototype for removing artifacts due to a bug in loc json outputs some artifacts with more than 1000 pages were downloaded incompletely import jobs Bookmark Artifact get artifact user bookmarks Bookmark Item get item user bookmarks update bookmark note delete user bookmark /// get user bookmarks (artifacts and items) Add Note to Artifact Add Note to Artifact Item Edit Note delete note sending null here means user is a moderator or the note is being deleted in a recursive delete of referenced notes list of notes deleted get artifact private user notes recursvie call to build notes tree get artifact public user notes get item artifact private user notes recursvie call to build notes tree for iten get item artifact item public user notes Get All USer Notes Get All Public Notes suggest ganjoor link get suggested ganjoor links Review Suggested Link Temporary api Synchronize suggested link get suggested pinterest links suggest pinterest link Review Suggested Pinterest Link Synchronize suggested pinterest link Add Notification Switch Notification Status updated notification object Delete Notification Get User Notifications Get Unread User Notifications Count Database Contetxt Picture File Service Configuration Background Task Queue Instance User Service constructor Audio Narration Service Implementation returns list of narrations send Guid.Empty if you want all narrations imports data from ganjoor MySql database User Id which becomes owner of imported data Initiate New Upload Session for audio Save uploaded file Get Upload Session (including files) Configuration Database Contetxt constructor British Library Tile Downloader And Mixer Constructor find image encodder manipulating picture files recover from files add new picture pass empty if you want a generic date based folder returns image info Rotate Image in 90 deg. multiplicants: 90, 180 or 270 find image encodder returns image file stream فرمت تصاویر بندانگشتی و ... image/jpeg عرض تصویر با اندازه نرمال - جهت نمایش در صفحات /// طول تصویر با اندازه نرمال - جهت نمایش در صفحات عرض تصویر بندانگشتی طول تصویر بندانگشتی Image Storage Path Generated Cropped Image Based On ThumbnailCoordinates For Notes Database Contetxt Configuration Simple Image Storage (not storing multiple image sizes) for creating small cropped images constructor Role Service Implementation gets list of SecurableItem, should be reimplemented in end user applications constructor manipulating picture files add new picture pass empty if you want a generic date based folder recover from files returns image info returns image file stream Rotate Image in 90 deg. multiplicants: 90, 180 or 270 Get Encoder Generate Cropped Image Based On ThumbnailCoordinates For Notes Image Storage Path //https://mattfrear.com/2018/07/21/add-an-authorization-header-to-your-swagger-ui-with-swashbuckle-revisited/