better post info check & error fallback data saver
user edit & lots of generalize code