resolvendo dependencias dos projetos
Deploy / Deploy (push) Successful in 1m32s Details

This commit is contained in:
JotaChina 2025-12-08 18:20:01 -03:00
parent 3d12853ecc
commit a367abe597
2 changed files with 18 additions and 22 deletions

View File

@ -773,37 +773,33 @@
</script>
<script>
// Lógica para o botão de Baixar Pacote
document.addEventListener("DOMContentLoaded", () => {
const downloadPackageBtn = document.getElementById("download-package-btn");
const downloadBtn = document.getElementById("download-package-btn");
if (downloadPackageBtn) {
downloadPackageBtn.addEventListener("click", () => {
// 1. Tenta descobrir o nome do projeto atual
// Se você tiver uma variável global tipo 'currentProjectName', use ela aqui.
// Ex: let projectName = window.currentProjectName || appState.projectName;
// Como fallback, perguntamos ao usuário:
let projectName = prompt("Qual o nome do projeto salvo no servidor que deseja baixar?");
if (downloadBtn) {
downloadBtn.addEventListener("click", () => {
// 1. Pega o parâmetro 'project' da URL (ex: creation.html?project=drake)
const params = new URLSearchParams(window.location.search);
let projectName = params.get("project");
if (projectName) {
// Garante a extensão .mmp apenas para validação, o backend trata isso também
// 2. Garante a extensão para a API (opcional, mas seguro)
if (!projectName.toLowerCase().endsWith(".mmp")) {
projectName += ".mmp";
}
// 2. Chama a API de Download que criamos no Python
// O navegador vai iniciar o download automaticamente
// 3. Monta a URL da API Python e inicia o download
const apiUrl = `https://alice.ufsj.edu.br:33002/api/download/${projectName}`;
// Feedback visual simples
downloadPackageBtn.style.opacity = "0.5";
// Feedback visual rápido
downloadBtn.style.opacity = "0.5";
setTimeout(() => downloadBtn.style.opacity = "1", 500);
// Redireciona para baixar
// Dispara o download
window.location.href = apiUrl;
// Restaura botão
setTimeout(() => { downloadPackageBtn.style.opacity = "1"; }, 1000);
} else {
// Caso o usuário tenha entrado direto em creation.html sem parâmetro
alert("Nenhum projeto selecionado na URL. Abra ou Salve um projeto primeiro.");
}
});
}

View File

@ -269,7 +269,7 @@ def download_project_package(project_name):
# 3. Adiciona os samples encontrados ao ZIP mantendo a estrutura de pasta
for sample_name in samples_to_pack:
# Caminho físico no servidor (onde o arquivo realmente está)
physical_path = os.path.join(PHYSICAL_IMPORTED_FOLDER, sample_name)
physical_path = os.path.join(XML_IMPORTED_PATH_PREFIX, sample_name)
# Caminho DENTRO do ZIP (para o LMMS ler relativo ao mmp)
# Deve ser: src_mmpSearch/samples/imported/sample.wav