mirror of
https://github.com/pacnpal/thrillwiki_django_no_react.git
synced 2025-12-20 14:51:08 -05:00
- Add complete backend/ directory with full Django application - Add frontend/ directory with Vite + TypeScript setup ready for Next.js - Add comprehensive shared/ directory with: - Complete documentation and memory-bank archives - Media files and avatars (letters, park/ride images) - Deployment scripts and automation tools - Shared types and utilities - Add architecture/ directory with migration guides - Configure pnpm workspace for monorepo development - Update .gitignore to exclude .django_tailwind_cli/ build artifacts - Preserve all historical documentation in shared/docs/memory-bank/ - Set up proper structure for full-stack development with shared resources
42 lines
1.1 KiB
JavaScript
42 lines
1.1 KiB
JavaScript
function parkSearch() {
|
|
return {
|
|
query: '',
|
|
results: [],
|
|
loading: false,
|
|
selectedId: null,
|
|
|
|
async search() {
|
|
if (!this.query.trim()) {
|
|
this.results = [];
|
|
return;
|
|
}
|
|
|
|
this.loading = true;
|
|
try {
|
|
const response = await fetch(`/parks/suggest_parks/?search=${encodeURIComponent(this.query)}`);
|
|
const data = await response.json();
|
|
this.results = data.results;
|
|
} catch (error) {
|
|
console.error('Search failed:', error);
|
|
this.results = [];
|
|
} finally {
|
|
this.loading = false;
|
|
}
|
|
},
|
|
|
|
clear() {
|
|
this.query = '';
|
|
this.results = [];
|
|
this.selectedId = null;
|
|
},
|
|
|
|
selectPark(park) {
|
|
this.query = park.name;
|
|
this.selectedId = park.id;
|
|
this.results = [];
|
|
|
|
// Trigger filter update
|
|
document.getElementById('park-filters').dispatchEvent(new Event('change'));
|
|
}
|
|
};
|
|
} |