diff --git a/contracts/facets/steez/Collection.sol b/contracts/facets/steez/Collection.sol new file mode 100644 index 00000000..67d6e5dd --- /dev/null +++ b/contracts/facets/steez/Collection.sol @@ -0,0 +1,3 @@ +// SPDX-License-Identifier: Apache-2.0 +// Copyright (c) 2023 Edmund Berkmann +pragma solidity ^0.8.10; diff --git a/server/api/controllers/bazaar/SummaryController.js b/server/api/controllers/bazaar/analyticController.js similarity index 100% rename from server/api/controllers/bazaar/SummaryController.js rename to server/api/controllers/bazaar/analyticController.js diff --git a/server/api/controllers/bazaar/AuctionsController.js b/server/api/controllers/bazaar/auctionController.js similarity index 100% rename from server/api/controllers/bazaar/AuctionsController.js rename to server/api/controllers/bazaar/auctionController.js diff --git a/server/api/controllers/bazaar/BlogsController.js b/server/api/controllers/bazaar/blogController.js similarity index 100% rename from server/api/controllers/bazaar/BlogsController.js rename to server/api/controllers/bazaar/blogController.js diff --git a/server/api/controllers/bazaar/categoryController.js b/server/api/controllers/bazaar/categoryController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/bazaar/complianceController.js b/server/api/controllers/bazaar/complianceController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/bazaar/TopCreatorsController.js b/server/api/controllers/bazaar/highlightController.js similarity index 100% rename from server/api/controllers/bazaar/TopCreatorsController.js rename to server/api/controllers/bazaar/highlightController.js diff --git a/server/api/controllers/bazaar/historyController.js b/server/api/controllers/bazaar/historyController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/bazaar/inventoryController.js b/server/api/controllers/bazaar/inventoryController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/bazaar/ListingsController.js b/server/api/controllers/bazaar/listingController.js similarity index 100% rename from server/api/controllers/bazaar/ListingsController.js rename to server/api/controllers/bazaar/listingController.js diff --git a/server/api/controllers/bazaar/recommendationController.js b/server/api/controllers/bazaar/recommendationController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/bazaar/reviewController.js b/server/api/controllers/bazaar/reviewController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/bazaar/FeesController.js b/server/api/controllers/bazaar/royaltyController.js similarity index 100% rename from server/api/controllers/bazaar/FeesController.js rename to server/api/controllers/bazaar/royaltyController.js diff --git a/server/api/controllers/bazaar/FeaturedTokensController.js b/server/api/controllers/bazaar/steezBazaarController.js similarity index 100% rename from server/api/controllers/bazaar/FeaturedTokensController.js rename to server/api/controllers/bazaar/steezBazaarController.js diff --git a/server/api/controllers/bazaar/TradeController.js b/server/api/controllers/bazaar/swapController.js similarity index 100% rename from server/api/controllers/bazaar/TradeController.js rename to server/api/controllers/bazaar/swapController.js diff --git a/server/api/controllers/common/admin/contentControlController.js b/server/api/controllers/common/admin/contentControlController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/common/admin/moderationController.js b/server/api/controllers/common/admin/moderationController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/common/admin/systemSettingController.js b/server/api/controllers/common/admin/systemSettingController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/common/analytics/adminReportController.js b/server/api/controllers/common/analytics/adminReportController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/common/analytics/engagementController.js b/server/api/controllers/common/analytics/engagementController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/common/analytics/featureUsageController.js b/server/api/controllers/common/analytics/featureUsageController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/auth/authRoutes.js b/server/api/controllers/common/auth/authController.js similarity index 100% rename from server/api/routes/auth/authRoutes.js rename to server/api/controllers/common/auth/authController.js diff --git a/server/api/controllers/common/help/FAQController.js b/server/api/controllers/common/help/FAQController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/common/help/helpController.js b/server/api/controllers/common/help/helpController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/common/help/ticketController.js b/server/api/controllers/common/help/ticketController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/common/notifications/eventController.js b/server/api/controllers/common/notifications/eventController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/common/notifications/notificationController.js b/server/api/controllers/common/notifications/notificationController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/common/notifications/updateController.js b/server/api/controllers/common/notifications/updateController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/common/payments/cryptoController.js b/server/api/controllers/common/payments/cryptoController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/common/payments/paymentController.js b/server/api/controllers/common/payments/paymentController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/common/payments/walletController.js b/server/api/controllers/common/payments/walletController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/common/userSettings/customisationController.js b/server/api/controllers/common/userSettings/customisationController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/common/userSettings/preferencesController.js b/server/api/controllers/common/userSettings/preferencesController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/common/userSettings/settingsController.js b/server/api/controllers/common/userSettings/settingsController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/common/utils/commonController.js b/server/api/controllers/common/utils/commonController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/common/utils/filterController.js b/server/api/controllers/common/utils/filterController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/common/utils/searchController.js b/server/api/controllers/common/utils/searchController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/common/utils/sortController.js b/server/api/controllers/common/utils/sortController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/GovernanceController.js b/server/api/controllers/gallery/GovernanceController.js deleted file mode 100644 index 46f0000c..00000000 --- a/server/api/controllers/gallery/GovernanceController.js +++ /dev/null @@ -1,11 +0,0 @@ -exports.vote = async (req, res) => { - // Code to cast a vote -}; - -exports.getProposals = async (req, res) => { - // Code to fetch governance proposals -}; - -exports.createProposal = async (req, res) => { - // Code to create a new governance proposal -}; \ No newline at end of file diff --git a/server/api/controllers/gallery/PortfolioController.js b/server/api/controllers/gallery/PortfolioController.js deleted file mode 100644 index 3357d205..00000000 --- a/server/api/controllers/gallery/PortfolioController.js +++ /dev/null @@ -1,19 +0,0 @@ -exports.createPortfolio = async (req, res) => { - // Code to create a new portfolio for a user -}; - -exports.getPortfolioDetails = async (req, res) => { - // Code to retrieve details of a user's portfolio -}; - -exports.updatePortfolio = async (req, res) => { - // Code to update details of a user's portfolio -}; - -exports.deletePortfolio = async (req, res) => { - // Code to delete a user's portfolio -}; - -exports.getAllPortfolios = async (req, res) => { - // Code to retrieve all portfolios for a user -}; \ No newline at end of file diff --git a/server/api/controllers/gallery/analytics/analyticsDataController.js b/server/api/controllers/gallery/analytics/analyticsDataController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/analytics/performanceReportController.js b/server/api/controllers/gallery/analytics/performanceReportController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/collection/collectionDisplayController.js b/server/api/controllers/gallery/collection/collectionDisplayController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/collection/collectionManagementController.js b/server/api/controllers/gallery/collection/collectionManagementController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/collection/collectionTradeController.js b/server/api/controllers/gallery/collection/collectionTradeController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/engagement/communitySharingController.js b/server/api/controllers/gallery/engagement/communitySharingController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/engagement/contentInteractionController.js b/server/api/controllers/gallery/engagement/contentInteractionController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/engagement/userPreferencesController.js b/server/api/controllers/gallery/engagement/userPreferencesController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/management/collectionDeletionController.js b/server/api/controllers/gallery/management/collectionDeletionController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/management/collectionRetrievalController.js b/server/api/controllers/gallery/management/collectionRetrievalController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/management/collectionUpdateController.js b/server/api/controllers/gallery/management/collectionUpdateController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/management/collectionUploadController.js b/server/api/controllers/gallery/management/collectionUploadController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/management/metadataUpdateController.js b/server/api/controllers/gallery/management/metadataUpdateController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/management/rightsAllocationController.js b/server/api/controllers/gallery/management/rightsAllocationController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/management/steezDeletionController.js b/server/api/controllers/gallery/management/steezDeletionController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/management/steezRetrievalController.js b/server/api/controllers/gallery/management/steezRetrievalController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/management/steezUpdateController.js b/server/api/controllers/gallery/management/steezUpdateController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/management/steezUploadController.js b/server/api/controllers/gallery/management/steezUploadController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/stakingRewards/rewardCalculationController.js b/server/api/controllers/gallery/stakingRewards/rewardCalculationController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/StakingController.js b/server/api/controllers/gallery/stakingRewards/stakeManagementController.js similarity index 100% rename from server/api/controllers/gallery/StakingController.js rename to server/api/controllers/gallery/stakingRewards/stakeManagementController.js diff --git a/server/api/controllers/gallery/stakingRewards/stakeRewardsController.js b/server/api/controllers/gallery/stakingRewards/stakeRewardsController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/steezInteraction/steezDisplayController.js b/server/api/controllers/gallery/steezInteraction/steezDisplayController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/UserWalletController.js b/server/api/controllers/gallery/steezInteraction/steezManagementController.js similarity index 100% rename from server/api/controllers/gallery/UserWalletController.js rename to server/api/controllers/gallery/steezInteraction/steezManagementController.js diff --git a/server/api/controllers/gallery/steezInteraction/steezTradeController.js b/server/api/controllers/gallery/steezInteraction/steezTradeController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/transactions/conversionRateController.js b/server/api/controllers/gallery/transactions/conversionRateController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/gallery/DepositController.js b/server/api/controllers/gallery/transactions/depositController.js similarity index 100% rename from server/api/controllers/gallery/DepositController.js rename to server/api/controllers/gallery/transactions/depositController.js diff --git a/server/api/controllers/gallery/GiftsController.js b/server/api/controllers/gallery/transactions/giftController.js similarity index 100% rename from server/api/controllers/gallery/GiftsController.js rename to server/api/controllers/gallery/transactions/giftController.js diff --git a/server/api/controllers/gallery/FeesController.js b/server/api/controllers/gallery/transactions/royaltyController.js similarity index 100% rename from server/api/controllers/gallery/FeesController.js rename to server/api/controllers/gallery/transactions/royaltyController.js diff --git a/server/api/controllers/gallery/TransactionsController.js b/server/api/controllers/gallery/transactions/transactionsController.js similarity index 100% rename from server/api/controllers/gallery/TransactionsController.js rename to server/api/controllers/gallery/transactions/transactionsController.js diff --git a/server/api/controllers/gallery/WithdrawalController.js b/server/api/controllers/gallery/transactions/withdrawalController.js similarity index 100% rename from server/api/controllers/gallery/WithdrawalController.js rename to server/api/controllers/gallery/transactions/withdrawalController.js diff --git a/server/api/controllers/mosaic/MosaicController.js b/server/api/controllers/mosaic/MosaicController.js deleted file mode 100644 index 84b24b3e..00000000 --- a/server/api/controllers/mosaic/MosaicController.js +++ /dev/null @@ -1,11 +0,0 @@ -const ContentService = require('../services/ContentService'); -const CollaboratorService = require('../services/CollaboratorService'); - -class MosaicController { - async getMainPage(req, res) { - let contents = await ContentService.getAllContents(); - res.render('MosaicMainView', { contents: contents }); - } -} - -module.exports = MosaicController; \ No newline at end of file diff --git a/server/api/controllers/mosaic/accesControl/investorAccessControler.js b/server/api/controllers/mosaic/accesControl/investorAccessControler.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/mosaic/accesControl/steezAccessController.js b/server/api/controllers/mosaic/accesControl/steezAccessController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/mosaic/analytics/InteractionAnalyticsController.js b/server/api/controllers/mosaic/analytics/InteractionAnalyticsController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/mosaic/analytics/contentAnalyticsController.js b/server/api/controllers/mosaic/analytics/contentAnalyticsController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/mosaic/MosaicCollaboratorController.js b/server/api/controllers/mosaic/credits/creditAllocationController.js similarity index 100% rename from server/api/controllers/mosaic/MosaicCollaboratorController.js rename to server/api/controllers/mosaic/credits/creditAllocationController.js diff --git a/server/api/controllers/mosaic/credits/creditCollectionSplitController.js b/server/api/controllers/mosaic/credits/creditCollectionSplitController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/mosaic/credits/creditUpdateController.js b/server/api/controllers/mosaic/credits/creditUpdateController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/mosaic/MosaicContentViewerController.js b/server/api/controllers/mosaic/discovery/contentFeedController.js similarity index 100% rename from server/api/controllers/mosaic/MosaicContentViewerController.js rename to server/api/controllers/mosaic/discovery/contentFeedController.js diff --git a/server/api/controllers/mosaic/discovery/contentSuggestionController.js b/server/api/controllers/mosaic/discovery/contentSuggestionController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/mosaic/discovery/trendAnalysisController.js b/server/api/controllers/mosaic/discovery/trendAnalysisController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/mosaic/discovery/userPreferenceController.js b/server/api/controllers/mosaic/discovery/userPreferenceController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/mosaic/management/collectionSettingsController.js b/server/api/controllers/mosaic/management/collectionSettingsController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/mosaic/management/contentPromotionController.js b/server/api/controllers/mosaic/management/contentPromotionController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/mosaic/management/contentUpdateController.js b/server/api/controllers/mosaic/management/contentUpdateController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/mosaic/management/contentUploadController.js b/server/api/controllers/mosaic/management/contentUploadController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/mosaic/management/contentVisibilityController.js b/server/api/controllers/mosaic/management/contentVisibilityController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/mosaic/userInteraction/contentCollectionController.js b/server/api/controllers/mosaic/userInteraction/contentCollectionController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/mosaic/userInteraction/contentInteractionController.js b/server/api/controllers/mosaic/userInteraction/contentInteractionController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/mosaic/userInteraction/contentSharingController.js b/server/api/controllers/mosaic/userInteraction/contentSharingController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/village/analytics/engagementAnalyticsController.js b/server/api/controllers/village/analytics/engagementAnalyticsController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/village/analytics/memberAnalyticsController.js b/server/api/controllers/village/analytics/memberAnalyticsController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/village/community/accessManagementController.js b/server/api/controllers/village/community/accessManagementController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/village/community/collaborationController.js b/server/api/controllers/village/community/collaborationController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/village/community/communityBoardController.js b/server/api/controllers/village/community/communityBoardController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/village/community/eventController.js b/server/api/controllers/village/community/eventController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/village/feedback/feedbackCollectionController.js b/server/api/controllers/village/feedback/feedbackCollectionController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/village/feedback/feedbackResponseController.js b/server/api/controllers/village/feedback/feedbackResponseController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/village/governance/governanceAnalyticsController.js b/server/api/controllers/village/governance/governanceAnalyticsController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/village/governance/proposalController.js b/server/api/controllers/village/governance/proposalController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/village/governance/rewardDistributionController.js b/server/api/controllers/village/governance/rewardDistributionController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/village/governance/rewardPolicyController.js b/server/api/controllers/village/governance/rewardPolicyController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/village/governance/voteController.js b/server/api/controllers/village/governance/voteController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/village/CommunityChatController.js b/server/api/controllers/village/messaging/communityChatController.js similarity index 100% rename from server/api/controllers/village/CommunityChatController.js rename to server/api/controllers/village/messaging/communityChatController.js diff --git a/server/api/controllers/village/DirectMessagesController.js b/server/api/controllers/village/messaging/directMessagesController.js similarity index 100% rename from server/api/controllers/village/DirectMessagesController.js rename to server/api/controllers/village/messaging/directMessagesController.js diff --git a/server/api/controllers/village/messaging/notificationController.js b/server/api/controllers/village/messaging/notificationController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/village/moderation/contentModerationController.js b/server/api/controllers/village/moderation/contentModerationController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/village/moderation/moderationPolicyController.js b/server/api/controllers/village/moderation/moderationPolicyController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/village/security/incidentResponseController.js b/server/api/controllers/village/security/incidentResponseController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/controllers/village/security/securityController.js b/server/api/controllers/village/security/securityController.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/bazaar/analyticRoutes.js b/server/api/routes/bazaar/analyticRoutes.js new file mode 100644 index 00000000..60d5689d --- /dev/null +++ b/server/api/routes/bazaar/analyticRoutes.js @@ -0,0 +1,23 @@ +const express = require('express'); +const { protect } = require('../middleware/authMiddleware'); +const { + addLiquidity, + createPool, + swapTokens, + initiateAuction, + placeBid, + fetchLeaderboard, + stakeTokens, + calculateYield, + distributeRewards, +} = require('../controllers/bazaarController'); + +const router = express.Router(); + + +exports.getSummary = async (req, res) => { + // Code to retrieve market metrics or summary +}; + + +module.exports = router; \ No newline at end of file diff --git a/server/api/routes/bazaar/auctionRoutes.js b/server/api/routes/bazaar/auctionRoutes.js new file mode 100644 index 00000000..9fc0a6b9 --- /dev/null +++ b/server/api/routes/bazaar/auctionRoutes.js @@ -0,0 +1,25 @@ +const AuctionsService = require('../services/auctionsService'); + +// Auction Management +router.post('/initiateAuction', protect, initiateAuction); +router.post('/placeBid', protect, placeBid); +router.get('/fetchLeaderboard', protect, fetchLeaderboard); + +exports.startAuction = async (req, res) => { + try { + const auction = await AuctionsService.startNewAuction(req.body); + res.status(201).json(auction); + } catch (error) { + res.status(500).send(error.message); + } +}; + +exports.placeBid = async (req, res) => { + try { + const auction = await AuctionsService.placeBid(req.params.auctionId, req.body); + res.json(auction); + } catch (error) { + res.status(500).send(error.message); + } +}; + diff --git a/server/api/routes/bazaar/blogRoutes.js b/server/api/routes/bazaar/blogRoutes.js new file mode 100644 index 00000000..15fc3274 --- /dev/null +++ b/server/api/routes/bazaar/blogRoutes.js @@ -0,0 +1,19 @@ +exports.getAllBlogs = async (req, res) => { + // Code to retrieve all blog posts or articles +}; + +exports.getBlogDetails = async (req, res) => { + // Code to retrieve details of a particular blog post or article +}; + +exports.createBlog = async (req, res) => { + // Code to create a new blog post or article +}; + +exports.updateBlog = async (req, res) => { + // Code to update a particular blog post or article +}; + +exports.deleteBlog = async (req, res) => { + // Code to delete a particular blog post or article +}; diff --git a/server/api/routes/bazaar/categoryRoutes.js b/server/api/routes/bazaar/categoryRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/bazaar/complianceRoutes.js b/server/api/routes/bazaar/complianceRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/bazaar/highlightRoutes.js b/server/api/routes/bazaar/highlightRoutes.js new file mode 100644 index 00000000..1a407b98 --- /dev/null +++ b/server/api/routes/bazaar/highlightRoutes.js @@ -0,0 +1,7 @@ +exports.getTopCreators = async (req, res) => { + // Code to retrieve a list of top creators +}; + +exports.getCreatorDetails = async (req, res) => { + // Code to retrieve details of a particular creator +}; diff --git a/server/api/routes/bazaar/historyRoutes.js b/server/api/routes/bazaar/historyRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/bazaar/inventoryRoutes.js b/server/api/routes/bazaar/inventoryRoutes.js new file mode 100644 index 00000000..cb7fe592 --- /dev/null +++ b/server/api/routes/bazaar/inventoryRoutes.js @@ -0,0 +1,3 @@ +// Liquidity Management +router.post('/createPool', protect, createPool); +router.post('/addLiquidity', protect, addLiquidity); diff --git a/server/api/routes/bazaar/listingRoutes.js b/server/api/routes/bazaar/listingRoutes.js new file mode 100644 index 00000000..860a30fd --- /dev/null +++ b/server/api/routes/bazaar/listingRoutes.js @@ -0,0 +1,29 @@ +exports.createListing = async (req, res) => { + try { + const listing = await ListingsService.createListing(req.body); + res.status(201).json(listing); + } catch (error) { + res.status(500).send(error.message); + } +}; + +exports.getListings = async (req, res) => { + try { + const listings = await ListingsService.fetchAllListings(); + res.json(listings); + } catch (error) { + res.status(500).send(error.message); + } +}; + +exports.updateListing = async (req, res) => { + // Code to update details of a listing +}; + +exports.deleteListing = async (req, res) => { + // Code to delete a listing +}; + +exports.getAllListings = async (req, res) => { + // Code to retrieve all listings in the marketplace +}; diff --git a/server/api/routes/bazaar/marketRoutes.js b/server/api/routes/bazaar/marketRoutes.js deleted file mode 100644 index bf0661be..00000000 --- a/server/api/routes/bazaar/marketRoutes.js +++ /dev/null @@ -1,34 +0,0 @@ -const express = require('express'); -const { protect } = require('../middleware/authMiddleware'); -const { - addLiquidity, - createPool, - swapTokens, - initiateAuction, - placeBid, - fetchLeaderboard, - stakeTokens, - calculateYield, - distributeRewards, -} = require('../controllers/bazaarController'); - -const router = express.Router(); - -// Liquidity Management -router.post('/createPool', protect, createPool); -router.post('/addLiquidity', protect, addLiquidity); - -// Token Trading -router.post('/swapTokens', protect, swapTokens); - -// Auction Management -router.post('/initiateAuction', protect, initiateAuction); -router.post('/placeBid', protect, placeBid); -router.get('/fetchLeaderboard', protect, fetchLeaderboard); - -// Staking and Rewards -router.post('/stakeTokens', protect, stakeTokens); -router.get('/calculateYield', protect, calculateYield); -router.post('/distributeRewards', protect, distributeRewards); - -module.exports = router; \ No newline at end of file diff --git a/server/api/routes/bazaar/orderBookRoutes.js b/server/api/routes/bazaar/orderBookRoutes.js new file mode 100644 index 00000000..bf884da0 --- /dev/null +++ b/server/api/routes/bazaar/orderBookRoutes.js @@ -0,0 +1,7 @@ +exports.getOrderBook = async (req, res) => { + // Code to retrieve the current state of the order book +}; + +exports.getTopOrders = async (req, res) => { + // Code to retrieve the top 'n' buy and sell orders +}; diff --git a/server/api/routes/bazaar/purchaseRoutes.js b/server/api/routes/bazaar/purchaseRoutes.js new file mode 100644 index 00000000..8e0996fa --- /dev/null +++ b/server/api/routes/bazaar/purchaseRoutes.js @@ -0,0 +1,19 @@ +exports.createPurchase = async (req, res) => { + // Code to create a new purchase order +}; + +exports.getPurchaseDetails = async (req, res) => { + // Code to retrieve details of a purchase +}; + +exports.updatePurchaseStatus = async (req, res) => { + // Code to update the status of a purchase +}; + +exports.getAllPurchases = async (req, res) => { + // Code to retrieve all purchases for a user or seller +}; + + +// Token Trading +router.post('/swapTokens', protect, swapTokens); \ No newline at end of file diff --git a/server/api/routes/bazaar/recommendationRoutes.js b/server/api/routes/bazaar/recommendationRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/bazaar/reviewRoutes.js b/server/api/routes/bazaar/reviewRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/bazaar/royaltyRoutes.js b/server/api/routes/bazaar/royaltyRoutes.js new file mode 100644 index 00000000..7b653bcc --- /dev/null +++ b/server/api/routes/bazaar/royaltyRoutes.js @@ -0,0 +1,7 @@ +exports.calculateFees = async (req, res) => { + // Code to calculate fees for a particular transaction or listing +}; + +exports.updateFeeStructure = async (req, res) => { + // Code to update the marketplace's fee structure +}; diff --git a/server/api/routes/bazaar/searchRoutes.js b/server/api/routes/bazaar/searchRoutes.js new file mode 100644 index 00000000..9415ccfe --- /dev/null +++ b/server/api/routes/bazaar/searchRoutes.js @@ -0,0 +1,3 @@ +exports.searchListings = async (req, res) => { + // Code to search through listings based on provided criteria +}; diff --git a/server/api/routes/bazaar/steezBazaarRoutes.js b/server/api/routes/bazaar/steezBazaarRoutes.js new file mode 100644 index 00000000..4d254b10 --- /dev/null +++ b/server/api/routes/bazaar/steezBazaarRoutes.js @@ -0,0 +1,7 @@ +exports.getFeaturedTokens = async (req, res) => { + // Code to retrieve a list of featured tokens +}; + +exports.getFeaturedTokenDetails = async (req, res) => { + // Code to retrieve details of a particular featured token +}; diff --git a/server/api/routes/bazaar/swapRoutes.js b/server/api/routes/bazaar/swapRoutes.js new file mode 100644 index 00000000..98df4cb0 --- /dev/null +++ b/server/api/routes/bazaar/swapRoutes.js @@ -0,0 +1,24 @@ +exports.placeOrder = async (req, res) => { + // Code to place a new limit order +}; + +exports.updateOrder = async (req, res) => { + // Code to modify an existing limit order +}; + +exports.cancelOrder = async (req, res) => { + // Code to cancel an existing limit order +}; + +exports.getMyOrders = async (req, res) => { + // Code for a user to view their active and past orders +}; + +exports.processTransaction = async (req, res) => { + try { + const transaction = await TransactionsService.processTransaction(req.body); + res.json(transaction); + } catch (error) { + res.status(500).send(error.message); + } +}; \ No newline at end of file diff --git a/server/api/routes/common/admin/contentControlRoutes.js b/server/api/routes/common/admin/contentControlRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/common/admin/moderationRoutes.js b/server/api/routes/common/admin/moderationRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/common/admin/systemSettingRoutes.js b/server/api/routes/common/admin/systemSettingRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/common/analytics/adminReportRoutes.js b/server/api/routes/common/analytics/adminReportRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/common/analytics/engagementRoutes.js b/server/api/routes/common/analytics/engagementRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/common/analytics/featureUsageRoutes.js b/server/api/routes/common/analytics/featureUsageRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/common/auth/authRoutes.js b/server/api/routes/common/auth/authRoutes.js new file mode 100644 index 00000000..84f6699d --- /dev/null +++ b/server/api/routes/common/auth/authRoutes.js @@ -0,0 +1,46 @@ +const express = require('express'); +const router = express.Router(); +const firebaseAuth = require('../../services/firebaseAuth'); +const web3Service = require('../../services/web3Service'); +const jwt = require('jsonwebtoken'); + +// Middleware to validate web3 token +const { validateWeb3Token } = require('../../middleware/authMiddleware'); + +// Route to handle user registration via Firebase and blockchain account linking +router.post('/register', async (req, res) => { + try { + const { email, password, blockchainAddress } = req.body; + const userCredential = await firebaseAuth.register(email, password); + const token = jwt.sign({ uid: userCredential.user.uid }, process.env.JWT_SECRET, { expiresIn: '1h' }); + + // Link blockchain address with Firebase user + await web3Service.linkBlockchainAddress(userCredential.user.uid, blockchainAddress); + + res.status(201).json({ token, uid: userCredential.user.uid, blockchainAddress }); + } catch (error) { + res.status(400).json({ error: error.message }); + } +}); + +// Route to handle user login and token generation +router.post('/login', async (req, res) => { + try { + const { email, password } = req.body; + const userCredential = await firebaseAuth.login(email, password); + const token = jwt.sign({ uid: userCredential.user.uid }, process.env.JWT_SECRET, { expiresIn: '1h' }); + + res.status(200).json({ token, uid: userCredential.user.uid }); + } catch (error) { + res.status(400).json({ error: error.message }); + } +}); + +// Route to validate and refresh JWT tokens +router.post('/token', validateWeb3Token, (req, res) => { + // Assuming validateWeb3Token middleware validates the existing token and injects user info into req.user + const newToken = jwt.sign({ uid: req.user.uid }, process.env.JWT_SECRET, { expiresIn: '1h' }); + res.status(200).json({ token: newToken }); +}); + +module.exports = router; \ No newline at end of file diff --git a/server/api/routes/common/help/FAQRoutes.js b/server/api/routes/common/help/FAQRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/common/help/helpRoutes.js b/server/api/routes/common/help/helpRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/common/help/ticketRoutes.js b/server/api/routes/common/help/ticketRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/common/notifications/eventRoutes.js b/server/api/routes/common/notifications/eventRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/common/notifications/notificationRoutes.js b/server/api/routes/common/notifications/notificationRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/common/notifications/updateRoutes.js b/server/api/routes/common/notifications/updateRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/common/payments/cryptoRoutes.js b/server/api/routes/common/payments/cryptoRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/common/payments/paymentRoutes.js b/server/api/routes/common/payments/paymentRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/common/payments/walletRoutes.js b/server/api/routes/common/payments/walletRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/common/userSettings/customisation.js b/server/api/routes/common/userSettings/customisation.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/common/userSettings/preferences.js b/server/api/routes/common/userSettings/preferences.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/common/userSettings/settings.js b/server/api/routes/common/userSettings/settings.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/common/utils/commonRoutes.js b/server/api/routes/common/utils/commonRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/common/utils/filterRoutes.js b/server/api/routes/common/utils/filterRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/common/utils/searchRoutes.js b/server/api/routes/common/utils/searchRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/common/utils/sortRoutes.js b/server/api/routes/common/utils/sortRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/analytics/analyticsDataRoutes.js b/server/api/routes/gallery/analytics/analyticsDataRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/analytics/performanceReportRoutes.js b/server/api/routes/gallery/analytics/performanceReportRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/collection/collectionDisplayRoutes.js b/server/api/routes/gallery/collection/collectionDisplayRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/collection/collectionManagementRoutes.js b/server/api/routes/gallery/collection/collectionManagementRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/collection/collectionTradeRoutes.js b/server/api/routes/gallery/collection/collectionTradeRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/engagement/communitySharingRoutes.js b/server/api/routes/gallery/engagement/communitySharingRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/engagement/contentInteractionRoutes.js b/server/api/routes/gallery/engagement/contentInteractionRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/engagement/userPreferencesRoutes.js b/server/api/routes/gallery/engagement/userPreferencesRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/management/collectionDeletionRoutes.js b/server/api/routes/gallery/management/collectionDeletionRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/management/collectionRetrievalRoutes.js b/server/api/routes/gallery/management/collectionRetrievalRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/management/collectionUpdateRoutes.js b/server/api/routes/gallery/management/collectionUpdateRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/management/collectionUploadRoutes.js b/server/api/routes/gallery/management/collectionUploadRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/management/metadataUpdateRoutes.js b/server/api/routes/gallery/management/metadataUpdateRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/management/rightsAllocationRoutes.js b/server/api/routes/gallery/management/rightsAllocationRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/management/steezDeletionRoutes.js b/server/api/routes/gallery/management/steezDeletionRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/management/steezRetrievalRoutes.js b/server/api/routes/gallery/management/steezRetrievalRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/management/steezUpdateRoutes.js b/server/api/routes/gallery/management/steezUpdateRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/management/steezUploadRoutes.js b/server/api/routes/gallery/management/steezUploadRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/stakingRewards/rewardCalculationRoutes.js b/server/api/routes/gallery/stakingRewards/rewardCalculationRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/stakingRewards/stakeManagementRoutes.js b/server/api/routes/gallery/stakingRewards/stakeManagementRoutes.js new file mode 100644 index 00000000..1e59561b --- /dev/null +++ b/server/api/routes/gallery/stakingRewards/stakeManagementRoutes.js @@ -0,0 +1,11 @@ +exports.stakeTokens = async (req, res) => { + // Code to stake tokens +}; + +exports.unstakeTokens = async (req, res) => { + // Code to unstake tokens +}; + +exports.getStakedAmount = async (req, res) => { + // Code to retrieve the staked amount of tokens +}; \ No newline at end of file diff --git a/server/api/routes/gallery/stakingRewards/stakeRewardsRoutes.js b/server/api/routes/gallery/stakingRewards/stakeRewardsRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/steezInteraction/steezDisplayRoutes.js b/server/api/routes/gallery/steezInteraction/steezDisplayRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/steezInteraction/steezManagementRoutes.js b/server/api/routes/gallery/steezInteraction/steezManagementRoutes.js new file mode 100644 index 00000000..bb30eeb0 --- /dev/null +++ b/server/api/routes/gallery/steezInteraction/steezManagementRoutes.js @@ -0,0 +1,15 @@ +exports.createUserWallet = async (req, res) => { + // Code to create a user's wallet +}; + +exports.getUserWalletDetails = async (req, res) => { + // Code to retrieve a user's wallet details +}; + +exports.updateUserWallet = async (req, res) => { + // Code to update a user's wallet details +}; + +exports.deleteUserWallet = async (req, res) => { + // Code to delete a user's wallet +}; \ No newline at end of file diff --git a/server/api/routes/gallery/steezInteraction/steezTradeRoutes.js b/server/api/routes/gallery/steezInteraction/steezTradeRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/transactions/conversionRateRoutes.js b/server/api/routes/gallery/transactions/conversionRateRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/gallery/transactions/depositRoutes.js b/server/api/routes/gallery/transactions/depositRoutes.js new file mode 100644 index 00000000..a5eec3c0 --- /dev/null +++ b/server/api/routes/gallery/transactions/depositRoutes.js @@ -0,0 +1,11 @@ +exports.initiateDeposit = async (req, res) => { + // Code to initiate a deposit +}; + +exports.confirmDeposit = async (req, res) => { + // Code to confirm a deposit +}; + +exports.getDepositHistory = async (req, res) => { + // Code to retrieve deposit history +}; \ No newline at end of file diff --git a/server/api/routes/gallery/transactions/giftRoutes.js b/server/api/routes/gallery/transactions/giftRoutes.js new file mode 100644 index 00000000..5a589542 --- /dev/null +++ b/server/api/routes/gallery/transactions/giftRoutes.js @@ -0,0 +1,11 @@ +exports.sendGift = async (req, res) => { + // Code to send a gift +}; + +exports.receiveGift = async (req, res) => { + // Code to confirm receipt of a gift +}; + +exports.getGiftHistory = async (req, res) => { + // Code to retrieve gift history +}; \ No newline at end of file diff --git a/server/api/routes/gallery/transactions/royaltyRoutes.js b/server/api/routes/gallery/transactions/royaltyRoutes.js new file mode 100644 index 00000000..28bcb3e4 --- /dev/null +++ b/server/api/routes/gallery/transactions/royaltyRoutes.js @@ -0,0 +1,7 @@ +exports.calculateFees = async (req, res) => { + // Code to calculate fees for a given transaction +}; + +exports.getFeesHistory = async (req, res) => { + // Code to retrieve history of fees collected +}; \ No newline at end of file diff --git a/server/api/routes/gallery/transactions/transactionsRoutes.js b/server/api/routes/gallery/transactions/transactionsRoutes.js new file mode 100644 index 00000000..eb7d653a --- /dev/null +++ b/server/api/routes/gallery/transactions/transactionsRoutes.js @@ -0,0 +1,19 @@ +exports.createTransaction = async (req, res) => { + // Code to create a new transaction +}; + +exports.getTransactionDetails = async (req, res) => { + // Code to retrieve details of a transaction +}; + +exports.updateTransaction = async (req, res) => { + // Code to update details of a transaction +}; + +exports.deleteTransaction = async (req, res) => { + // Code to delete a transaction +}; + +exports.getAllTransactions = async (req, res) => { + // Code to retrieve all transactions for a user +}; \ No newline at end of file diff --git a/server/api/routes/gallery/transactions/withdrawalRoutes.js b/server/api/routes/gallery/transactions/withdrawalRoutes.js new file mode 100644 index 00000000..b7ceaa4d --- /dev/null +++ b/server/api/routes/gallery/transactions/withdrawalRoutes.js @@ -0,0 +1,11 @@ +exports.initiateWithdrawal = async (req, res) => { + // Code to initiate a withdrawal +}; + +exports.confirmWithdrawal = async (req, res) => { + // Code to confirm a withdrawal +}; + +exports.getWithdrawalHistory = async (req, res) => { + // Code to retrieve withdrawal history +}; \ No newline at end of file diff --git a/server/api/routes/mosaic/accesControl/investorAccessRoutes.js b/server/api/routes/mosaic/accesControl/investorAccessRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/mosaic/accesControl/steezAccessRoutes.js b/server/api/routes/mosaic/accesControl/steezAccessRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/mosaic/analytics/InteractionAnalyticsRoutes.js b/server/api/routes/mosaic/analytics/InteractionAnalyticsRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/mosaic/analytics/contentAnalyticsRoutes.js b/server/api/routes/mosaic/analytics/contentAnalyticsRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/mosaic/credits/creditAllocationRoutes.js b/server/api/routes/mosaic/credits/creditAllocationRoutes.js new file mode 100644 index 00000000..1cb33c0e --- /dev/null +++ b/server/api/routes/mosaic/credits/creditAllocationRoutes.js @@ -0,0 +1,10 @@ +const CollaboratorService = require('../services/CollaboratorService'); + +class MosaicCollaboratorController { + async getCollaboratorList(req, res) { + let collaborators = await CollaboratorService.getAllCollaborators(); + res.render('MosaicCollaboratorView', { collaborators: collaborators }); + } +} + +module.exports = MosaicCollaboratorController; \ No newline at end of file diff --git a/server/api/routes/mosaic/credits/creditCollectionSplitRoutes.js b/server/api/routes/mosaic/credits/creditCollectionSplitRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/mosaic/credits/creditUpdateRoutes.js b/server/api/routes/mosaic/credits/creditUpdateRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/mosaic/discovery/contentFeedRoutes.js b/server/api/routes/mosaic/discovery/contentFeedRoutes.js new file mode 100644 index 00000000..5dcc67af --- /dev/null +++ b/server/api/routes/mosaic/discovery/contentFeedRoutes.js @@ -0,0 +1,11 @@ +const ContentService = require('../services/ContentService'); + +class MosaicContentViewerController { + async getContentDetails(req, res) { + let contentId = req.params.id; + let content = await ContentService.getContentById(contentId); + res.render('MosaicContentViewerView', { content: content }); + } +} + +module.exports = MosaicContentViewerController; \ No newline at end of file diff --git a/server/api/routes/mosaic/discovery/contentSuggestionRoutes.js b/server/api/routes/mosaic/discovery/contentSuggestionRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/mosaic/discovery/trendAnalysisRoutes.js b/server/api/routes/mosaic/discovery/trendAnalysisRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/mosaic/discovery/userPreferenceRoutes.js b/server/api/routes/mosaic/discovery/userPreferenceRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/mosaic/management/collectionSettingsRoutes.js b/server/api/routes/mosaic/management/collectionSettingsRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/mosaic/management/contentPromotionRoutes.js b/server/api/routes/mosaic/management/contentPromotionRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/mosaic/management/contentUpdateRoutes.js b/server/api/routes/mosaic/management/contentUpdateRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/mosaic/management/contentUploadRoutes.js b/server/api/routes/mosaic/management/contentUploadRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/mosaic/management/contentVisibilityRoutes.js b/server/api/routes/mosaic/management/contentVisibilityRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/mosaic/userInteraction/contentCollectionRoutes.js b/server/api/routes/mosaic/userInteraction/contentCollectionRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/mosaic/userInteraction/contentInteractionRoutes.js b/server/api/routes/mosaic/userInteraction/contentInteractionRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/mosaic/userInteraction/contentSharingRoutes.js b/server/api/routes/mosaic/userInteraction/contentSharingRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/profile/userRoutes.js b/server/api/routes/profile/profileRoutes.js similarity index 100% rename from server/api/routes/profile/userRoutes.js rename to server/api/routes/profile/profileRoutes.js diff --git a/server/api/routes/village/analytics/engagementAnalyticsRoutes.js b/server/api/routes/village/analytics/engagementAnalyticsRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/village/analytics/memberAnalyticsRoutes.js b/server/api/routes/village/analytics/memberAnalyticsRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/village/community/accessManagementRoutes.js b/server/api/routes/village/community/accessManagementRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/village/community/collaborationRoutes.js b/server/api/routes/village/community/collaborationRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/village/community/communityBoardRoutes.js b/server/api/routes/village/community/communityBoardRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/village/community/eventRoutes.js b/server/api/routes/village/community/eventRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/village/feedback/feedbackCollectionRoutes.js b/server/api/routes/village/feedback/feedbackCollectionRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/village/feedback/feedbackResponseRoutes.js b/server/api/routes/village/feedback/feedbackResponseRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/village/governance/governanceAnalyticsRoutes.js b/server/api/routes/village/governance/governanceAnalyticsRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/village/governance/proposalRoutes.js b/server/api/routes/village/governance/proposalRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/village/governance/rewardDistributionRoutes.js b/server/api/routes/village/governance/rewardDistributionRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/village/governance/rewardPolicyRoutes.js b/server/api/routes/village/governance/rewardPolicyRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/village/governance/voteRoutes.js b/server/api/routes/village/governance/voteRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/village/messaging/communityChatRoutes.js b/server/api/routes/village/messaging/communityChatRoutes.js new file mode 100644 index 00000000..860dbb30 --- /dev/null +++ b/server/api/routes/village/messaging/communityChatRoutes.js @@ -0,0 +1,28 @@ +const CommunityChatModel = require('../models/CommunityChatModel'); + +class CommunityChatController { + + // Fetch all chat messages for a given community + async getChatMessages(req, res) { + try { + const chatId = req.params.chatId; + const messages = await CommunityChatModel.find({chatId: chatId}).sort({timestamp: 'asc'}); + res.status(200).json(messages); + } catch (error) { + res.status(500).json({message: 'Error fetching community chat messages.', error: error}); + } + } + + // Send a message to the community chat + async sendMessage(req, res) { + try { + const message = new CommunityChatModel(req.body); + await message.save(); + res.status(201).json({message: 'Message sent successfully.'}); + } catch (error) { + res.status(500).json({message: 'Error sending message.', error: error}); + } + } +} + +module.exports = new CommunityChatController(); diff --git a/server/api/routes/village/messaging/directMessagesRoutes.js b/server/api/routes/village/messaging/directMessagesRoutes.js new file mode 100644 index 00000000..ac86ffae --- /dev/null +++ b/server/api/routes/village/messaging/directMessagesRoutes.js @@ -0,0 +1,34 @@ +const DirectMessagesModel = require('../models/DirectMessagesModel'); + +class DirectMessagesController { + + // Fetch all direct messages between two users + async getDirectMessages(req, res) { + try { + const senderId = req.params.senderId; + const receiverId = req.params.receiverId; + const messages = await DirectMessagesModel.find({ + $or: [ + {senderId: senderId, receiverId: receiverId}, + {senderId: receiverId, receiverId: senderId} + ] + }).sort({timestamp: 'asc'}); + res.status(200).json(messages); + } catch (error) { + res.status(500).json({message: 'Error fetching direct messages.', error: error}); + } + } + + // Send a direct message + async sendDirectMessage(req, res) { + try { + const message = new DirectMessagesModel(req.body); + await message.save(); + res.status(201).json({message: 'Direct message sent successfully.'}); + } catch (error) { + res.status(500).json({message: 'Error sending direct message.', error: error}); + } + } +} + +module.exports = new DirectMessagesController(); diff --git a/server/api/routes/village/messaging/notificationRoutes.js b/server/api/routes/village/messaging/notificationRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/village/moderation/contentModerationRoutes.js b/server/api/routes/village/moderation/contentModerationRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/village/moderation/moderationPolicyRoutes.js b/server/api/routes/village/moderation/moderationPolicyRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/village/security/incidentResponseRoutes.js b/server/api/routes/village/security/incidentResponseRoutes.js new file mode 100644 index 00000000..e69de29b diff --git a/server/api/routes/village/security/securityRoutes.js b/server/api/routes/village/security/securityRoutes.js new file mode 100644 index 00000000..e69de29b