|
|
|
|
@ -61,13 +61,17 @@ class NotionOAuth(OAuthDataSource):
|
|
|
|
|
"total": len(pages),
|
|
|
|
|
}
|
|
|
|
|
# save data source binding
|
|
|
|
|
data_source_binding = DataSourceOauthBinding.query.filter(
|
|
|
|
|
db.and_(
|
|
|
|
|
DataSourceOauthBinding.tenant_id == current_user.current_tenant_id,
|
|
|
|
|
DataSourceOauthBinding.provider == "notion",
|
|
|
|
|
DataSourceOauthBinding.access_token == access_token,
|
|
|
|
|
data_source_binding = (
|
|
|
|
|
db.session.query(DataSourceOauthBinding)
|
|
|
|
|
.filter(
|
|
|
|
|
db.and_(
|
|
|
|
|
DataSourceOauthBinding.tenant_id == current_user.current_tenant_id,
|
|
|
|
|
DataSourceOauthBinding.provider == "notion",
|
|
|
|
|
DataSourceOauthBinding.access_token == access_token,
|
|
|
|
|
)
|
|
|
|
|
)
|
|
|
|
|
).first()
|
|
|
|
|
.first()
|
|
|
|
|
)
|
|
|
|
|
if data_source_binding:
|
|
|
|
|
data_source_binding.source_info = source_info
|
|
|
|
|
data_source_binding.disabled = False
|
|
|
|
|
@ -97,13 +101,17 @@ class NotionOAuth(OAuthDataSource):
|
|
|
|
|
"total": len(pages),
|
|
|
|
|
}
|
|
|
|
|
# save data source binding
|
|
|
|
|
data_source_binding = DataSourceOauthBinding.query.filter(
|
|
|
|
|
db.and_(
|
|
|
|
|
DataSourceOauthBinding.tenant_id == current_user.current_tenant_id,
|
|
|
|
|
DataSourceOauthBinding.provider == "notion",
|
|
|
|
|
DataSourceOauthBinding.access_token == access_token,
|
|
|
|
|
data_source_binding = (
|
|
|
|
|
db.session.query(DataSourceOauthBinding)
|
|
|
|
|
.filter(
|
|
|
|
|
db.and_(
|
|
|
|
|
DataSourceOauthBinding.tenant_id == current_user.current_tenant_id,
|
|
|
|
|
DataSourceOauthBinding.provider == "notion",
|
|
|
|
|
DataSourceOauthBinding.access_token == access_token,
|
|
|
|
|
)
|
|
|
|
|
)
|
|
|
|
|
).first()
|
|
|
|
|
.first()
|
|
|
|
|
)
|
|
|
|
|
if data_source_binding:
|
|
|
|
|
data_source_binding.source_info = source_info
|
|
|
|
|
data_source_binding.disabled = False
|
|
|
|
|
@ -121,14 +129,18 @@ class NotionOAuth(OAuthDataSource):
|
|
|
|
|
|
|
|
|
|
def sync_data_source(self, binding_id: str):
|
|
|
|
|
# save data source binding
|
|
|
|
|
data_source_binding = DataSourceOauthBinding.query.filter(
|
|
|
|
|
db.and_(
|
|
|
|
|
DataSourceOauthBinding.tenant_id == current_user.current_tenant_id,
|
|
|
|
|
DataSourceOauthBinding.provider == "notion",
|
|
|
|
|
DataSourceOauthBinding.id == binding_id,
|
|
|
|
|
DataSourceOauthBinding.disabled == False,
|
|
|
|
|
data_source_binding = (
|
|
|
|
|
db.session.query(DataSourceOauthBinding)
|
|
|
|
|
.filter(
|
|
|
|
|
db.and_(
|
|
|
|
|
DataSourceOauthBinding.tenant_id == current_user.current_tenant_id,
|
|
|
|
|
DataSourceOauthBinding.provider == "notion",
|
|
|
|
|
DataSourceOauthBinding.id == binding_id,
|
|
|
|
|
DataSourceOauthBinding.disabled == False,
|
|
|
|
|
)
|
|
|
|
|
)
|
|
|
|
|
).first()
|
|
|
|
|
.first()
|
|
|
|
|
)
|
|
|
|
|
if data_source_binding:
|
|
|
|
|
# get all authorized pages
|
|
|
|
|
pages = self.get_authorized_pages(data_source_binding.access_token)
|
|
|
|
|
|