Exemplo n.º 1
0
def adminSettings():
	logger = logging.getLogger(__name__)

	result = engineservice.getSettings()

	result["success"] = True
	result["message"] = ""

	if "btnSave" in request.all:
		try:
			if request.all["timezone"] not in pytz.common_timezones:
				raise ValueError("Please provide a valid timezone")

			if request.all["theme"] not in engineservice.getInstalledThemeNames():
				raise ValueError("Please provide a valid theme name")

			engineservice.saveSettings(
				timezone = request.all["timezone"],
				theme    = request.all["theme"]
			)

			awsservice.saveSettings(
				accessKeyId=request.all["awsAccessKeyId"],
				secretAccessKey=request.all["awsSecretAccessKey"],
				s3Bucket="" if "awsBucket" not in request.all else request.all["awsBucket"]
			)

			result["timezone"] = request.all["timezone"]
			result["themeName"] = request.all["theme"]
			result["awsAccessKeyId"] = request.all["awsAccessKeyId"]
			result["awsSecretAccessKey"] = request.all["awsSecretAccessKey"]
			result["awsBucket"] = "" if "awsBucket" not in request.all else request.all["awsBucket"]

			result["message"] = "Settings updated"

		except Exception as e:
			result["success"] = False
			result["message"] = e.message

	awsSettings = awsservice.getSettings()

	result["title"] = "Settings"
	result["timezones"] = dthelper.getTimezoneArray()
	result["themes"] = engineservice.getInstalledThemeNames()

	result["awsAccessKeyId"] = awsSettings["accessKeyId"]
	result["awsSecretAccessKey"] = awsSettings["secretAccessKey"]
	result["awsBucket"] = awsSettings["s3Bucket"]
	result["awsBuckets"] = []

	if len(result["awsAccessKeyId"]) and len(result["awsSecretAccessKey"]):
		awsConnection = s3service.connect(accessKeyId=result["awsAccessKeyId"], secretAccessKey=result["awsSecretAccessKey"])
		result["awsBuckets"] = s3service.getBucketList(connection=awsConnection)

	return result
Exemplo n.º 2
0
def install():
	if "btnSubmit" in request.all:
		installservice.setupConfigFile(
			dbServer      = request.all["databaseServer"],
			dbName        = request.all["databaseName"],
			dbUser        = request.all["databaseUserName"],
			dbPass        = request.all["databasePassword"],
			blogTitle     = request.all["blogTitle"],
			postsPerPage  = request.all["postsPerPage"],
			hashKey1      = request.all["hashKey1"],
			hashKey2      = request.all["hashKey2"],
			encryptionKey = request.all["encryptionKey"],
			encryptionIV  = request.all["encryptionIV"]
		)

		installservice.setupDatabase(
			dbServer  = request.all["databaseServer"],
			dbPort    = 3306,
			dbName    = request.all["databaseName"],
			dbUser    = request.all["databaseUserName"],
			dbPass    = request.all["databasePassword"],
			email     = request.all["adminEmail"],
			password  = request.all["adminPassword"],
			firstName = request.all["adminFirstName"],
			lastName  = request.all["adminLastName"],
			timezone  = request.all["timezone"],
			hashKey1  = request.all["hashKey1"],
			hashKey2  = request.all["hashKey2"],
		)

		database.disconnect()
		imp.reload(config)

		database.connect(
			engine   = "mysql",
			host     = config.ENVIRONMENT["DB_HOST"],
			port     = config.ENVIRONMENT["DB_PORT"],
			database = config.ENVIRONMENT["DB_NAME"],
			user     = config.ENVIRONMENT["DB_USER"],
			password = config.ENVIRONMENT["DB_PASSWORD"]
		)

		redirect("/installcomplete")

	return {
		"timezones": dthelper.getTimezoneArray()
	}