package services import ( "bssapp-backend/models" "strings" "golang.org/x/crypto/bcrypt" ) // CheckPasswordWithLegacy // - SADECE doğrulama yapar // - DB write YAPMAZ // - Migration kararını caller verir func CheckPasswordWithLegacy(user *models.User, plain string) bool { if user == nil { return false } plain = strings.TrimSpace(plain) if plain == "" { return false } stored := strings.TrimSpace(user.Upass) if stored == "" { return false } // 1️⃣ bcrypt hash mi? if isBcryptHash(stored) { return bcrypt.CompareHashAndPassword([]byte(stored), []byte(plain)) == nil } // 2️⃣ TAM LEGACY — düz metin (eski kayıtlar) return stored == plain } func isBcryptHash(s string) bool { return strings.HasPrefix(s, "$2a$") || strings.HasPrefix(s, "$2b$") || strings.HasPrefix(s, "$2y$") }