Changeset 3069513
- Timestamp:
- 04/12/2024 10:33:46 AM (2 years ago)
- Location:
- appful-app
- Files:
-
- 7 deleted
- 15 edited
- 322 copied
-
tags/3.1.25 (copied) (copied from appful-app/trunk)
-
tags/3.1.25/appful-app.php (copied) (copied from appful-app/trunk/appful-app.php) (1 diff)
-
tags/3.1.25/appful.log (copied) (copied from appful-app/trunk/appful.log)
-
tags/3.1.25/frontend/scripts/user.js (copied) (copied from appful-app/trunk/frontend/scripts/user.js)
-
tags/3.1.25/frontend/styles/style.css (copied) (copied from appful-app/trunk/frontend/styles/style.css)
-
tags/3.1.25/frontend/templates/appful_menu_page.html.twig (copied) (copied from appful-app/trunk/frontend/templates/appful_menu_page.html.twig)
-
tags/3.1.25/frontend/templates/appful_post_meta_form.html.twig (copied) (copied from appful-app/trunk/frontend/templates/appful_post_meta_form.html.twig)
-
tags/3.1.25/includes/api/Api.php (copied) (copied from appful-app/trunk/includes/api/Api.php) (1 diff)
-
tags/3.1.25/includes/api/Endpoints.php (copied) (copied from appful-app/trunk/includes/api/Endpoints.php)
-
tags/3.1.25/includes/api/ReqHandler.php (copied) (copied from appful-app/trunk/includes/api/ReqHandler.php) (1 diff)
-
tags/3.1.25/includes/api/Rewrites.php (copied) (copied from appful-app/trunk/includes/api/Rewrites.php)
-
tags/3.1.25/includes/api/client/BackendClient.php (copied) (copied from appful-app/trunk/includes/api/client/BackendClient.php)
-
tags/3.1.25/includes/api/client/SelfClient.php (copied) (copied from appful-app/trunk/includes/api/client/SelfClient.php)
-
tags/3.1.25/includes/api/dtos/BlogHooksDto.php (copied) (copied from appful-app/trunk/includes/api/dtos/BlogHooksDto.php)
-
tags/3.1.25/includes/api/dtos/BlogInfoDto.php (copied) (copied from appful-app/trunk/includes/api/dtos/BlogInfoDto.php)
-
tags/3.1.25/includes/api/dtos/BlogSettingsDto.php (copied) (copied from appful-app/trunk/includes/api/dtos/BlogSettingsDto.php)
-
tags/3.1.25/includes/api/dtos/BlogStatsDto.php (copied) (copied from appful-app/trunk/includes/api/dtos/BlogStatsDto.php)
-
tags/3.1.25/includes/api/dtos/CommentDto.php (copied) (copied from appful-app/trunk/includes/api/dtos/CommentDto.php)
-
tags/3.1.25/includes/api/dtos/PageContentDto.php (copied) (copied from appful-app/trunk/includes/api/dtos/PageContentDto.php)
-
tags/3.1.25/includes/api/dtos/PageDto.php (copied) (copied from appful-app/trunk/includes/api/dtos/PageDto.php)
-
tags/3.1.25/includes/api/dtos/PostDto.php (copied) (copied from appful-app/trunk/includes/api/dtos/PostDto.php)
-
tags/3.1.25/includes/api/dtos/RoleDto.php (copied) (copied from appful-app/trunk/includes/api/dtos/RoleDto.php)
-
tags/3.1.25/includes/api/dtos/SyncItemDto.php (copied) (copied from appful-app/trunk/includes/api/dtos/SyncItemDto.php)
-
tags/3.1.25/includes/api/dtos/UserDto.php (copied) (copied from appful-app/trunk/includes/api/dtos/UserDto.php)
-
tags/3.1.25/includes/api/dtos/UserRoleDto.php (copied) (copied from appful-app/trunk/includes/api/dtos/UserRoleDto.php)
-
tags/3.1.25/includes/api/dtos/app (copied) (copied from appful-app/trunk/includes/api/dtos/app)
-
tags/3.1.25/includes/api/dtos/point_of_interest (copied) (copied from appful-app/trunk/includes/api/dtos/point_of_interest)
-
tags/3.1.25/includes/api/handlers/AndroidAssetLinkRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/AndroidAssetLinkRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/AppleAppSiteAssociationRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/AppleAppSiteAssociationRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/AttachmentSyncRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/AttachmentSyncRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/AuthenticateUserRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/AuthenticateUserRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/CategorySyncRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/CategorySyncRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/ClearLogRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/ClearLogRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/CommentSyncRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/CommentSyncRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/CreateCommentRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/CreateCommentRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/GetAttachmentsRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/GetAttachmentsRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/GetCategoriesRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/GetCategoriesRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/GetCommentsRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/GetCommentsRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/GetPageContentsRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/GetPageContentsRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/GetPagesRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/GetPagesRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/GetPostContentsRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/GetPostContentsRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/GetPostsRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/GetPostsRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/GetRolesRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/GetRolesRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/GetTagsRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/GetTagsRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/GetUsersRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/GetUsersRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/InfoRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/InfoRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/LogRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/LogRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/PageSyncRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/PageSyncRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/PostSyncRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/PostSyncRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/PullLocalPageContentRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/PullLocalPageContentRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/PullLocalPostContentRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/PullLocalPostContentRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/RoleSyncRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/RoleSyncRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/SavePostSyncBatchSizeHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/SavePostSyncBatchSizeHandler.php)
-
tags/3.1.25/includes/api/handlers/SyncRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/SyncRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/TagSyncRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/TagSyncRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/UserSyncRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/UserSyncRequestHandler.php)
-
tags/3.1.25/includes/api/handlers/page (copied) (copied from appful-app/trunk/includes/api/handlers/page)
-
tags/3.1.25/includes/api/handlers/page/GetPageContentRequestHandler.php (copied) (copied from appful-app/trunk/includes/api/handlers/page/GetPageContentRequestHandler.php) (1 diff)
-
tags/3.1.25/includes/api/handlers/point_of_interest (copied) (copied from appful-app/trunk/includes/api/handlers/point_of_interest)
-
tags/3.1.25/includes/api/mapper/AppAdBannerMapper.php (copied) (copied from appful-app/trunk/includes/api/mapper/AppAdBannerMapper.php)
-
tags/3.1.25/includes/api/mapper/BlogHooksMapper.php (copied) (copied from appful-app/trunk/includes/api/mapper/BlogHooksMapper.php)
-
tags/3.1.25/includes/api/mapper/BlogInfoMapper.php (copied) (copied from appful-app/trunk/includes/api/mapper/BlogInfoMapper.php)
-
tags/3.1.25/includes/api/mapper/BlogSettingsMapper.php (copied) (copied from appful-app/trunk/includes/api/mapper/BlogSettingsMapper.php)
-
tags/3.1.25/includes/api/mapper/BlogStatsMapper.php (copied) (copied from appful-app/trunk/includes/api/mapper/BlogStatsMapper.php)
-
tags/3.1.25/includes/api/mapper/PageContentMapper.php (copied) (copied from appful-app/trunk/includes/api/mapper/PageContentMapper.php)
-
tags/3.1.25/includes/api/mapper/PageMapper.php (copied) (copied from appful-app/trunk/includes/api/mapper/PageMapper.php)
-
tags/3.1.25/includes/api/mapper/PointOfInterestMapper.php (copied) (copied from appful-app/trunk/includes/api/mapper/PointOfInterestMapper.php)
-
tags/3.1.25/includes/api/mapper/PostMapper.php (copied) (copied from appful-app/trunk/includes/api/mapper/PostMapper.php)
-
tags/3.1.25/includes/api/mapper/RoleMapper.php (copied) (copied from appful-app/trunk/includes/api/mapper/RoleMapper.php)
-
tags/3.1.25/includes/api/mapper/SyncItemMapper.php (copied) (copied from appful-app/trunk/includes/api/mapper/SyncItemMapper.php)
-
tags/3.1.25/includes/api/mapper/UserMapper.php (copied) (copied from appful-app/trunk/includes/api/mapper/UserMapper.php)
-
tags/3.1.25/includes/api/mapper/UserRoleMapper.php (copied) (copied from appful-app/trunk/includes/api/mapper/UserRoleMapper.php)
-
tags/3.1.25/includes/api/reponses/BackendResponse.php (deleted)
-
tags/3.1.25/includes/api/reponses/HttpResponse.php (copied) (copied from appful-app/trunk/includes/api/reponses/HttpResponse.php)
-
tags/3.1.25/includes/api/requests/BackendRequest.php (deleted)
-
tags/3.1.25/includes/api/requests/HttpRequest.php (copied) (copied from appful-app/trunk/includes/api/requests/HttpRequest.php)
-
tags/3.1.25/includes/custom_taxonomies/AppfulTaxonomies.php (copied) (copied from appful-app/trunk/includes/custom_taxonomies/AppfulTaxonomies.php)
-
tags/3.1.25/includes/domain/AuthenticateRequest.php (copied) (copied from appful-app/trunk/includes/domain/AuthenticateRequest.php)
-
tags/3.1.25/includes/domain/BlogHooks.php (copied) (copied from appful-app/trunk/includes/domain/BlogHooks.php)
-
tags/3.1.25/includes/domain/BlogInfo.php (copied) (copied from appful-app/trunk/includes/domain/BlogInfo.php)
-
tags/3.1.25/includes/domain/BlogSettings.php (copied) (copied from appful-app/trunk/includes/domain/BlogSettings.php)
-
tags/3.1.25/includes/domain/BlogStats.php (copied) (copied from appful-app/trunk/includes/domain/BlogStats.php)
-
tags/3.1.25/includes/domain/CreateCommentRequest.php (copied) (copied from appful-app/trunk/includes/domain/CreateCommentRequest.php)
-
tags/3.1.25/includes/domain/Page.php (copied) (copied from appful-app/trunk/includes/domain/Page.php)
-
tags/3.1.25/includes/domain/PageContent.php (copied) (copied from appful-app/trunk/includes/domain/PageContent.php)
-
tags/3.1.25/includes/domain/Post.php (copied) (copied from appful-app/trunk/includes/domain/Post.php)
-
tags/3.1.25/includes/domain/PostContent.php (copied) (copied from appful-app/trunk/includes/domain/PostContent.php)
-
tags/3.1.25/includes/domain/Role.php (copied) (copied from appful-app/trunk/includes/domain/Role.php)
-
tags/3.1.25/includes/domain/SyncItem.php (copied) (copied from appful-app/trunk/includes/domain/SyncItem.php)
-
tags/3.1.25/includes/domain/User.php (copied) (copied from appful-app/trunk/includes/domain/User.php)
-
tags/3.1.25/includes/domain/UserRole.php (copied) (copied from appful-app/trunk/includes/domain/UserRole.php)
-
tags/3.1.25/includes/domain/app (copied) (copied from appful-app/trunk/includes/domain/app)
-
tags/3.1.25/includes/domain/point_of_interest (copied) (copied from appful-app/trunk/includes/domain/point_of_interest)
-
tags/3.1.25/includes/helper/ClientTokenManager.php (copied) (copied from appful-app/trunk/includes/helper/ClientTokenManager.php)
-
tags/3.1.25/includes/helper/Constants.php (copied) (copied from appful-app/trunk/includes/helper/Constants.php)
-
tags/3.1.25/includes/helper/Logger.php (copied) (copied from appful-app/trunk/includes/helper/Logger.php)
-
tags/3.1.25/includes/helper/LoggerLevel.php (copied) (copied from appful-app/trunk/includes/helper/LoggerLevel.php)
-
tags/3.1.25/includes/hooks/ActivationHook.php (copied) (copied from appful-app/trunk/includes/hooks/ActivationHook.php)
-
tags/3.1.25/includes/hooks/AppSettingsHook.php (copied) (copied from appful-app/trunk/includes/hooks/AppSettingsHook.php)
-
tags/3.1.25/includes/hooks/AttachmentHook.php (copied) (copied from appful-app/trunk/includes/hooks/AttachmentHook.php)
-
tags/3.1.25/includes/hooks/CommentHook.php (copied) (copied from appful-app/trunk/includes/hooks/CommentHook.php)
-
tags/3.1.25/includes/hooks/Hooks.php (copied) (copied from appful-app/trunk/includes/hooks/Hooks.php)
-
tags/3.1.25/includes/hooks/PageHook.php (copied) (copied from appful-app/trunk/includes/hooks/PageHook.php)
-
tags/3.1.25/includes/hooks/PostHook.php (copied) (copied from appful-app/trunk/includes/hooks/PostHook.php)
-
tags/3.1.25/includes/hooks/SessionHook.php (copied) (copied from appful-app/trunk/includes/hooks/SessionHook.php)
-
tags/3.1.25/includes/hooks/TaxonomyHook.php (copied) (copied from appful-app/trunk/includes/hooks/TaxonomyHook.php)
-
tags/3.1.25/includes/hooks/UserHook.php (copied) (copied from appful-app/trunk/includes/hooks/UserHook.php)
-
tags/3.1.25/includes/main/AppfulPlugin.php (copied) (copied from appful-app/trunk/includes/main/AppfulPlugin.php)
-
tags/3.1.25/includes/menu/Menu.php (copied) (copied from appful-app/trunk/includes/menu/Menu.php)
-
tags/3.1.25/includes/notice/Notice.php (copied) (copied from appful-app/trunk/includes/notice/Notice.php)
-
tags/3.1.25/includes/post_form (copied) (copied from appful-app/trunk/includes/post_form)
-
tags/3.1.25/includes/term_form/TermForm.php (copied) (copied from appful-app/trunk/includes/term_form/TermForm.php)
-
tags/3.1.25/includes/use_cases/AttachmentDeleteUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/AttachmentDeleteUseCase.php)
-
tags/3.1.25/includes/use_cases/AttachmentSaveUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/AttachmentSaveUseCase.php)
-
tags/3.1.25/includes/use_cases/AuthenticateUserUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/AuthenticateUserUseCase.php)
-
tags/3.1.25/includes/use_cases/CategoryDeleteUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/CategoryDeleteUseCase.php)
-
tags/3.1.25/includes/use_cases/CategorySaveUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/CategorySaveUseCase.php)
-
tags/3.1.25/includes/use_cases/ClearLogsUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/ClearLogsUseCase.php)
-
tags/3.1.25/includes/use_cases/CommentDeleteUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/CommentDeleteUseCase.php)
-
tags/3.1.25/includes/use_cases/CommentSaveUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/CommentSaveUseCase.php)
-
tags/3.1.25/includes/use_cases/CreateCommentUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/CreateCommentUseCase.php)
-
tags/3.1.25/includes/use_cases/DeleteSessionUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/DeleteSessionUseCase.php)
-
tags/3.1.25/includes/use_cases/GetAttachmentSyncDataUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/GetAttachmentSyncDataUseCase.php)
-
tags/3.1.25/includes/use_cases/GetBlogInfoUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/GetBlogInfoUseCase.php)
-
tags/3.1.25/includes/use_cases/GetCategorySyncDataUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/GetCategorySyncDataUseCase.php)
-
tags/3.1.25/includes/use_cases/GetCommentSyncDataUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/GetCommentSyncDataUseCase.php)
-
tags/3.1.25/includes/use_cases/GetLocalPostContentByIdUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/GetLocalPostContentByIdUseCase.php)
-
tags/3.1.25/includes/use_cases/GetPageSyncDataUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/GetPageSyncDataUseCase.php)
-
tags/3.1.25/includes/use_cases/GetPagesByIdUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/GetPagesByIdUseCase.php)
-
tags/3.1.25/includes/use_cases/GetPostContentsByIdUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/GetPostContentsByIdUseCase.php)
-
tags/3.1.25/includes/use_cases/GetPostSyncDataUseCase.php (deleted)
-
tags/3.1.25/includes/use_cases/GetRoleSyncDataUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/GetRoleSyncDataUseCase.php)
-
tags/3.1.25/includes/use_cases/GetRolesByIdUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/GetRolesByIdUseCase.php)
-
tags/3.1.25/includes/use_cases/GetTagSyncDataUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/GetTagSyncDataUseCase.php)
-
tags/3.1.25/includes/use_cases/GetUserSyncDataUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/GetUserSyncDataUseCase.php)
-
tags/3.1.25/includes/use_cases/IsLoggedInUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/IsLoggedInUseCase.php)
-
tags/3.1.25/includes/use_cases/LogoutUserUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/LogoutUserUseCase.php)
-
tags/3.1.25/includes/use_cases/PageDeleteUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/PageDeleteUseCase.php)
-
tags/3.1.25/includes/use_cases/PageSaveUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/PageSaveUseCase.php)
-
tags/3.1.25/includes/use_cases/PostDeleteUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/PostDeleteUseCase.php)
-
tags/3.1.25/includes/use_cases/PostSaveUseCase.php (deleted)
-
tags/3.1.25/includes/use_cases/PullLocalPostContentUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/PullLocalPostContentUseCase.php) (1 diff)
-
tags/3.1.25/includes/use_cases/RegisterBlogUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/RegisterBlogUseCase.php)
-
tags/3.1.25/includes/use_cases/SendAttachmentChunkSyncUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/SendAttachmentChunkSyncUseCase.php)
-
tags/3.1.25/includes/use_cases/SendCategoryChunkSyncUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/SendCategoryChunkSyncUseCase.php)
-
tags/3.1.25/includes/use_cases/SendCommentChunkSyncUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/SendCommentChunkSyncUseCase.php)
-
tags/3.1.25/includes/use_cases/SendPageChunkSyncUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/SendPageChunkSyncUseCase.php)
-
tags/3.1.25/includes/use_cases/SendPostChunkSyncUseCase.php (deleted)
-
tags/3.1.25/includes/use_cases/SendRoleChunkSyncUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/SendRoleChunkSyncUseCase.php)
-
tags/3.1.25/includes/use_cases/SendTagChunkSyncUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/SendTagChunkSyncUseCase.php)
-
tags/3.1.25/includes/use_cases/SendUserChunkSyncUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/SendUserChunkSyncUseCase.php)
-
tags/3.1.25/includes/use_cases/SyncAllUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/SyncAllUseCase.php)
-
tags/3.1.25/includes/use_cases/SyncAttachmentsUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/SyncAttachmentsUseCase.php)
-
tags/3.1.25/includes/use_cases/SyncCategoriesUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/SyncCategoriesUseCase.php)
-
tags/3.1.25/includes/use_cases/SyncCommentsUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/SyncCommentsUseCase.php)
-
tags/3.1.25/includes/use_cases/SyncPagesUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/SyncPagesUseCase.php)
-
tags/3.1.25/includes/use_cases/SyncPostsUseCase.php (deleted)
-
tags/3.1.25/includes/use_cases/SyncRolesUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/SyncRolesUseCase.php)
-
tags/3.1.25/includes/use_cases/SyncTagsUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/SyncTagsUseCase.php)
-
tags/3.1.25/includes/use_cases/SyncUsersUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/SyncUsersUseCase.php)
-
tags/3.1.25/includes/use_cases/TagDeleteUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/TagDeleteUseCase.php)
-
tags/3.1.25/includes/use_cases/TagSaveUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/TagSaveUseCase.php)
-
tags/3.1.25/includes/use_cases/UseCaseManager.php (copied) (copied from appful-app/trunk/includes/use_cases/UseCaseManager.php)
-
tags/3.1.25/includes/use_cases/UserDeleteUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/UserDeleteUseCase.php)
-
tags/3.1.25/includes/use_cases/UserSaveUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/UserSaveUseCase.php)
-
tags/3.1.25/includes/use_cases/app_settings (copied) (copied from appful-app/trunk/includes/use_cases/app_settings)
-
tags/3.1.25/includes/use_cases/page (copied) (copied from appful-app/trunk/includes/use_cases/page)
-
tags/3.1.25/includes/use_cases/page/GetPageContentsByIdUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/page/GetPageContentsByIdUseCase.php) (1 diff)
-
tags/3.1.25/includes/use_cases/page/PullLocalPageContentUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/page/PullLocalPageContentUseCase.php) (1 diff)
-
tags/3.1.25/includes/use_cases/point_of_interest (copied) (copied from appful-app/trunk/includes/use_cases/point_of_interest)
-
tags/3.1.25/includes/use_cases/post (copied) (copied from appful-app/trunk/includes/use_cases/post)
-
tags/3.1.25/includes/use_cases/post/GetPostSyncBatchSizeUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/post/GetPostSyncBatchSizeUseCase.php)
-
tags/3.1.25/includes/use_cases/post/PostUseCaseManager.php (copied) (copied from appful-app/trunk/includes/use_cases/post/PostUseCaseManager.php)
-
tags/3.1.25/includes/use_cases/post/SavePostSyncBatchSizeUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/post/SavePostSyncBatchSizeUseCase.php)
-
tags/3.1.25/includes/use_cases/post/SyncPostUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/post/SyncPostUseCase.php)
-
tags/3.1.25/includes/use_cases/post/SyncPostsUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/post/SyncPostsUseCase.php)
-
tags/3.1.25/includes/use_cases/post/SyncTaxonomyPostsUseCase.php (copied) (copied from appful-app/trunk/includes/use_cases/post/SyncTaxonomyPostsUseCase.php)
-
tags/3.1.25/includes/wp/WPAttachmentManager.php (copied) (copied from appful-app/trunk/includes/wp/WPAttachmentManager.php) (1 diff)
-
tags/3.1.25/includes/wp/WPBlogManager.php (copied) (copied from appful-app/trunk/includes/wp/WPBlogManager.php)
-
tags/3.1.25/includes/wp/WPCategoryManager.php (copied) (copied from appful-app/trunk/includes/wp/WPCategoryManager.php)
-
tags/3.1.25/includes/wp/WPCommentDatabaseManager.php (copied) (copied from appful-app/trunk/includes/wp/WPCommentDatabaseManager.php) (1 diff)
-
tags/3.1.25/includes/wp/WPCommentManager.php (copied) (copied from appful-app/trunk/includes/wp/WPCommentManager.php) (1 diff)
-
tags/3.1.25/includes/wp/WPOptionsManager.php (copied) (copied from appful-app/trunk/includes/wp/WPOptionsManager.php)
-
tags/3.1.25/includes/wp/WPPageManager.php (copied) (copied from appful-app/trunk/includes/wp/WPPageManager.php) (1 diff)
-
tags/3.1.25/includes/wp/WPPostDatabaseManager.php (copied) (copied from appful-app/trunk/includes/wp/WPPostDatabaseManager.php)
-
tags/3.1.25/includes/wp/WPPostManager.php (copied) (copied from appful-app/trunk/includes/wp/WPPostManager.php) (2 diffs)
-
tags/3.1.25/includes/wp/WPRoleManager.php (copied) (copied from appful-app/trunk/includes/wp/WPRoleManager.php)
-
tags/3.1.25/includes/wp/WPTagManager.php (copied) (copied from appful-app/trunk/includes/wp/WPTagManager.php)
-
tags/3.1.25/includes/wp/WPUserDatabaseManager.php (copied) (copied from appful-app/trunk/includes/wp/WPUserDatabaseManager.php) (1 diff)
-
tags/3.1.25/includes/wp/WPUserManager.php (copied) (copied from appful-app/trunk/includes/wp/WPUserManager.php)
-
tags/3.1.25/includes/wp/entities (copied) (copied from appful-app/trunk/includes/wp/entities)
-
tags/3.1.25/includes/wp/mapper/AttachmentMapper.php (copied) (copied from appful-app/trunk/includes/wp/mapper/AttachmentMapper.php)
-
tags/3.1.25/includes/wp/mapper/CategoryMapper.php (copied) (copied from appful-app/trunk/includes/wp/mapper/CategoryMapper.php)
-
tags/3.1.25/includes/wp/mapper/PageMapper.php (copied) (copied from appful-app/trunk/includes/wp/mapper/PageMapper.php)
-
tags/3.1.25/includes/wp/mapper/PostMapper.php (copied) (copied from appful-app/trunk/includes/wp/mapper/PostMapper.php)
-
tags/3.1.25/includes/wp/mapper/TagMapper.php (copied) (copied from appful-app/trunk/includes/wp/mapper/TagMapper.php)
-
tags/3.1.25/includes/wp/mapper/UserMapper.php (copied) (copied from appful-app/trunk/includes/wp/mapper/UserMapper.php)
-
tags/3.1.25/includes/wp/plugins/LanguageHelper.php (copied) (copied from appful-app/trunk/includes/wp/plugins/LanguageHelper.php)
-
tags/3.1.25/includes/wp/plugins/RoleHelper.php (copied) (copied from appful-app/trunk/includes/wp/plugins/RoleHelper.php)
-
tags/3.1.25/lib/.gitignore (deleted)
-
tags/3.1.25/lib/vendor/autoload.php (copied) (copied from appful-app/trunk/lib/vendor/autoload.php)
-
tags/3.1.25/lib/vendor/bin (copied) (copied from appful-app/trunk/lib/vendor/bin)
-
tags/3.1.25/lib/vendor/composer/ClassLoader.php (copied) (copied from appful-app/trunk/lib/vendor/composer/ClassLoader.php)
-
tags/3.1.25/lib/vendor/composer/autoload_classmap.php (copied) (copied from appful-app/trunk/lib/vendor/composer/autoload_classmap.php)
-
tags/3.1.25/lib/vendor/composer/autoload_files.php (copied) (copied from appful-app/trunk/lib/vendor/composer/autoload_files.php)
-
tags/3.1.25/lib/vendor/composer/autoload_psr4.php (copied) (copied from appful-app/trunk/lib/vendor/composer/autoload_psr4.php)
-
tags/3.1.25/lib/vendor/composer/autoload_real.php (copied) (copied from appful-app/trunk/lib/vendor/composer/autoload_real.php)
-
tags/3.1.25/lib/vendor/composer/autoload_static.php (copied) (copied from appful-app/trunk/lib/vendor/composer/autoload_static.php)
-
tags/3.1.25/lib/vendor/composer/installed.json (copied) (copied from appful-app/trunk/lib/vendor/composer/installed.json)
-
tags/3.1.25/lib/vendor/composer/installed.php (copied) (copied from appful-app/trunk/lib/vendor/composer/installed.php) (2 diffs)
-
tags/3.1.25/lib/vendor/composer/platform_check.php (copied) (copied from appful-app/trunk/lib/vendor/composer/platform_check.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/CHANGELOG.md (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/CHANGELOG.md)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/README.md (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/README.md)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/UPGRADING.md (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/UPGRADING.md)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/composer.json (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/composer.json)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/Client.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/Client.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/ClientInterface.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/ClientInterface.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/Cookie/CookieJar.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/Cookie/CookieJar.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/Cookie/CookieJarInterface.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/Cookie/CookieJarInterface.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/Cookie/SessionCookieJar.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/Cookie/SessionCookieJar.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/Cookie/SetCookie.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/Cookie/SetCookie.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/Handler/EasyHandle.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/Handler/EasyHandle.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/Handler/HeaderProcessor.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/Handler/HeaderProcessor.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/Handler/MockHandler.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/Handler/MockHandler.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/Handler/StreamHandler.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/Handler/StreamHandler.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/HandlerStack.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/HandlerStack.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/MessageFormatter.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/MessageFormatter.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/MessageFormatterInterface.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/MessageFormatterInterface.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/Middleware.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/Middleware.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/PrepareBodyMiddleware.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/PrepareBodyMiddleware.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/RedirectMiddleware.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/RedirectMiddleware.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/RequestOptions.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/RequestOptions.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/RetryMiddleware.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/RetryMiddleware.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/TransferStats.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/TransferStats.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/Utils.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/Utils.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/functions.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/functions.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/guzzle/src/functions_include.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/guzzle/src/functions_include.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/promises/CHANGELOG.md (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/promises/CHANGELOG.md)
-
tags/3.1.25/lib/vendor/guzzlehttp/promises/README.md (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/promises/README.md)
-
tags/3.1.25/lib/vendor/guzzlehttp/promises/composer.json (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/promises/composer.json)
-
tags/3.1.25/lib/vendor/guzzlehttp/promises/src/AggregateException.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/promises/src/AggregateException.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/promises/src/CancellationException.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/promises/src/CancellationException.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/promises/src/Coroutine.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/promises/src/Coroutine.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/promises/src/Create.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/promises/src/Create.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/promises/src/Each.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/promises/src/Each.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/promises/src/EachPromise.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/promises/src/EachPromise.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/promises/src/FulfilledPromise.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/promises/src/FulfilledPromise.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/promises/src/Is.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/promises/src/Is.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/promises/src/Promise.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/promises/src/Promise.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/promises/src/PromiseInterface.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/promises/src/PromiseInterface.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/promises/src/PromisorInterface.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/promises/src/PromisorInterface.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/promises/src/RejectedPromise.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/promises/src/RejectedPromise.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/promises/src/RejectionException.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/promises/src/RejectionException.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/promises/src/TaskQueue.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/promises/src/TaskQueue.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/promises/src/TaskQueueInterface.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/promises/src/TaskQueueInterface.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/promises/src/Utils.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/promises/src/Utils.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/CHANGELOG.md (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/CHANGELOG.md)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/README.md (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/README.md)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/composer.json (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/composer.json)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/AppendStream.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/AppendStream.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/BufferStream.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/BufferStream.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/FnStream.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/FnStream.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/Header.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/Header.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/HttpFactory.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/HttpFactory.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/InflateStream.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/InflateStream.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/LazyOpenStream.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/LazyOpenStream.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/Message.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/Message.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/MessageTrait.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/MessageTrait.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/MimeType.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/MimeType.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/MultipartStream.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/MultipartStream.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/PumpStream.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/PumpStream.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/Query.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/Query.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/Request.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/Request.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/Response.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/Response.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/Rfc7230.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/Rfc7230.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/ServerRequest.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/ServerRequest.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/Stream.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/Stream.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/StreamDecoratorTrait.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/StreamDecoratorTrait.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/StreamWrapper.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/StreamWrapper.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/Uri.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/Uri.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/UriNormalizer.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/UriNormalizer.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/UriResolver.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/UriResolver.php)
-
tags/3.1.25/lib/vendor/guzzlehttp/psr7/src/Utils.php (copied) (copied from appful-app/trunk/lib/vendor/guzzlehttp/psr7/src/Utils.php)
-
tags/3.1.25/lib/vendor/psr/http-client/CHANGELOG.md (copied) (copied from appful-app/trunk/lib/vendor/psr/http-client/CHANGELOG.md)
-
tags/3.1.25/lib/vendor/psr/http-client/README.md (copied) (copied from appful-app/trunk/lib/vendor/psr/http-client/README.md)
-
tags/3.1.25/lib/vendor/psr/http-client/composer.json (copied) (copied from appful-app/trunk/lib/vendor/psr/http-client/composer.json)
-
tags/3.1.25/lib/vendor/psr/http-factory/README.md (copied) (copied from appful-app/trunk/lib/vendor/psr/http-factory/README.md)
-
tags/3.1.25/lib/vendor/psr/http-factory/composer.json (copied) (copied from appful-app/trunk/lib/vendor/psr/http-factory/composer.json)
-
tags/3.1.25/lib/vendor/psr/http-message/README.md (copied) (copied from appful-app/trunk/lib/vendor/psr/http-message/README.md)
-
tags/3.1.25/lib/vendor/psr/http-message/composer.json (copied) (copied from appful-app/trunk/lib/vendor/psr/http-message/composer.json)
-
tags/3.1.25/lib/vendor/psr/http-message/src/MessageInterface.php (copied) (copied from appful-app/trunk/lib/vendor/psr/http-message/src/MessageInterface.php)
-
tags/3.1.25/lib/vendor/psr/http-message/src/RequestInterface.php (copied) (copied from appful-app/trunk/lib/vendor/psr/http-message/src/RequestInterface.php)
-
tags/3.1.25/lib/vendor/psr/http-message/src/ResponseInterface.php (copied) (copied from appful-app/trunk/lib/vendor/psr/http-message/src/ResponseInterface.php)
-
tags/3.1.25/lib/vendor/psr/http-message/src/ServerRequestInterface.php (copied) (copied from appful-app/trunk/lib/vendor/psr/http-message/src/ServerRequestInterface.php)
-
tags/3.1.25/lib/vendor/psr/http-message/src/StreamInterface.php (copied) (copied from appful-app/trunk/lib/vendor/psr/http-message/src/StreamInterface.php)
-
tags/3.1.25/lib/vendor/psr/http-message/src/UploadedFileInterface.php (copied) (copied from appful-app/trunk/lib/vendor/psr/http-message/src/UploadedFileInterface.php)
-
tags/3.1.25/lib/vendor/psr/http-message/src/UriInterface.php (copied) (copied from appful-app/trunk/lib/vendor/psr/http-message/src/UriInterface.php)
-
tags/3.1.25/lib/vendor/symfony/deprecation-contracts/composer.json (copied) (copied from appful-app/trunk/lib/vendor/symfony/deprecation-contracts/composer.json)
-
tags/3.1.25/lib/vendor/symfony/deprecation-contracts/function.php (copied) (copied from appful-app/trunk/lib/vendor/symfony/deprecation-contracts/function.php)
-
tags/3.1.25/lib/vendor/symfony/polyfill-ctype/LICENSE (copied) (copied from appful-app/trunk/lib/vendor/symfony/polyfill-ctype/LICENSE)
-
tags/3.1.25/lib/vendor/symfony/polyfill-ctype/composer.json (copied) (copied from appful-app/trunk/lib/vendor/symfony/polyfill-ctype/composer.json)
-
tags/3.1.25/lib/vendor/symfony/polyfill-mbstring/LICENSE (copied) (copied from appful-app/trunk/lib/vendor/symfony/polyfill-mbstring/LICENSE)
-
tags/3.1.25/lib/vendor/symfony/polyfill-mbstring/Mbstring.php (copied) (copied from appful-app/trunk/lib/vendor/symfony/polyfill-mbstring/Mbstring.php)
-
tags/3.1.25/lib/vendor/symfony/polyfill-mbstring/bootstrap.php (copied) (copied from appful-app/trunk/lib/vendor/symfony/polyfill-mbstring/bootstrap.php)
-
tags/3.1.25/lib/vendor/symfony/polyfill-mbstring/bootstrap80.php (copied) (copied from appful-app/trunk/lib/vendor/symfony/polyfill-mbstring/bootstrap80.php)
-
tags/3.1.25/lib/vendor/symfony/polyfill-mbstring/composer.json (copied) (copied from appful-app/trunk/lib/vendor/symfony/polyfill-mbstring/composer.json)
-
tags/3.1.25/lib/vendor/twig/twig/CHANGELOG (copied) (copied from appful-app/trunk/lib/vendor/twig/twig/CHANGELOG)
-
tags/3.1.25/lib/vendor/twig/twig/LICENSE (copied) (copied from appful-app/trunk/lib/vendor/twig/twig/LICENSE)
-
tags/3.1.25/lib/vendor/twig/twig/composer.json (copied) (copied from appful-app/trunk/lib/vendor/twig/twig/composer.json)
-
tags/3.1.25/lib/vendor/twig/twig/src/Compiler.php (copied) (copied from appful-app/trunk/lib/vendor/twig/twig/src/Compiler.php)
-
tags/3.1.25/lib/vendor/twig/twig/src/Environment.php (copied) (copied from appful-app/trunk/lib/vendor/twig/twig/src/Environment.php)
-
tags/3.1.25/lib/vendor/twig/twig/src/ExpressionParser.php (copied) (copied from appful-app/trunk/lib/vendor/twig/twig/src/ExpressionParser.php)
-
tags/3.1.25/lib/vendor/twig/twig/src/Extension/CoreExtension.php (copied) (copied from appful-app/trunk/lib/vendor/twig/twig/src/Extension/CoreExtension.php)
-
tags/3.1.25/lib/vendor/twig/twig/src/Extension/ExtensionInterface.php (copied) (copied from appful-app/trunk/lib/vendor/twig/twig/src/Extension/ExtensionInterface.php)
-
tags/3.1.25/lib/vendor/twig/twig/src/Extension/GlobalsInterface.php (copied) (copied from appful-app/trunk/lib/vendor/twig/twig/src/Extension/GlobalsInterface.php)
-
tags/3.1.25/lib/vendor/twig/twig/src/ExtensionSet.php (copied) (copied from appful-app/trunk/lib/vendor/twig/twig/src/ExtensionSet.php)
-
tags/3.1.25/lib/vendor/twig/twig/src/Lexer.php (copied) (copied from appful-app/trunk/lib/vendor/twig/twig/src/Lexer.php)
-
tags/3.1.25/lib/vendor/twig/twig/src/Loader/FilesystemLoader.php (copied) (copied from appful-app/trunk/lib/vendor/twig/twig/src/Loader/FilesystemLoader.php)
-
tags/3.1.25/lib/vendor/twig/twig/src/Node/Expression/ArrayExpression.php (copied) (copied from appful-app/trunk/lib/vendor/twig/twig/src/Node/Expression/ArrayExpression.php)
-
tags/3.1.25/lib/vendor/twig/twig/src/Node/Expression/Binary/MatchesBinary.php (copied) (copied from appful-app/trunk/lib/vendor/twig/twig/src/Node/Expression/Binary/MatchesBinary.php)
-
tags/3.1.25/lib/vendor/twig/twig/src/Node/Expression/CallExpression.php (copied) (copied from appful-app/trunk/lib/vendor/twig/twig/src/Node/Expression/CallExpression.php)
-
tags/3.1.25/lib/vendor/twig/twig/src/Node/IfNode.php (copied) (copied from appful-app/trunk/lib/vendor/twig/twig/src/Node/IfNode.php)
-
tags/3.1.25/lib/vendor/twig/twig/src/Token.php (copied) (copied from appful-app/trunk/lib/vendor/twig/twig/src/Token.php)
-
tags/3.1.25/lib/vendor/twig/twig/src/TwigFilter.php (copied) (copied from appful-app/trunk/lib/vendor/twig/twig/src/TwigFilter.php)
-
tags/3.1.25/lib/vendor/twig/twig/src/TwigFunction.php (copied) (copied from appful-app/trunk/lib/vendor/twig/twig/src/TwigFunction.php)
-
tags/3.1.25/lib/vendor/twig/twig/src/TwigTest.php (copied) (copied from appful-app/trunk/lib/vendor/twig/twig/src/TwigTest.php)
-
tags/3.1.25/readme.txt (copied) (copied from appful-app/trunk/readme.txt) (1 diff)
-
trunk/appful-app.php (modified) (1 diff)
-
trunk/includes/api/Api.php (modified) (1 diff)
-
trunk/includes/api/ReqHandler.php (modified) (1 diff)
-
trunk/includes/api/handlers/page/GetPageContentRequestHandler.php (modified) (1 diff)
-
trunk/includes/use_cases/PullLocalPostContentUseCase.php (modified) (1 diff)
-
trunk/includes/use_cases/page/GetPageContentsByIdUseCase.php (modified) (1 diff)
-
trunk/includes/use_cases/page/PullLocalPageContentUseCase.php (modified) (1 diff)
-
trunk/includes/wp/WPAttachmentManager.php (modified) (1 diff)
-
trunk/includes/wp/WPCommentDatabaseManager.php (modified) (1 diff)
-
trunk/includes/wp/WPCommentManager.php (modified) (1 diff)
-
trunk/includes/wp/WPPageManager.php (modified) (1 diff)
-
trunk/includes/wp/WPPostManager.php (modified) (2 diffs)
-
trunk/includes/wp/WPUserDatabaseManager.php (modified) (1 diff)
-
trunk/lib/vendor/composer/installed.php (modified) (2 diffs)
-
trunk/readme.txt (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
appful-app/tags/3.1.25/appful-app.php
r3053321 r3069513 12 12 * Plugin URI: https://appful.io 13 13 * Description: Appful® is the number 1 plugin for turning your WordPress Content into a native, beautiful app on iOS & Android in under 5 minutes. 14 * Version: 3.1.2 414 * Version: 3.1.25 15 15 * Requires at least: 5.8 16 16 * Requires PHP: 7.4 -
appful-app/tags/3.1.25/includes/api/Api.php
r3027388 r3069513 9 9 10 10 class Api { 11 private ReqHandler $api_request_handler;11 private ReqHandler $api_request_handler; 12 12 13 public function __construct( ReqHandler $api_request_handler ) {14 $this->api_request_handler = $api_request_handler;15 }13 public function __construct( ReqHandler $api_request_handler ) { 14 $this->api_request_handler = $api_request_handler; 15 } 16 16 17 public function init() {18 add_action(19 "wp",20 function () {21 $this->handle_request();22 },23 10,24 );25 }17 public function init() { 18 add_action( 19 "wp", 20 function () { 21 $this->handle_request(); 22 }, 23 10, 24 ); 25 } 26 26 27 private function handle_request() {28 if ( get_query_var( "appful", 0 ) != 0 ) {29 $action = get_query_var( "appful_action" );30 Logger::debug( "Handling WP Plugin request from Appful, action: " . $action );27 private function handle_request() { 28 if ( get_query_var( "appful", 0 ) != 0 ) { 29 $action = get_query_var( "appful_action" ); 30 Logger::debug( "Handling WP Plugin request from Appful, action: " . $action ); 31 31 32 $request = PluginRequest::plugin_request()->action( $action );33 if ( $request->requires_auth() ) {34 $token= $this->parse_token();35 $request = $request->token( $token );36 }37 $response = $this->api_request_handler->handle_request( $request );32 $request = PluginRequest::plugin_request()->action( $action ); 33 if ( $request->requires_auth() ) { 34 $token = $this->parse_token(); 35 $request = $request->token( $token ); 36 } 37 $response = $this->api_request_handler->handle_request( $request ); 38 38 39 $this->respond( $response );40 }41 }39 $this->respond( $response ); 40 } 41 } 42 42 43 private function parse_token(): ?string {44 $token = null;43 private function parse_token(): ?string { 44 $token = null; 45 45 46 $header = $_SERVER['HTTP_AUTHORIZATION'] ?? $_SERVER['REDIRECT_HTTP_AUTHORIZATION'] ?? null;47 if ( $header != null && 0 === stripos( $header, "Bearer " ) ) {48 $token = sanitize_text_field( substr( $header, strlen( "Bearer " ) ) );49 }46 $header = $_SERVER['HTTP_AUTHORIZATION'] ?? $_SERVER['REDIRECT_HTTP_AUTHORIZATION'] ?? null; 47 if ( $header != null && 0 === stripos( $header, "Bearer " ) ) { 48 $token = sanitize_text_field( substr( $header, strlen( "Bearer " ) ) ); 49 } 50 50 51 if ( $token == null ) {52 $this->unauthorized();53 }51 if ( $token == null ) { 52 $this->unauthorized(); 53 } 54 54 55 $current_session_id = ClientTokenManager::getToken();56 if ( $current_session_id == null ) {57 $this->notAvailable();58 }59 if ( strcmp( $token, $current_session_id ) != 0 ) {60 $this->unauthorized();61 }55 $current_session_id = ClientTokenManager::getToken(); 56 if ( $current_session_id == null ) { 57 $this->notAvailable(); 58 } 59 if ( strcmp( $token, $current_session_id ) != 0 ) { 60 $this->unauthorized(); 61 } 62 62 63 return $token;64 }63 return $token; 64 } 65 65 66 private function unauthorized() {67 $this->respond( PluginResponse::plugin_response()->status( 401 ) );68 }66 private function unauthorized() { 67 $this->respond( PluginResponse::plugin_response()->status( 401 ) ); 68 } 69 69 70 private function respond( PluginResponse $response ) { 71 ob_end_clean(); 72 if ( $response->get_encoded() ) { 73 header( "Content-Type: application/json" ); 74 } 75 status_header( $response->get_status() ); 76 exit( $response->get_body() ); 77 } 70 private function respond( PluginResponse $response ) { 71 while (ob_get_level() > 0) { 72 ob_end_clean(); 73 } 74 if ( $response->get_encoded() ) { 75 header( "Content-Type: application/json" ); 76 } 77 status_header( $response->get_status() ); 78 exit( $response->get_body() ); 79 } 78 80 79 private function notAvailable() {80 $this->respond( PluginResponse::plugin_response()->status( 503 ) );81 }81 private function notAvailable() { 82 $this->respond( PluginResponse::plugin_response()->status( 503 ) ); 83 } 82 84 } -
appful-app/tags/3.1.25/includes/api/ReqHandler.php
r3043568 r3069513 74 74 new GetPageContentsRequestHandler( $use_case_manager->pages()->get_page_contents_by_id_use_case() ), 75 75 new PullLocalPageContentRequestHandler( $use_case_manager->pages()->get_local_page_content_by_id_use_case() ), 76 new GetPageContentRequestHandler( $use_case_manager->pages()-> get_page_contents_by_id_use_case() ),76 new GetPageContentRequestHandler( $use_case_manager->pages()->pull_local_page_content_use_case() ), 77 77 new PointOfInterestSyncRequestHandler( $use_case_manager->points_of_interest()->get_sync_points_of_interest_use_case() ), 78 78 new GetPointsOfInterestRequestHandler( $use_case_manager->points_of_interest()->get_get_points_of_interest_by_id_use_case() ), -
appful-app/tags/3.1.25/includes/api/handlers/page/GetPageContentRequestHandler.php
r3018629 r3069513 9 9 use AppfulPlugin\Api\Responses\PluginResponse; 10 10 use AppfulPlugin\Helper\Logger; 11 use AppfulPlugin\UseCases\Page\ GetPageContentsByIdUseCase;11 use AppfulPlugin\UseCases\Page\PullLocalPageContentUseCase; 12 12 13 13 class GetPageContentRequestHandler implements RequestHandler { 14 private GetPageContentsByIdUseCase $get_page_contents_by_id_use_case;14 private PullLocalPageContentUseCase $pull_local_page_content_use_case; 15 15 16 public function __construct(17 GetPageContentsByIdUseCase $get_page_contents_by_id_use_case18 ) {19 $this->get_page_contents_by_id_use_case = $get_page_contents_by_id_use_case;20 }16 public function __construct( 17 PullLocalPageContentUseCase $pull_local_page_content_use_case 18 ) { 19 $this->pull_local_page_content_use_case = $pull_local_page_content_use_case; 20 } 21 21 22 public function can_handle_request( PluginRequest $request ): bool {23 return $request->get_action() == Endpoints::$GET_PAGE_CONTENT_HOOK;24 }22 public function can_handle_request( PluginRequest $request ): bool { 23 return $request->get_action() == Endpoints::$GET_PAGE_CONTENT_HOOK; 24 } 25 25 26 public function handle_request( PluginRequest $request ): PluginResponse {27 Logger::debug( "Found handler for Appful request" );26 public function handle_request( PluginRequest $request ): PluginResponse { 27 Logger::debug( "Found handler for Appful request" ); 28 28 29 if ( !isset( $_GET['id'] ) ) {30 return PluginResponse::plugin_response()->status( 400 );31 }29 if ( !isset( $_GET['id'] ) ) { 30 return PluginResponse::plugin_response()->status( 400 ); 31 } 32 32 33 $cleaned_id = absint( sanitize_text_field( $_GET['id'] ) );33 $cleaned_id = absint( sanitize_text_field( $_GET['id'] ) ); 34 34 35 $request_user_id = $_GET['user_id'] ?? null;36 $cleaned_user_id = null;37 if ( $request_user_id ) {38 $cleaned_user_id = absint( sanitize_text_field( $request_user_id ) );39 }35 $request_user_id = $_GET['user_id'] ?? null; 36 $cleaned_user_id = null; 37 if ( $request_user_id ) { 38 $cleaned_user_id = absint( sanitize_text_field( $request_user_id ) ); 39 } 40 40 41 Logger::debug( "Sending page content for id " . json_encode( $cleaned_id ) . " for user " . $request_user_id );41 Logger::debug( "Sending page content for id " . json_encode( $cleaned_id ) . " for user " . $request_user_id ); 42 42 43 $page_contents = $this->get_page_contents_by_id_use_case->invoke( [ $cleaned_id ], $cleaned_user_id );44 if ( count( $page_contents ) == 1) {45 return PluginResponse::plugin_response()->body( PageContentMapper::to_dto( $page_contents[0]) );46 } else {47 return PluginResponse::plugin_response()->status( 404 );48 }49 }43 $page_content = $this->pull_local_page_content_use_case->invoke( $cleaned_id, $cleaned_user_id ); 44 if ( $page_content != null ) { 45 return PluginResponse::plugin_response()->body( PageContentMapper::to_dto( $page_content ) ); 46 } else { 47 return PluginResponse::plugin_response()->status( 404 ); 48 } 49 } 50 50 } -
appful-app/tags/3.1.25/includes/use_cases/PullLocalPostContentUseCase.php
r3018629 r3069513 10 10 11 11 class PullLocalPostContentUseCase { 12 private SelfClient $self_client;12 private SelfClient $self_client; 13 13 14 public function __construct( SelfClient $self_client ) {15 $this->self_client = $self_client;16 }14 public function __construct( SelfClient $self_client ) { 15 $this->self_client = $self_client; 16 } 17 17 18 public function invoke( int $id ): ?PostContent {19 Logger::debug( "Pulling local post content for id: " . $id );18 public function invoke( int $id ): ?PostContent { 19 Logger::debug( "Pulling local post content for id: " . $id ); 20 20 21 $request_params = [];21 $request_params = []; 22 22 23 $request_params['id'] = $id;24 if ( isset( $_REQUEST['debug'] ) && $_REQUEST['debug'] == "1" ) {25 $request_params['debug'] = "1";26 }23 $request_params['id'] = $id; 24 if ( isset( $_REQUEST['debug'] ) && $_REQUEST['debug'] == "1" ) { 25 $request_params['debug'] = "1"; 26 } 27 27 28 $request= HttpRequest::backend_request()->method( "GET" )->path( "/" . Endpoints::$GET_POST_CONTENT_LOCAL )->params( $request_params );29 $response = $this->self_client->send_request( $request );28 $request = HttpRequest::backend_request()->method( "GET" )->path( "/" . Endpoints::$GET_POST_CONTENT_LOCAL )->params( $request_params ); 29 $response = $this->self_client->send_request( $request ); 30 30 31 if ( $response->get_status() != 200 ) {32 return null;33 }31 if ( $response->get_status() != 200 ) { 32 return null; 33 } 34 34 35 $post_content_dto = $response->get_body();35 $post_content_dto = $response->get_body(); 36 36 37 return PostContent::postContent() 38 ->id( absint( $post_content_dto["id"] ) ) 39 ->content( $post_content_dto["content"] ) 40 ->head( $post_content_dto["head"] ) 41 ->footer( $post_content_dto["footer"] ) 42 ->body_class( $post_content_dto["body_class"] ); 43 } 37 if ( $post_content_dto == null ) { 38 return null; 39 } 40 41 return PostContent::postContent() 42 ->id( absint( $post_content_dto["id"] ) ) 43 ->content( $post_content_dto["content"] ) 44 ->head( $post_content_dto["head"] ) 45 ->footer( $post_content_dto["footer"] ) 46 ->body_class( $post_content_dto["body_class"] ); 47 } 44 48 } -
appful-app/tags/3.1.25/includes/use_cases/page/GetPageContentsByIdUseCase.php
r2978062 r3069513 4 4 5 5 use AppfulPlugin\Domain\PageContent; 6 use AppfulPlugin\Wp\WPPageManager;7 6 8 7 class GetPageContentsByIdUseCase { 9 private PullLocalPageContentUseCase $pull_local_page_content_use_case;8 private PullLocalPageContentUseCase $pull_local_page_content_use_case; 10 9 11 public function __construct( PullLocalPageContentUseCase $pull_local_page_content_use_case ) {12 $this->pull_local_page_content_use_case = $pull_local_page_content_use_case;13 }10 public function __construct( PullLocalPageContentUseCase $pull_local_page_content_use_case ) { 11 $this->pull_local_page_content_use_case = $pull_local_page_content_use_case; 12 } 14 13 15 /**16 * @param int[] $ids17 *18 * @return PageContent[]19 */20 public function invoke( array $ids, ?int $user_id = null ): array {21 $page_contents = [];14 /** 15 * @param int[] $ids 16 * 17 * @return PageContent[] 18 */ 19 public function invoke( array $ids, ?int $user_id = null ): array { 20 $page_contents = []; 22 21 23 $page_contents = WPPageManager::get_page_contents_by_ids($ids, $user_id); 24 // Uncomment if for some reason fetching all pages at once should not work 25 // foreach ( $ids as $page_id ) { 26 // $response = $this->pull_local_page_content_use_case->invoke( $page_id, $user_id ); 27 // if ( $response != null ) { 28 // $page_contents[] = $response; 29 // } 30 // } 22 foreach ($ids as $page_id) { 23 $response = $this->pull_local_page_content_use_case->invoke( $page_id, $user_id ); 24 if ( $response != null ) { 25 $page_contents[] = $response; 26 } 27 } 31 28 32 return $page_contents;33 }29 return $page_contents; 30 } 34 31 } -
appful-app/tags/3.1.25/includes/use_cases/page/PullLocalPageContentUseCase.php
r3018629 r3069513 10 10 11 11 class PullLocalPageContentUseCase { 12 private SelfClient $self_client;12 private SelfClient $self_client; 13 13 14 public function __construct( SelfClient $self_client ) {15 $this->self_client = $self_client;16 }14 public function __construct( SelfClient $self_client ) { 15 $this->self_client = $self_client; 16 } 17 17 18 public function invoke( int $id, ?int $user_id = null ): ?PageContent {19 Logger::debug( "Pulling local page content for id " . $id . " for user " . $user_id );18 public function invoke( int $id, ?int $user_id = null ): ?PageContent { 19 Logger::debug( "Pulling local page content for id " . $id . " for user " . $user_id ); 20 20 21 $request_params = [];21 $request_params = []; 22 22 23 $request_params['id'] = $id;24 if ( isset( $_REQUEST['debug'] ) && $_REQUEST['debug'] == "1" ) {25 $request_params['debug'] = "1";26 }27 if ( $user_id ) {28 $request_params['user_id'] = $user_id;29 }23 $request_params['id'] = $id; 24 if ( isset( $_REQUEST['debug'] ) && $_REQUEST['debug'] == "1" ) { 25 $request_params['debug'] = "1"; 26 } 27 if ( $user_id ) { 28 $request_params['user_id'] = $user_id; 29 } 30 30 31 $request= HttpRequest::backend_request()->method( "GET" )->path( "/" . Endpoints::$GET_PAGE_CONTENT_LOCAL )->params( $request_params );32 $response = $this->self_client->send_request( $request );31 $request = HttpRequest::backend_request()->method( "GET" )->path( "/" . Endpoints::$GET_PAGE_CONTENT_LOCAL )->params( $request_params ); 32 $response = $this->self_client->send_request( $request ); 33 33 34 if ( $response->get_status() != 200 ) {35 return null;36 }34 if ( $response->get_status() != 200 ) { 35 return null; 36 } 37 37 38 $page_content_dto = $response->get_body();38 $page_content_dto = $response->get_body(); 39 39 40 return PageContent::pageContent() 41 ->id( absint( $page_content_dto["id"] ) ) 42 ->content( $page_content_dto["content"] ) 43 ->head( $page_content_dto["head"] ) 44 ->footer( $page_content_dto["footer"] ) 45 ->body_class( $page_content_dto["body_class"] ); 46 } 40 if ( $page_content_dto == null ) { 41 return null; 42 } 43 44 return PageContent::pageContent() 45 ->id( absint( $page_content_dto["id"] ) ) 46 ->content( $page_content_dto["content"] ) 47 ->head( $page_content_dto["head"] ) 48 ->footer( $page_content_dto["footer"] ) 49 ->body_class( $page_content_dto["body_class"] ); 50 } 47 51 } -
appful-app/tags/3.1.25/includes/wp/WPAttachmentManager.php
r3019874 r3069513 96 96 ]; 97 97 98 $all_attachments = get_posts( $args ); 98 $all_attachments = LanguageHelper::for_each_language( function () use ( $args ) { 99 return get_posts( $args ); 100 } ); 99 101 100 102 $all_attachments = array_values( -
appful-app/tags/3.1.25/includes/wp/WPCommentDatabaseManager.php
r3019874 r3069513 25 25 global $wpdb; 26 26 27 $query = $wpdb->prepare( "SELECT COUNT(*) FROM $wpdb->comments AS comment" ); 28 29 return $wpdb->get_var( $query ); 27 return $wpdb->get_var( "SELECT COUNT(*) FROM $wpdb->comments" ); 30 28 } 31 29 } -
appful-app/tags/3.1.25/includes/wp/WPCommentManager.php
r3019874 r3069513 12 12 13 13 class WPCommentManager { 14 public static function get_comment_count(): int {15 return WPCommentDatabaseManager::get_count();16 }14 public static function get_comment_count(): int { 15 return WPCommentDatabaseManager::get_count(); 16 } 17 17 18 /** @return SyncItem[] */19 public static function get_comment_sync_items( int $offset, int $count ): array {20 return WPCommentDatabaseManager::get_sync_items( $count, $offset );21 }18 /** @return SyncItem[] */ 19 public static function get_comment_sync_items( int $offset, int $count ): array { 20 return WPCommentDatabaseManager::get_sync_items( $count, $offset ); 21 } 22 22 23 /**24 * @param int[] $ids25 *26 * @return Comment[]27 */28 public static function get_comments_by_id( array $ids ): array {29 $args = [30 "status"=> array_keys( get_comment_statuses() ),31 "comment__in" => $ids32 ];23 /** 24 * @param int[] $ids 25 * 26 * @return Comment[] 27 */ 28 public static function get_comments_by_id( array $ids ): array { 29 $args = [ 30 "status" => array_keys( get_comment_statuses() ), 31 "comment__in" => $ids 32 ]; 33 33 34 $all_comments = LanguageHelper::for_each_language( function () use ( $args ) {35 return get_comments( $args );36 } );34 $all_comments = LanguageHelper::for_each_language( function () use ( $args ) { 35 return get_comments( $args ); 36 } ); 37 37 38 return array_map(39 function ( WP_Comment $comment ) {40 return CommentMapper::to_domain( $comment );41 },42 $all_comments43 );44 }38 return array_map( 39 function ( WP_Comment $comment ) { 40 return CommentMapper::to_domain( $comment ); 41 }, 42 $all_comments 43 ); 44 } 45 45 46 public static function create_comment( CreateCommentRequest $request ): ?Comment {47 $commentData = [48 'comment_author'=> $request->get_username(), // The name of the author of the comment.49 'comment_author_email' => $request->get_email(), // The email address of the $comment_author.50 'comment_content'=> $request->get_content(), // The content of the comment.51 'comment_post_ID'=> $request->get_post_id(), // ID of the post that relates to the comment.52 'comment_parent'=> $request->get_parent_id(), // ID of this comment's parent, if any.53 ];46 public static function create_comment( CreateCommentRequest $request ): ?Comment { 47 $commentData = [ 48 'comment_author' => $request->get_username(), // The name of the author of the comment. 49 'comment_author_email' => $request->get_email(), // The email address of the $comment_author. 50 'comment_content' => $request->get_content(), // The content of the comment. 51 'comment_post_ID' => $request->get_post_id(), // ID of the post that relates to the comment. 52 'comment_parent' => $request->get_parent_id(), // ID of this comment's parent, if any. 53 ]; 54 54 55 $commentId = wp_insert_comment( $commentData );55 $commentId = wp_insert_comment( $commentData ); 56 56 57 if ( $commentId === false ) {58 Logger::error( "Insert comment failed" );57 if ( $commentId === false ) { 58 Logger::error( "Insert comment failed" ); 59 59 60 return null;61 }60 return null; 61 } 62 62 63 $comment = get_comment( $commentId );63 $comment = get_comment( $commentId ); 64 64 65 if ( !$comment instanceof WP_Comment ) {66 Logger::error( "Getting comment failed!" );65 if ( !$comment instanceof WP_Comment ) { 66 Logger::error( "Getting comment failed!" ); 67 67 68 return null;69 }68 return null; 69 } 70 70 71 return CommentMapper::to_domain( $comment );72 }71 return CommentMapper::to_domain( $comment ); 72 } 73 73 } -
appful-app/tags/3.1.25/includes/wp/WPPageManager.php
r3019874 r3069513 11 11 12 12 class WPPageManager { 13 public static function get_page_permalink( WP_Post $page ): ?string {14 return get_permalink( $page );15 }13 public static function get_page_permalink( WP_Post $page ): ?string { 14 return get_permalink( $page ); 15 } 16 16 17 public static function get_page_language( int $page_id ): string {18 return LanguageHelper::get_page_language( $page_id );19 }17 public static function get_page_language( int $page_id ): string { 18 return LanguageHelper::get_page_language( $page_id ); 19 } 20 20 21 public static function get_page_count(): int {22 return WPPostDatabaseManager::get_count_for_type( "page" );23 }21 public static function get_page_count(): int { 22 return WPPostDatabaseManager::get_count_for_type( "page" ); 23 } 24 24 25 /** @return SyncItem[] */26 public static function get_page_sync_items( int $offset, int $count ): array {27 return WPPostDatabaseManager::get_sync_items_for_type( "page", $count, $offset );28 }25 /** @return SyncItem[] */ 26 public static function get_page_sync_items( int $offset, int $count ): array { 27 return WPPostDatabaseManager::get_sync_items_for_type( "page", $count, $offset ); 28 } 29 29 30 /** 31 * @param int[] $ids 32 * 33 * @return Page[] 34 */ 35 public static function get_pages_by_id( array $ids ): array { 36 $args = [ 37 "numberposts" => - 1, 38 "post_status" => self::get_allowed_page_stati() 39 ]; 30 /** 31 * @param int[] $ids 32 * 33 * @return Page[] 34 */ 35 public static function get_pages_by_id( array $ids ): array { 36 $args = [ 37 "numberposts" => -1, 38 "include" => $ids, 39 "post_status" => self::get_allowed_page_stati() 40 ]; 40 41 41 $all_pages = get_pages( $args ); 42 $all_pages = LanguageHelper::for_each_language( function () use ( $args ) { 43 return get_pages( $args ); 44 } ); 42 45 43 $all_pages = array_values(44 array_filter( $all_pages, function ( WP_Post $page ) use ( $ids ) {45 return in_array( $page->ID, $ids );46 } )47 );46 $all_pages = array_values( 47 array_filter( $all_pages, function ( WP_Post $page ) use ( $ids ) { 48 return in_array( $page->ID, $ids ); 49 } ) 50 ); 48 51 49 return array_map(50 function ( WP_Post $page ) {51 return PageMapper::to_domain( $page );52 },53 $all_pages54 );55 }52 return array_map( 53 function ( WP_Post $page ) { 54 return PageMapper::to_domain( $page ); 55 }, 56 $all_pages 57 ); 58 } 56 59 57 public static function get_page_content_by_id( int $id, ?int $user_id = null ): ?PageContent { 58 global $wp_query; 60 public static function get_page_content_by_id( int $id, ?int $user_id = null ): ?PageContent { 61 if ( $user_id ) { 62 wp_set_current_user( $user_id ); 63 } 59 64 60 if ( $user_id ) { 61 wp_set_current_user( $user_id ); 62 } 65 $args = [ 66 "posts_per_page" => 1, 67 "post_type" => "page", 68 "p" => $id, 69 "post_status" => self::get_allowed_page_stati() 70 ]; 63 71 64 $args = [ 65 "posts_per_page" => 1, 66 "post_type" => "page", 67 "p" => $id, 68 "post_status" => self::get_allowed_page_stati() 69 ]; 72 $page_language = self::get_page_language( $id ); 73 return LanguageHelper::for_language( 74 $page_language, 75 function () use ( $args ) { 76 global $wp_query; 70 77 71 $wp_query = new \WP_Query( $args);78 do_action( 'template_redirect' ); 72 79 73 do_action( 'template_redirect');80 $wp_query = new \WP_Query( $args ); 74 81 75 if ( have_posts() ) {76 the_post();82 if ( have_posts() ) { 83 the_post(); 77 84 78 ob_start();79 wp_head();80 $head = ob_get_clean();85 ob_start(); 86 wp_head(); 87 $head = ob_get_clean(); 81 88 82 ob_start();83 the_content();84 $content = ob_get_clean();89 ob_start(); 90 the_content(); 91 $content = ob_get_clean(); 85 92 86 ob_start();87 wp_footer();88 $footer = ob_get_clean();93 ob_start(); 94 wp_footer(); 95 $footer = ob_get_clean(); 89 96 90 ob_start();91 body_class();92 $body_class = ob_get_clean();97 ob_start(); 98 body_class(); 99 $body_class = ob_get_clean(); 93 100 94 wp_reset_postdata();101 wp_reset_postdata(); 95 102 96 return PageContent::pageContent()97 ->id( get_the_ID() )98 ->content( $content )99 ->head( $head )100 ->footer( $footer )101 ->body_class( $body_class );102 }103 return PageContent::pageContent() 104 ->id( get_the_ID() ) 105 ->content( $content ) 106 ->head( $head ) 107 ->footer( $footer ) 108 ->body_class( $body_class ); 109 } 103 110 104 return null; 105 } 111 return null; 112 } 113 ); 114 } 106 115 107 public static function get_page_contents_by_ids( array $ids, ?int $user_id = null ): array { 108 global $wp_query; 109 110 if ( $user_id ) { 111 wp_set_current_user( $user_id ); 112 } 113 114 $args = [ 115 "posts_per_page" => - 1, 116 "post_type" => "page", 117 "post__in" => $ids, 118 "post_status" => self::get_allowed_page_stati() 119 ]; 120 121 $wp_query = new \WP_Query( $args ); 122 123 do_action( 'template_redirect' ); 124 125 $pages = []; 126 127 if ( have_posts() ) { 128 ob_start(); 129 wp_head(); 130 $head = ob_get_clean(); 131 132 ob_start(); 133 body_class(); 134 $body_class = ob_get_clean(); 135 136 while ( have_posts() ) { 137 the_post(); 138 139 ob_start(); 140 the_content(); 141 $content = ob_get_clean(); 142 143 $pages[] = PageContent::pageContent() 144 ->id( get_the_ID() ) 145 ->content( $content ) 146 ->head( $head ) 147 ->footer( "" ) 148 ->body_class( $body_class ); 149 } 150 151 ob_start(); 152 wp_footer(); 153 $footer = ob_get_clean(); 154 155 $pages = array_map( function ( PageContent $content ) use ( $footer ) { 156 return $content->footer( $footer ); 157 }, $pages ); 158 } 159 160 wp_reset_postdata(); 161 162 return $pages; 163 } 164 165 /** 166 * @return string[] 167 */ 168 private static function get_allowed_page_stati(): array { 169 return array_filter( get_post_stati(), function ( string $status ) { 170 return $status != "auto-draft"; 171 } ); 172 } 116 /** 117 * @return string[] 118 */ 119 private static function get_allowed_page_stati(): array { 120 return array_filter( get_post_stati(), function ( string $status ) { 121 return $status != "auto-draft"; 122 } ); 123 } 173 124 } -
appful-app/tags/3.1.25/includes/wp/WPPostManager.php
r3043568 r3069513 131 131 132 132 public static function get_post_content_by_id( int $id ): ?PostContent { 133 global $wp_query;134 135 133 $args = [ 136 134 "post_type" => "post", … … 139 137 ]; 140 138 141 $wp_query = new \WP_Query( $args ); 142 143 self::setup_wp_call(); 144 145 if ( have_posts() ) { 146 the_post(); 147 148 Logger::debug( "Getting head!" ); 149 $head = self::get_data_code( 'wp_head' ); 150 Logger::debug( "Getting content!" ); 151 $content = self::get_data_code( 'the_content' ); 152 Logger::debug( "Getting footer!" ); 153 $footer = self::get_data_code( 'wp_footer' ); 154 Logger::debug( "Getting body classes!" ); 155 $body_class = self::get_data_code( 'body_class' ); 156 157 wp_reset_postdata(); 158 159 return PostContent::postContent() 160 ->id( get_the_ID() ) 161 ->content( $content ) 162 ->head( $head ) 163 ->footer( $footer ) 164 ->body_class( $body_class ); 165 } 166 167 return null; 139 $post_language = self::get_post_language( $id ); 140 return LanguageHelper::for_language( 141 $post_language, 142 function() use ( $args ) { 143 global $wp_query; 144 145 $wp_query = new \WP_Query( $args ); 146 147 self::setup_wp_call(); 148 149 if ( have_posts() ) { 150 the_post(); 151 152 Logger::debug( "Getting head!" ); 153 $head = self::get_data_code( 'wp_head' ); 154 Logger::debug( "Getting content!" ); 155 $content = self::get_data_code( 'the_content' ); 156 Logger::debug( "Getting footer!" ); 157 $footer = self::get_data_code( 'wp_footer' ); 158 Logger::debug( "Getting body classes!" ); 159 $body_class = self::get_data_code( 'body_class' ); 160 161 wp_reset_postdata(); 162 163 return PostContent::postContent() 164 ->id( get_the_ID() ) 165 ->content( $content ) 166 ->head( $head ) 167 ->footer( $footer ) 168 ->body_class( $body_class ); 169 } 170 171 return null; 172 } 173 ); 168 174 } 169 175 -
appful-app/tags/3.1.25/includes/wp/WPUserDatabaseManager.php
r3019874 r3069513 25 25 global $wpdb; 26 26 27 $query = $wpdb->prepare( "SELECT COUNT(*) FROM $wpdb->users AS user" ); 28 29 return $wpdb->get_var( $query ); 27 return $wpdb->get_var( "SELECT COUNT(*) FROM $wpdb->users" ); 30 28 } 31 29 } -
appful-app/tags/3.1.25/lib/vendor/composer/installed.php
r3043568 r3069513 4 4 'pretty_version' => 'dev-main', 5 5 'version' => 'dev-main', 6 'reference' => ' 6f0d2c0f0f21f2ca2550d7a07d32827d416dc20c',6 'reference' => '455447cb78389ae33d8dd91f6fcc71f5b36b9f5a', 7 7 'type' => 'library', 8 8 'install_path' => __DIR__ . '/../../', … … 14 14 'pretty_version' => 'dev-main', 15 15 'version' => 'dev-main', 16 'reference' => ' 6f0d2c0f0f21f2ca2550d7a07d32827d416dc20c',16 'reference' => '455447cb78389ae33d8dd91f6fcc71f5b36b9f5a', 17 17 'type' => 'library', 18 18 'install_path' => __DIR__ . '/../../', -
appful-app/tags/3.1.25/readme.txt
r3053321 r3069513 6 6 Tested up to: 6.4 7 7 Requires PHP: 7.4 8 Stable tag: 3.1.2 48 Stable tag: 3.1.25 9 9 License: GPLv2 or later 10 10 License URI: http://www.gnu.org/licenses/gpl-2.0.html -
appful-app/trunk/appful-app.php
r3053321 r3069513 12 12 * Plugin URI: https://appful.io 13 13 * Description: Appful® is the number 1 plugin for turning your WordPress Content into a native, beautiful app on iOS & Android in under 5 minutes. 14 * Version: 3.1.2 414 * Version: 3.1.25 15 15 * Requires at least: 5.8 16 16 * Requires PHP: 7.4 -
appful-app/trunk/includes/api/Api.php
r3027388 r3069513 9 9 10 10 class Api { 11 private ReqHandler $api_request_handler;11 private ReqHandler $api_request_handler; 12 12 13 public function __construct( ReqHandler $api_request_handler ) {14 $this->api_request_handler = $api_request_handler;15 }13 public function __construct( ReqHandler $api_request_handler ) { 14 $this->api_request_handler = $api_request_handler; 15 } 16 16 17 public function init() {18 add_action(19 "wp",20 function () {21 $this->handle_request();22 },23 10,24 );25 }17 public function init() { 18 add_action( 19 "wp", 20 function () { 21 $this->handle_request(); 22 }, 23 10, 24 ); 25 } 26 26 27 private function handle_request() {28 if ( get_query_var( "appful", 0 ) != 0 ) {29 $action = get_query_var( "appful_action" );30 Logger::debug( "Handling WP Plugin request from Appful, action: " . $action );27 private function handle_request() { 28 if ( get_query_var( "appful", 0 ) != 0 ) { 29 $action = get_query_var( "appful_action" ); 30 Logger::debug( "Handling WP Plugin request from Appful, action: " . $action ); 31 31 32 $request = PluginRequest::plugin_request()->action( $action );33 if ( $request->requires_auth() ) {34 $token= $this->parse_token();35 $request = $request->token( $token );36 }37 $response = $this->api_request_handler->handle_request( $request );32 $request = PluginRequest::plugin_request()->action( $action ); 33 if ( $request->requires_auth() ) { 34 $token = $this->parse_token(); 35 $request = $request->token( $token ); 36 } 37 $response = $this->api_request_handler->handle_request( $request ); 38 38 39 $this->respond( $response );40 }41 }39 $this->respond( $response ); 40 } 41 } 42 42 43 private function parse_token(): ?string {44 $token = null;43 private function parse_token(): ?string { 44 $token = null; 45 45 46 $header = $_SERVER['HTTP_AUTHORIZATION'] ?? $_SERVER['REDIRECT_HTTP_AUTHORIZATION'] ?? null;47 if ( $header != null && 0 === stripos( $header, "Bearer " ) ) {48 $token = sanitize_text_field( substr( $header, strlen( "Bearer " ) ) );49 }46 $header = $_SERVER['HTTP_AUTHORIZATION'] ?? $_SERVER['REDIRECT_HTTP_AUTHORIZATION'] ?? null; 47 if ( $header != null && 0 === stripos( $header, "Bearer " ) ) { 48 $token = sanitize_text_field( substr( $header, strlen( "Bearer " ) ) ); 49 } 50 50 51 if ( $token == null ) {52 $this->unauthorized();53 }51 if ( $token == null ) { 52 $this->unauthorized(); 53 } 54 54 55 $current_session_id = ClientTokenManager::getToken();56 if ( $current_session_id == null ) {57 $this->notAvailable();58 }59 if ( strcmp( $token, $current_session_id ) != 0 ) {60 $this->unauthorized();61 }55 $current_session_id = ClientTokenManager::getToken(); 56 if ( $current_session_id == null ) { 57 $this->notAvailable(); 58 } 59 if ( strcmp( $token, $current_session_id ) != 0 ) { 60 $this->unauthorized(); 61 } 62 62 63 return $token;64 }63 return $token; 64 } 65 65 66 private function unauthorized() {67 $this->respond( PluginResponse::plugin_response()->status( 401 ) );68 }66 private function unauthorized() { 67 $this->respond( PluginResponse::plugin_response()->status( 401 ) ); 68 } 69 69 70 private function respond( PluginResponse $response ) { 71 ob_end_clean(); 72 if ( $response->get_encoded() ) { 73 header( "Content-Type: application/json" ); 74 } 75 status_header( $response->get_status() ); 76 exit( $response->get_body() ); 77 } 70 private function respond( PluginResponse $response ) { 71 while (ob_get_level() > 0) { 72 ob_end_clean(); 73 } 74 if ( $response->get_encoded() ) { 75 header( "Content-Type: application/json" ); 76 } 77 status_header( $response->get_status() ); 78 exit( $response->get_body() ); 79 } 78 80 79 private function notAvailable() {80 $this->respond( PluginResponse::plugin_response()->status( 503 ) );81 }81 private function notAvailable() { 82 $this->respond( PluginResponse::plugin_response()->status( 503 ) ); 83 } 82 84 } -
appful-app/trunk/includes/api/ReqHandler.php
r3043568 r3069513 74 74 new GetPageContentsRequestHandler( $use_case_manager->pages()->get_page_contents_by_id_use_case() ), 75 75 new PullLocalPageContentRequestHandler( $use_case_manager->pages()->get_local_page_content_by_id_use_case() ), 76 new GetPageContentRequestHandler( $use_case_manager->pages()-> get_page_contents_by_id_use_case() ),76 new GetPageContentRequestHandler( $use_case_manager->pages()->pull_local_page_content_use_case() ), 77 77 new PointOfInterestSyncRequestHandler( $use_case_manager->points_of_interest()->get_sync_points_of_interest_use_case() ), 78 78 new GetPointsOfInterestRequestHandler( $use_case_manager->points_of_interest()->get_get_points_of_interest_by_id_use_case() ), -
appful-app/trunk/includes/api/handlers/page/GetPageContentRequestHandler.php
r3018629 r3069513 9 9 use AppfulPlugin\Api\Responses\PluginResponse; 10 10 use AppfulPlugin\Helper\Logger; 11 use AppfulPlugin\UseCases\Page\ GetPageContentsByIdUseCase;11 use AppfulPlugin\UseCases\Page\PullLocalPageContentUseCase; 12 12 13 13 class GetPageContentRequestHandler implements RequestHandler { 14 private GetPageContentsByIdUseCase $get_page_contents_by_id_use_case;14 private PullLocalPageContentUseCase $pull_local_page_content_use_case; 15 15 16 public function __construct(17 GetPageContentsByIdUseCase $get_page_contents_by_id_use_case18 ) {19 $this->get_page_contents_by_id_use_case = $get_page_contents_by_id_use_case;20 }16 public function __construct( 17 PullLocalPageContentUseCase $pull_local_page_content_use_case 18 ) { 19 $this->pull_local_page_content_use_case = $pull_local_page_content_use_case; 20 } 21 21 22 public function can_handle_request( PluginRequest $request ): bool {23 return $request->get_action() == Endpoints::$GET_PAGE_CONTENT_HOOK;24 }22 public function can_handle_request( PluginRequest $request ): bool { 23 return $request->get_action() == Endpoints::$GET_PAGE_CONTENT_HOOK; 24 } 25 25 26 public function handle_request( PluginRequest $request ): PluginResponse {27 Logger::debug( "Found handler for Appful request" );26 public function handle_request( PluginRequest $request ): PluginResponse { 27 Logger::debug( "Found handler for Appful request" ); 28 28 29 if ( !isset( $_GET['id'] ) ) {30 return PluginResponse::plugin_response()->status( 400 );31 }29 if ( !isset( $_GET['id'] ) ) { 30 return PluginResponse::plugin_response()->status( 400 ); 31 } 32 32 33 $cleaned_id = absint( sanitize_text_field( $_GET['id'] ) );33 $cleaned_id = absint( sanitize_text_field( $_GET['id'] ) ); 34 34 35 $request_user_id = $_GET['user_id'] ?? null;36 $cleaned_user_id = null;37 if ( $request_user_id ) {38 $cleaned_user_id = absint( sanitize_text_field( $request_user_id ) );39 }35 $request_user_id = $_GET['user_id'] ?? null; 36 $cleaned_user_id = null; 37 if ( $request_user_id ) { 38 $cleaned_user_id = absint( sanitize_text_field( $request_user_id ) ); 39 } 40 40 41 Logger::debug( "Sending page content for id " . json_encode( $cleaned_id ) . " for user " . $request_user_id );41 Logger::debug( "Sending page content for id " . json_encode( $cleaned_id ) . " for user " . $request_user_id ); 42 42 43 $page_contents = $this->get_page_contents_by_id_use_case->invoke( [ $cleaned_id ], $cleaned_user_id );44 if ( count( $page_contents ) == 1) {45 return PluginResponse::plugin_response()->body( PageContentMapper::to_dto( $page_contents[0]) );46 } else {47 return PluginResponse::plugin_response()->status( 404 );48 }49 }43 $page_content = $this->pull_local_page_content_use_case->invoke( $cleaned_id, $cleaned_user_id ); 44 if ( $page_content != null ) { 45 return PluginResponse::plugin_response()->body( PageContentMapper::to_dto( $page_content ) ); 46 } else { 47 return PluginResponse::plugin_response()->status( 404 ); 48 } 49 } 50 50 } -
appful-app/trunk/includes/use_cases/PullLocalPostContentUseCase.php
r3018629 r3069513 10 10 11 11 class PullLocalPostContentUseCase { 12 private SelfClient $self_client;12 private SelfClient $self_client; 13 13 14 public function __construct( SelfClient $self_client ) {15 $this->self_client = $self_client;16 }14 public function __construct( SelfClient $self_client ) { 15 $this->self_client = $self_client; 16 } 17 17 18 public function invoke( int $id ): ?PostContent {19 Logger::debug( "Pulling local post content for id: " . $id );18 public function invoke( int $id ): ?PostContent { 19 Logger::debug( "Pulling local post content for id: " . $id ); 20 20 21 $request_params = [];21 $request_params = []; 22 22 23 $request_params['id'] = $id;24 if ( isset( $_REQUEST['debug'] ) && $_REQUEST['debug'] == "1" ) {25 $request_params['debug'] = "1";26 }23 $request_params['id'] = $id; 24 if ( isset( $_REQUEST['debug'] ) && $_REQUEST['debug'] == "1" ) { 25 $request_params['debug'] = "1"; 26 } 27 27 28 $request= HttpRequest::backend_request()->method( "GET" )->path( "/" . Endpoints::$GET_POST_CONTENT_LOCAL )->params( $request_params );29 $response = $this->self_client->send_request( $request );28 $request = HttpRequest::backend_request()->method( "GET" )->path( "/" . Endpoints::$GET_POST_CONTENT_LOCAL )->params( $request_params ); 29 $response = $this->self_client->send_request( $request ); 30 30 31 if ( $response->get_status() != 200 ) {32 return null;33 }31 if ( $response->get_status() != 200 ) { 32 return null; 33 } 34 34 35 $post_content_dto = $response->get_body();35 $post_content_dto = $response->get_body(); 36 36 37 return PostContent::postContent() 38 ->id( absint( $post_content_dto["id"] ) ) 39 ->content( $post_content_dto["content"] ) 40 ->head( $post_content_dto["head"] ) 41 ->footer( $post_content_dto["footer"] ) 42 ->body_class( $post_content_dto["body_class"] ); 43 } 37 if ( $post_content_dto == null ) { 38 return null; 39 } 40 41 return PostContent::postContent() 42 ->id( absint( $post_content_dto["id"] ) ) 43 ->content( $post_content_dto["content"] ) 44 ->head( $post_content_dto["head"] ) 45 ->footer( $post_content_dto["footer"] ) 46 ->body_class( $post_content_dto["body_class"] ); 47 } 44 48 } -
appful-app/trunk/includes/use_cases/page/GetPageContentsByIdUseCase.php
r2978062 r3069513 4 4 5 5 use AppfulPlugin\Domain\PageContent; 6 use AppfulPlugin\Wp\WPPageManager;7 6 8 7 class GetPageContentsByIdUseCase { 9 private PullLocalPageContentUseCase $pull_local_page_content_use_case;8 private PullLocalPageContentUseCase $pull_local_page_content_use_case; 10 9 11 public function __construct( PullLocalPageContentUseCase $pull_local_page_content_use_case ) {12 $this->pull_local_page_content_use_case = $pull_local_page_content_use_case;13 }10 public function __construct( PullLocalPageContentUseCase $pull_local_page_content_use_case ) { 11 $this->pull_local_page_content_use_case = $pull_local_page_content_use_case; 12 } 14 13 15 /**16 * @param int[] $ids17 *18 * @return PageContent[]19 */20 public function invoke( array $ids, ?int $user_id = null ): array {21 $page_contents = [];14 /** 15 * @param int[] $ids 16 * 17 * @return PageContent[] 18 */ 19 public function invoke( array $ids, ?int $user_id = null ): array { 20 $page_contents = []; 22 21 23 $page_contents = WPPageManager::get_page_contents_by_ids($ids, $user_id); 24 // Uncomment if for some reason fetching all pages at once should not work 25 // foreach ( $ids as $page_id ) { 26 // $response = $this->pull_local_page_content_use_case->invoke( $page_id, $user_id ); 27 // if ( $response != null ) { 28 // $page_contents[] = $response; 29 // } 30 // } 22 foreach ($ids as $page_id) { 23 $response = $this->pull_local_page_content_use_case->invoke( $page_id, $user_id ); 24 if ( $response != null ) { 25 $page_contents[] = $response; 26 } 27 } 31 28 32 return $page_contents;33 }29 return $page_contents; 30 } 34 31 } -
appful-app/trunk/includes/use_cases/page/PullLocalPageContentUseCase.php
r3018629 r3069513 10 10 11 11 class PullLocalPageContentUseCase { 12 private SelfClient $self_client;12 private SelfClient $self_client; 13 13 14 public function __construct( SelfClient $self_client ) {15 $this->self_client = $self_client;16 }14 public function __construct( SelfClient $self_client ) { 15 $this->self_client = $self_client; 16 } 17 17 18 public function invoke( int $id, ?int $user_id = null ): ?PageContent {19 Logger::debug( "Pulling local page content for id " . $id . " for user " . $user_id );18 public function invoke( int $id, ?int $user_id = null ): ?PageContent { 19 Logger::debug( "Pulling local page content for id " . $id . " for user " . $user_id ); 20 20 21 $request_params = [];21 $request_params = []; 22 22 23 $request_params['id'] = $id;24 if ( isset( $_REQUEST['debug'] ) && $_REQUEST['debug'] == "1" ) {25 $request_params['debug'] = "1";26 }27 if ( $user_id ) {28 $request_params['user_id'] = $user_id;29 }23 $request_params['id'] = $id; 24 if ( isset( $_REQUEST['debug'] ) && $_REQUEST['debug'] == "1" ) { 25 $request_params['debug'] = "1"; 26 } 27 if ( $user_id ) { 28 $request_params['user_id'] = $user_id; 29 } 30 30 31 $request= HttpRequest::backend_request()->method( "GET" )->path( "/" . Endpoints::$GET_PAGE_CONTENT_LOCAL )->params( $request_params );32 $response = $this->self_client->send_request( $request );31 $request = HttpRequest::backend_request()->method( "GET" )->path( "/" . Endpoints::$GET_PAGE_CONTENT_LOCAL )->params( $request_params ); 32 $response = $this->self_client->send_request( $request ); 33 33 34 if ( $response->get_status() != 200 ) {35 return null;36 }34 if ( $response->get_status() != 200 ) { 35 return null; 36 } 37 37 38 $page_content_dto = $response->get_body();38 $page_content_dto = $response->get_body(); 39 39 40 return PageContent::pageContent() 41 ->id( absint( $page_content_dto["id"] ) ) 42 ->content( $page_content_dto["content"] ) 43 ->head( $page_content_dto["head"] ) 44 ->footer( $page_content_dto["footer"] ) 45 ->body_class( $page_content_dto["body_class"] ); 46 } 40 if ( $page_content_dto == null ) { 41 return null; 42 } 43 44 return PageContent::pageContent() 45 ->id( absint( $page_content_dto["id"] ) ) 46 ->content( $page_content_dto["content"] ) 47 ->head( $page_content_dto["head"] ) 48 ->footer( $page_content_dto["footer"] ) 49 ->body_class( $page_content_dto["body_class"] ); 50 } 47 51 } -
appful-app/trunk/includes/wp/WPAttachmentManager.php
r3019874 r3069513 96 96 ]; 97 97 98 $all_attachments = get_posts( $args ); 98 $all_attachments = LanguageHelper::for_each_language( function () use ( $args ) { 99 return get_posts( $args ); 100 } ); 99 101 100 102 $all_attachments = array_values( -
appful-app/trunk/includes/wp/WPCommentDatabaseManager.php
r3019874 r3069513 25 25 global $wpdb; 26 26 27 $query = $wpdb->prepare( "SELECT COUNT(*) FROM $wpdb->comments AS comment" ); 28 29 return $wpdb->get_var( $query ); 27 return $wpdb->get_var( "SELECT COUNT(*) FROM $wpdb->comments" ); 30 28 } 31 29 } -
appful-app/trunk/includes/wp/WPCommentManager.php
r3019874 r3069513 12 12 13 13 class WPCommentManager { 14 public static function get_comment_count(): int {15 return WPCommentDatabaseManager::get_count();16 }14 public static function get_comment_count(): int { 15 return WPCommentDatabaseManager::get_count(); 16 } 17 17 18 /** @return SyncItem[] */19 public static function get_comment_sync_items( int $offset, int $count ): array {20 return WPCommentDatabaseManager::get_sync_items( $count, $offset );21 }18 /** @return SyncItem[] */ 19 public static function get_comment_sync_items( int $offset, int $count ): array { 20 return WPCommentDatabaseManager::get_sync_items( $count, $offset ); 21 } 22 22 23 /**24 * @param int[] $ids25 *26 * @return Comment[]27 */28 public static function get_comments_by_id( array $ids ): array {29 $args = [30 "status"=> array_keys( get_comment_statuses() ),31 "comment__in" => $ids32 ];23 /** 24 * @param int[] $ids 25 * 26 * @return Comment[] 27 */ 28 public static function get_comments_by_id( array $ids ): array { 29 $args = [ 30 "status" => array_keys( get_comment_statuses() ), 31 "comment__in" => $ids 32 ]; 33 33 34 $all_comments = LanguageHelper::for_each_language( function () use ( $args ) {35 return get_comments( $args );36 } );34 $all_comments = LanguageHelper::for_each_language( function () use ( $args ) { 35 return get_comments( $args ); 36 } ); 37 37 38 return array_map(39 function ( WP_Comment $comment ) {40 return CommentMapper::to_domain( $comment );41 },42 $all_comments43 );44 }38 return array_map( 39 function ( WP_Comment $comment ) { 40 return CommentMapper::to_domain( $comment ); 41 }, 42 $all_comments 43 ); 44 } 45 45 46 public static function create_comment( CreateCommentRequest $request ): ?Comment {47 $commentData = [48 'comment_author'=> $request->get_username(), // The name of the author of the comment.49 'comment_author_email' => $request->get_email(), // The email address of the $comment_author.50 'comment_content'=> $request->get_content(), // The content of the comment.51 'comment_post_ID'=> $request->get_post_id(), // ID of the post that relates to the comment.52 'comment_parent'=> $request->get_parent_id(), // ID of this comment's parent, if any.53 ];46 public static function create_comment( CreateCommentRequest $request ): ?Comment { 47 $commentData = [ 48 'comment_author' => $request->get_username(), // The name of the author of the comment. 49 'comment_author_email' => $request->get_email(), // The email address of the $comment_author. 50 'comment_content' => $request->get_content(), // The content of the comment. 51 'comment_post_ID' => $request->get_post_id(), // ID of the post that relates to the comment. 52 'comment_parent' => $request->get_parent_id(), // ID of this comment's parent, if any. 53 ]; 54 54 55 $commentId = wp_insert_comment( $commentData );55 $commentId = wp_insert_comment( $commentData ); 56 56 57 if ( $commentId === false ) {58 Logger::error( "Insert comment failed" );57 if ( $commentId === false ) { 58 Logger::error( "Insert comment failed" ); 59 59 60 return null;61 }60 return null; 61 } 62 62 63 $comment = get_comment( $commentId );63 $comment = get_comment( $commentId ); 64 64 65 if ( !$comment instanceof WP_Comment ) {66 Logger::error( "Getting comment failed!" );65 if ( !$comment instanceof WP_Comment ) { 66 Logger::error( "Getting comment failed!" ); 67 67 68 return null;69 }68 return null; 69 } 70 70 71 return CommentMapper::to_domain( $comment );72 }71 return CommentMapper::to_domain( $comment ); 72 } 73 73 } -
appful-app/trunk/includes/wp/WPPageManager.php
r3019874 r3069513 11 11 12 12 class WPPageManager { 13 public static function get_page_permalink( WP_Post $page ): ?string {14 return get_permalink( $page );15 }13 public static function get_page_permalink( WP_Post $page ): ?string { 14 return get_permalink( $page ); 15 } 16 16 17 public static function get_page_language( int $page_id ): string {18 return LanguageHelper::get_page_language( $page_id );19 }17 public static function get_page_language( int $page_id ): string { 18 return LanguageHelper::get_page_language( $page_id ); 19 } 20 20 21 public static function get_page_count(): int {22 return WPPostDatabaseManager::get_count_for_type( "page" );23 }21 public static function get_page_count(): int { 22 return WPPostDatabaseManager::get_count_for_type( "page" ); 23 } 24 24 25 /** @return SyncItem[] */26 public static function get_page_sync_items( int $offset, int $count ): array {27 return WPPostDatabaseManager::get_sync_items_for_type( "page", $count, $offset );28 }25 /** @return SyncItem[] */ 26 public static function get_page_sync_items( int $offset, int $count ): array { 27 return WPPostDatabaseManager::get_sync_items_for_type( "page", $count, $offset ); 28 } 29 29 30 /** 31 * @param int[] $ids 32 * 33 * @return Page[] 34 */ 35 public static function get_pages_by_id( array $ids ): array { 36 $args = [ 37 "numberposts" => - 1, 38 "post_status" => self::get_allowed_page_stati() 39 ]; 30 /** 31 * @param int[] $ids 32 * 33 * @return Page[] 34 */ 35 public static function get_pages_by_id( array $ids ): array { 36 $args = [ 37 "numberposts" => -1, 38 "include" => $ids, 39 "post_status" => self::get_allowed_page_stati() 40 ]; 40 41 41 $all_pages = get_pages( $args ); 42 $all_pages = LanguageHelper::for_each_language( function () use ( $args ) { 43 return get_pages( $args ); 44 } ); 42 45 43 $all_pages = array_values(44 array_filter( $all_pages, function ( WP_Post $page ) use ( $ids ) {45 return in_array( $page->ID, $ids );46 } )47 );46 $all_pages = array_values( 47 array_filter( $all_pages, function ( WP_Post $page ) use ( $ids ) { 48 return in_array( $page->ID, $ids ); 49 } ) 50 ); 48 51 49 return array_map(50 function ( WP_Post $page ) {51 return PageMapper::to_domain( $page );52 },53 $all_pages54 );55 }52 return array_map( 53 function ( WP_Post $page ) { 54 return PageMapper::to_domain( $page ); 55 }, 56 $all_pages 57 ); 58 } 56 59 57 public static function get_page_content_by_id( int $id, ?int $user_id = null ): ?PageContent { 58 global $wp_query; 60 public static function get_page_content_by_id( int $id, ?int $user_id = null ): ?PageContent { 61 if ( $user_id ) { 62 wp_set_current_user( $user_id ); 63 } 59 64 60 if ( $user_id ) { 61 wp_set_current_user( $user_id ); 62 } 65 $args = [ 66 "posts_per_page" => 1, 67 "post_type" => "page", 68 "p" => $id, 69 "post_status" => self::get_allowed_page_stati() 70 ]; 63 71 64 $args = [ 65 "posts_per_page" => 1, 66 "post_type" => "page", 67 "p" => $id, 68 "post_status" => self::get_allowed_page_stati() 69 ]; 72 $page_language = self::get_page_language( $id ); 73 return LanguageHelper::for_language( 74 $page_language, 75 function () use ( $args ) { 76 global $wp_query; 70 77 71 $wp_query = new \WP_Query( $args);78 do_action( 'template_redirect' ); 72 79 73 do_action( 'template_redirect');80 $wp_query = new \WP_Query( $args ); 74 81 75 if ( have_posts() ) {76 the_post();82 if ( have_posts() ) { 83 the_post(); 77 84 78 ob_start();79 wp_head();80 $head = ob_get_clean();85 ob_start(); 86 wp_head(); 87 $head = ob_get_clean(); 81 88 82 ob_start();83 the_content();84 $content = ob_get_clean();89 ob_start(); 90 the_content(); 91 $content = ob_get_clean(); 85 92 86 ob_start();87 wp_footer();88 $footer = ob_get_clean();93 ob_start(); 94 wp_footer(); 95 $footer = ob_get_clean(); 89 96 90 ob_start();91 body_class();92 $body_class = ob_get_clean();97 ob_start(); 98 body_class(); 99 $body_class = ob_get_clean(); 93 100 94 wp_reset_postdata();101 wp_reset_postdata(); 95 102 96 return PageContent::pageContent()97 ->id( get_the_ID() )98 ->content( $content )99 ->head( $head )100 ->footer( $footer )101 ->body_class( $body_class );102 }103 return PageContent::pageContent() 104 ->id( get_the_ID() ) 105 ->content( $content ) 106 ->head( $head ) 107 ->footer( $footer ) 108 ->body_class( $body_class ); 109 } 103 110 104 return null; 105 } 111 return null; 112 } 113 ); 114 } 106 115 107 public static function get_page_contents_by_ids( array $ids, ?int $user_id = null ): array { 108 global $wp_query; 109 110 if ( $user_id ) { 111 wp_set_current_user( $user_id ); 112 } 113 114 $args = [ 115 "posts_per_page" => - 1, 116 "post_type" => "page", 117 "post__in" => $ids, 118 "post_status" => self::get_allowed_page_stati() 119 ]; 120 121 $wp_query = new \WP_Query( $args ); 122 123 do_action( 'template_redirect' ); 124 125 $pages = []; 126 127 if ( have_posts() ) { 128 ob_start(); 129 wp_head(); 130 $head = ob_get_clean(); 131 132 ob_start(); 133 body_class(); 134 $body_class = ob_get_clean(); 135 136 while ( have_posts() ) { 137 the_post(); 138 139 ob_start(); 140 the_content(); 141 $content = ob_get_clean(); 142 143 $pages[] = PageContent::pageContent() 144 ->id( get_the_ID() ) 145 ->content( $content ) 146 ->head( $head ) 147 ->footer( "" ) 148 ->body_class( $body_class ); 149 } 150 151 ob_start(); 152 wp_footer(); 153 $footer = ob_get_clean(); 154 155 $pages = array_map( function ( PageContent $content ) use ( $footer ) { 156 return $content->footer( $footer ); 157 }, $pages ); 158 } 159 160 wp_reset_postdata(); 161 162 return $pages; 163 } 164 165 /** 166 * @return string[] 167 */ 168 private static function get_allowed_page_stati(): array { 169 return array_filter( get_post_stati(), function ( string $status ) { 170 return $status != "auto-draft"; 171 } ); 172 } 116 /** 117 * @return string[] 118 */ 119 private static function get_allowed_page_stati(): array { 120 return array_filter( get_post_stati(), function ( string $status ) { 121 return $status != "auto-draft"; 122 } ); 123 } 173 124 } -
appful-app/trunk/includes/wp/WPPostManager.php
r3043568 r3069513 131 131 132 132 public static function get_post_content_by_id( int $id ): ?PostContent { 133 global $wp_query;134 135 133 $args = [ 136 134 "post_type" => "post", … … 139 137 ]; 140 138 141 $wp_query = new \WP_Query( $args ); 142 143 self::setup_wp_call(); 144 145 if ( have_posts() ) { 146 the_post(); 147 148 Logger::debug( "Getting head!" ); 149 $head = self::get_data_code( 'wp_head' ); 150 Logger::debug( "Getting content!" ); 151 $content = self::get_data_code( 'the_content' ); 152 Logger::debug( "Getting footer!" ); 153 $footer = self::get_data_code( 'wp_footer' ); 154 Logger::debug( "Getting body classes!" ); 155 $body_class = self::get_data_code( 'body_class' ); 156 157 wp_reset_postdata(); 158 159 return PostContent::postContent() 160 ->id( get_the_ID() ) 161 ->content( $content ) 162 ->head( $head ) 163 ->footer( $footer ) 164 ->body_class( $body_class ); 165 } 166 167 return null; 139 $post_language = self::get_post_language( $id ); 140 return LanguageHelper::for_language( 141 $post_language, 142 function() use ( $args ) { 143 global $wp_query; 144 145 $wp_query = new \WP_Query( $args ); 146 147 self::setup_wp_call(); 148 149 if ( have_posts() ) { 150 the_post(); 151 152 Logger::debug( "Getting head!" ); 153 $head = self::get_data_code( 'wp_head' ); 154 Logger::debug( "Getting content!" ); 155 $content = self::get_data_code( 'the_content' ); 156 Logger::debug( "Getting footer!" ); 157 $footer = self::get_data_code( 'wp_footer' ); 158 Logger::debug( "Getting body classes!" ); 159 $body_class = self::get_data_code( 'body_class' ); 160 161 wp_reset_postdata(); 162 163 return PostContent::postContent() 164 ->id( get_the_ID() ) 165 ->content( $content ) 166 ->head( $head ) 167 ->footer( $footer ) 168 ->body_class( $body_class ); 169 } 170 171 return null; 172 } 173 ); 168 174 } 169 175 -
appful-app/trunk/includes/wp/WPUserDatabaseManager.php
r3019874 r3069513 25 25 global $wpdb; 26 26 27 $query = $wpdb->prepare( "SELECT COUNT(*) FROM $wpdb->users AS user" ); 28 29 return $wpdb->get_var( $query ); 27 return $wpdb->get_var( "SELECT COUNT(*) FROM $wpdb->users" ); 30 28 } 31 29 } -
appful-app/trunk/lib/vendor/composer/installed.php
r3043568 r3069513 4 4 'pretty_version' => 'dev-main', 5 5 'version' => 'dev-main', 6 'reference' => ' 6f0d2c0f0f21f2ca2550d7a07d32827d416dc20c',6 'reference' => '455447cb78389ae33d8dd91f6fcc71f5b36b9f5a', 7 7 'type' => 'library', 8 8 'install_path' => __DIR__ . '/../../', … … 14 14 'pretty_version' => 'dev-main', 15 15 'version' => 'dev-main', 16 'reference' => ' 6f0d2c0f0f21f2ca2550d7a07d32827d416dc20c',16 'reference' => '455447cb78389ae33d8dd91f6fcc71f5b36b9f5a', 17 17 'type' => 'library', 18 18 'install_path' => __DIR__ . '/../../', -
appful-app/trunk/readme.txt
r3053321 r3069513 6 6 Tested up to: 6.4 7 7 Requires PHP: 7.4 8 Stable tag: 3.1.2 48 Stable tag: 3.1.25 9 9 License: GPLv2 or later 10 10 License URI: http://www.gnu.org/licenses/gpl-2.0.html
Note: See TracChangeset
for help on using the changeset viewer.