
/**
 * 동기화 설정 관리
 */

// 동기화 활성화 여부 확인
export const isSyncEnabled = (): boolean => {
  try {
    const value = localStorage.getItem('syncEnabled');
    return value === 'true';
  } catch (error) {
    console.error('동기화 설정 조회 오류:', error);
    return false;
  }
};

// 동기화 설정 변경
export const setSyncEnabled = (enabled: boolean): void => {
  try {
    localStorage.setItem('syncEnabled', enabled ? 'true' : 'false');
    
    // 상태 변경 이벤트 발생
    window.dispatchEvent(new Event('syncSettingChanged'));
    window.dispatchEvent(new StorageEvent('storage', {
      key: 'syncEnabled',
      newValue: enabled ? 'true' : 'false'
    }));
    
    console.log('동기화 설정이 변경되었습니다:', enabled ? '활성화' : '비활성화');
  } catch (error) {
    console.error('동기화 설정 변경 오류:', error);
  }
};

// 동기화 설정 초기화
export const initSyncSettings = (): void => {
  // 이미 설정이 있으면 초기화하지 않음
  if (localStorage.getItem('syncEnabled') === null) {
    setSyncEnabled(false); // 기본값: 비활성화
  }
  
  console.log('동기화 설정 초기화 완료, 현재 상태:', isSyncEnabled() ? '활성화' : '비활성화');
};
