From 03bf7b7658c4750ea1b6584104ddf41d4bb63a0d Mon Sep 17 00:00:00 2001 From: Gaurav Kumar Date: Mon, 9 Jun 2025 10:18:59 +0530 Subject: [PATCH] site --- .../Controller/HtmlGeneratorController.java | 2 + .../realnet/OpenAi/Services/HtmlBuilder5.java | 29 +++++++++++++ .../Controllers/SiteBuilderController.java | 42 ++++++++++++++++++- .../vpspack/Services/SiteBuilderService.java | 2 +- 4 files changed, 73 insertions(+), 2 deletions(-) diff --git a/visaproject-back-b/authsec_springboot/backend/src/main/java/com/realnet/OpenAi/Controller/HtmlGeneratorController.java b/visaproject-back-b/authsec_springboot/backend/src/main/java/com/realnet/OpenAi/Controller/HtmlGeneratorController.java index 09a49e2..4e4848f 100644 --- a/visaproject-back-b/authsec_springboot/backend/src/main/java/com/realnet/OpenAi/Controller/HtmlGeneratorController.java +++ b/visaproject-back-b/authsec_springboot/backend/src/main/java/com/realnet/OpenAi/Controller/HtmlGeneratorController.java @@ -72,6 +72,8 @@ public class HtmlGeneratorController { @PostMapping("/generate") public ResponseEntity generateHtml(@RequestBody Map jsonInput) { try { + + System.out.println(" generate html for json.." + jsonInput); StringBuilder html = new StringBuilder(); for (Map.Entry entry : jsonInput.entrySet()) { diff --git a/visaproject-back-b/authsec_springboot/backend/src/main/java/com/realnet/OpenAi/Services/HtmlBuilder5.java b/visaproject-back-b/authsec_springboot/backend/src/main/java/com/realnet/OpenAi/Services/HtmlBuilder5.java index 0bc136a..47bd384 100644 --- a/visaproject-back-b/authsec_springboot/backend/src/main/java/com/realnet/OpenAi/Services/HtmlBuilder5.java +++ b/visaproject-back-b/authsec_springboot/backend/src/main/java/com/realnet/OpenAi/Services/HtmlBuilder5.java @@ -25,8 +25,25 @@ public class HtmlBuilder5 { // Standard tag name (from 'element' key) String tag = getString(node, "element", "div"); + // Standard tag name (from 'element' key) + + // ✅ CUSTOM: Render using keywords and Unsplash image + if ("img".equals(tag) && node.containsKey("keywords")) { + String keywords = getString(node, "keywords", ""); + String imageUrl = getImageFromKeyword(keywords); + html.append(""); + return html.toString(); // Done + } + // Start tag html.append("<").append(tag); + // String clazz = getString(node, "class", ""); // if (!clazz.isEmpty()) { // html.append(" class=\"").append(clazz).append("\""); @@ -215,4 +232,16 @@ public class HtmlBuilder5 { return html.toString(); } + private static String getImageFromKeyword(String keywords) { + // Convert space-separated keywords to Unsplash format + String query = keywords.trim().replace(" ", ","); + // Return Unsplash proxy image URL (free to use) +// "https://images.unsplash.com/photo-1506744038136-46273834b3fb?auto=format&fit=crop&w=800&q=80" + +// return "https://source.unsplash.com/800x400/?" + query; + + return "https://images.unsplash.com/" + query + "?auto=format&fit=crop&w=800&q=80"; + + } + } diff --git a/visaproject-back-b/authsec_springboot/backend/src/main/java/com/realnet/vpspack/Controllers/SiteBuilderController.java b/visaproject-back-b/authsec_springboot/backend/src/main/java/com/realnet/vpspack/Controllers/SiteBuilderController.java index 46a296c..70136fe 100644 --- a/visaproject-back-b/authsec_springboot/backend/src/main/java/com/realnet/vpspack/Controllers/SiteBuilderController.java +++ b/visaproject-back-b/authsec_springboot/backend/src/main/java/com/realnet/vpspack/Controllers/SiteBuilderController.java @@ -3,7 +3,6 @@ package com.realnet.vpspack.Controllers; import java.io.File; import java.io.IOException; import java.util.List; -import java.util.Map; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -29,6 +28,13 @@ import com.realnet.fnd.response.EntityResponse; import com.realnet.vpspack.Entity.SiteBuilder; import com.realnet.vpspack.Entity.SiteBuilderDto; import com.realnet.vpspack.Services.SiteBuilderService; +import org.eclipse.jgit.api.Git; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.*; +import org.apache.commons.io.FileUtils; + +import java.io.File; @RequestMapping(value = "/SiteTree") @CrossOrigin("*") @@ -111,6 +117,35 @@ public class SiteBuilderController { } + + private static final String BASE_CLONE_PATH = "C:/cloned-repos"; // Change as needed + + @PostMapping("/clone") + public ResponseEntity cloneRepo(@RequestParam String gitUrl, @RequestParam String branch) { + try { + String repoName = gitUrl.substring(gitUrl.lastIndexOf("/") + 1).replace(".git", ""); + File localPath = new File(BASE_CLONE_PATH + File.separator + repoName); + + // Clean if already exists + if (localPath.exists()) { + FileUtils.deleteDirectory(localPath); + } + + // Clone the specific branch + Git.cloneRepository() + .setURI(gitUrl) + .setBranch(branch) + .setDirectory(localPath) + .call(); + + return ResponseEntity.ok("Repository cloned successfully to: " + localPath.getAbsolutePath()); + } catch (Exception e) { + return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR) + .body("Failed to clone repository: " + e.getMessage()); + } + } + + // it created all file of pages @PostMapping("/SiteTree/createFile") public ResponseEntity createHtmlFiles(@RequestParam Integer siteId, @RequestParam String siteBuilderName, @@ -124,6 +159,11 @@ public class SiteBuilderController { String filepath = projectPath + File.separator + "Files" + File.separator + siteBuilderName; + if (filename.equalsIgnoreCase("home")) { + + filename = "index"; + + } ResponseEntity file = fileHelper.readFile(filepath, filename); return file; } diff --git a/visaproject-back-b/authsec_springboot/backend/src/main/java/com/realnet/vpspack/Services/SiteBuilderService.java b/visaproject-back-b/authsec_springboot/backend/src/main/java/com/realnet/vpspack/Services/SiteBuilderService.java index 57bdc84..a79614b 100644 --- a/visaproject-back-b/authsec_springboot/backend/src/main/java/com/realnet/vpspack/Services/SiteBuilderService.java +++ b/visaproject-back-b/authsec_springboot/backend/src/main/java/com/realnet/vpspack/Services/SiteBuilderService.java @@ -162,7 +162,7 @@ public class SiteBuilderService { if (get.getStatusCodeValue() < 209) { System.out.println(" deplpoyed also..."); - String deployedUrl = PortConstant.DOMAIN + "/" + serverPortNo; + String deployedUrl = PortConstant.DOMAIN + ":" + serverPortNo; SiteBuilder siteBuilder = getdetailsbyId(siteId); siteBuilder.setDeployedUrl(deployedUrl);