@@ -2,7 +2,7 @@ import {Notice, parseYaml, Plugin, stringifyYaml, TFile, TFolder} from 'obsidian
2
2
import { getDefaultSettings , MediaDbPluginSettings , MediaDbSettingTab } from './settings/Settings' ;
3
3
import { APIManager } from './api/APIManager' ;
4
4
import { MediaTypeModel } from './models/MediaTypeModel' ;
5
- import { dateTimeToString , debugLog , markdownTable , replaceIllegalFileNameCharactersInString , UserCancelError , UserSkipError } from './utils/Utils' ;
5
+ import { dateTimeToString , markdownTable , replaceIllegalFileNameCharactersInString , UserCancelError , UserSkipError } from './utils/Utils' ;
6
6
import { OMDbAPI } from './api/apis/OMDbAPI' ;
7
7
import { MediaDbAdvancedSearchModal } from './modals/MediaDbAdvancedSearchModal' ;
8
8
import { MediaDbSearchResultModal } from './modals/MediaDbSearchResultModal' ;
@@ -44,12 +44,8 @@ export default class MediaDbPlugin extends Plugin {
44
44
// register the settings tab
45
45
this . addSettingTab ( new MediaDbSettingTab ( this . app , this ) ) ;
46
46
47
- // TESTING
48
- // this.settings.propertyMappingModels = getDefaultSettings(this).propertyMappingModels;
49
-
50
47
this . mediaTypeManager . updateTemplates ( this . settings ) ;
51
48
52
-
53
49
// add icon to the left ribbon
54
50
const ribbonIconEl = this . addRibbonIcon ( 'database' , 'Add new Media DB entry' , ( evt : MouseEvent ) =>
55
51
this . createEntryWithAdvancedSearchModal ( ) ,
@@ -136,7 +132,6 @@ export default class MediaDbPlugin extends Plugin {
136
132
137
133
selectModal . close ( ) ;
138
134
139
- debugLog ( results ) ;
140
135
if ( results ) {
141
136
await this . createMediaDbNotes ( results ) ;
142
137
}
@@ -162,7 +157,6 @@ export default class MediaDbPlugin extends Plugin {
162
157
163
158
idSearchModal . close ( ) ;
164
159
165
- debugLog ( result ) ;
166
160
if ( result ) {
167
161
await this . createMediaDbNoteFromModel ( result ) ;
168
162
}
@@ -189,7 +183,7 @@ export default class MediaDbPlugin extends Plugin {
189
183
190
184
async createMediaDbNoteFromModel ( mediaTypeModel : MediaTypeModel , attachFile ?: TFile ) : Promise < void > {
191
185
try {
192
- console . log ( 'MDB | Creating new note... ' ) ;
186
+ console . debug ( 'MDB | creating new note' ) ;
193
187
194
188
let fileContent = await this . generateMediaDbNoteContents ( mediaTypeModel , attachFile ) ;
195
189
@@ -216,13 +210,7 @@ export default class MediaDbPlugin extends Plugin {
216
210
return { fileMetadata : fileMetadata , fileContent : fileContent } ;
217
211
}
218
212
219
- let attachFileMetadata : any = this . app . metadataCache . getFileCache ( fileToAttach ) . frontmatter ;
220
- if ( attachFileMetadata ) {
221
- attachFileMetadata = JSON . parse ( JSON . stringify ( attachFileMetadata ) ) ; // deep copy
222
- delete attachFileMetadata . position ;
223
- } else {
224
- attachFileMetadata = { } ;
225
- }
213
+ let attachFileMetadata : any = this . getMetadataFromFileCache ( fileToAttach ) ;
226
214
fileMetadata = Object . assign ( attachFileMetadata , fileMetadata ) ;
227
215
228
216
let attachFileContent : string = await this . app . vault . read ( fileToAttach ) ;
@@ -241,7 +229,7 @@ export default class MediaDbPlugin extends Plugin {
241
229
let templateMetadata : any = this . getMetaDataFromFileContent ( template ) ;
242
230
fileMetadata = Object . assign ( templateMetadata , fileMetadata ) ;
243
231
244
- const regExp = new RegExp ( '^(---)\\n[\\s\\S]*\\n---' ) ;
232
+ const regExp = new RegExp ( this . frontMatterRexExpPattern ) ;
245
233
const attachFileContent = template . replace ( regExp , '' ) ;
246
234
fileContent += attachFileContent ;
247
235
@@ -251,7 +239,7 @@ export default class MediaDbPlugin extends Plugin {
251
239
getMetaDataFromFileContent ( fileContent : string ) : any {
252
240
let metadata : any ;
253
241
254
- const regExp = new RegExp ( '^(---)\\n[\\s\\S]*\\n---' ) ;
242
+ const regExp = new RegExp ( this . frontMatterRexExpPattern ) ;
255
243
const frontMatterRegExpResult = regExp . exec ( fileContent ) ;
256
244
if ( ! frontMatterRegExpResult ) {
257
245
return { } ;
@@ -269,6 +257,19 @@ export default class MediaDbPlugin extends Plugin {
269
257
metadata = { } ;
270
258
}
271
259
260
+ console . debug ( `MDB | metadata read from file content` , metadata ) ;
261
+
262
+ return metadata ;
263
+ }
264
+
265
+ getMetadataFromFileCache ( file : TFile ) {
266
+ let metadata : any = this . app . metadataCache . getFileCache ( file ) . frontmatter ;
267
+ if ( metadata ) {
268
+ metadata = Object . assign ( { } , metadata ) ; // copy
269
+ delete metadata . position ;
270
+ } else {
271
+ metadata = { } ;
272
+ }
272
273
return metadata ;
273
274
}
274
275
@@ -297,12 +298,13 @@ export default class MediaDbPlugin extends Plugin {
297
298
298
299
// create the file
299
300
const targetFile = await this . app . vault . create ( filePath , fileContent ) ;
301
+ console . debug ( `MDB | created new file at ${ filePath } ` ) ;
300
302
301
303
// open newly crated file
302
304
if ( openFile ) {
303
305
const activeLeaf = this . app . workspace . getUnpinnedLeaf ( ) ;
304
306
if ( ! activeLeaf ) {
305
- console . warn ( 'MDB | no active leaf, not opening media db note' ) ;
307
+ console . warn ( 'MDB | no active leaf, not opening newly created note' ) ;
306
308
return ;
307
309
}
308
310
await activeLeaf . openFile ( targetFile , { state : { mode : 'source' } } ) ;
@@ -319,12 +321,10 @@ export default class MediaDbPlugin extends Plugin {
319
321
throw new Error ( 'MDB | there is no active note' ) ;
320
322
}
321
323
322
- let metadata : any = this . app . metadataCache . getFileCache ( activeFile ) . frontmatter ;
323
- metadata = JSON . parse ( JSON . stringify ( metadata ) ) ; // deep copy
324
- delete metadata . position ; // remove unnecessary data from the FrontMatterCache
324
+ let metadata : any = this . getMetadataFromFileCache ( activeFile ) ;
325
325
metadata = this . modelPropertyMapper . convertObjectBack ( metadata ) ;
326
326
327
- debugLog ( metadata ) ;
327
+ console . debug ( `MDB | read metadata` , metadata ) ;
328
328
329
329
if ( ! metadata ?. type || ! metadata ?. dataSource || ! metadata ?. id ) {
330
330
throw new Error ( 'MDB | active note is not a Media DB entry or is missing metadata' ) ;
@@ -339,7 +339,8 @@ export default class MediaDbPlugin extends Plugin {
339
339
340
340
newMediaTypeModel = Object . assign ( oldMediaTypeModel , newMediaTypeModel . getWithOutUserData ( ) ) ;
341
341
342
- console . log ( 'MDB | deleting old entry' ) ;
342
+ // deletion not happening anymore why is this log statement still here
343
+ console . debug ( 'MDB | deleting old entry' ) ;
343
344
await this . createMediaDbNoteFromModel ( newMediaTypeModel , activeFile ) ;
344
345
}
345
346
@@ -361,7 +362,7 @@ export default class MediaDbPlugin extends Plugin {
361
362
continue ;
362
363
}
363
364
364
- let metadata : any = this . app . metadataCache . getFileCache ( file ) . frontmatter ;
365
+ let metadata : any = this . getMetadataFromFileCache ( file ) ;
365
366
366
367
let title = metadata [ titleFieldName ] ;
367
368
if ( ! title ) {
@@ -525,7 +526,6 @@ export default class MediaDbPlugin extends Plugin {
525
526
526
527
async saveSettings ( ) {
527
528
this . mediaTypeManager . updateTemplates ( this . settings ) ;
528
- //this.modelPropertyMapper.updateConversionRules(this.settings);
529
529
530
530
await this . saveData ( this . settings ) ;
531
531
}
0 commit comments