 
   get_db_server_promise: () =>
     console.log('return real promise @db_server_promise')
-    return @db_server_promise
+    if @db_server_promise?
+      return @db_server_promise
+    else
+      return @init_db()
 
   close_db: () =>
     @db_server_promise.then (server) =>


  # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| DB Operations >

  get_all_notes: () =>
    console.log('get_all_notes() invoked')
    return new Promise (resolve, reject) =>
      resolve(@db_server.notes.query().all().execute())

  # ------------------------------------------------------------
  # make a new note to db
  #
  # db_server safe. will get db_server itself
  # return promise
  # ------------------------------------------------------------
  make_new_note: () =>

  #                  | load note data from remote
  #                  |
  # synced_meta ------

  NOTE_STATUS:
    NEW: 0
