package pkg

import (
	"errors"
	"net/http"
	"regexp"

	"github.rackspace.com/gorax/tools/util"
)

func f5RespHandler(resp string) (error, int) {
	var re string
	// bypass emergency logger console messages
	re = util.RegexpString(regexp.MustCompile(`(?i)(emerg\s+logger:)`), resp)
	if re != "" {
		return nil, http.StatusOK
	}
	re = util.RegexpString(regexp.MustCompile(`(?i)(iControl\s+authorization\s+failed)`), resp)
	if re != "" {
		return errors.New(re), http.StatusUnauthorized
	}
	re = util.RegexpString(regexp.MustCompile(`(?i)Unexpected\s+Error:\s+(.*\S+)`), resp)
	if re != "" {
		return errors.New(re), http.StatusInternalServerError
	}
	return nil, http.StatusOK
}
