Roles entity - Create a ranking of roles. See if you can mimic the heirachy.
- ie Create a list of other roles that are granted by association.
|
|
|
|
Pending
|
| |
|
|
|
|
|
|
|
|
Complete
|
| |
|
|
|
Payment link Set up a link to Stripe or similar. Be able to copy to other projects - Payment entity linked to the User
- Account at Stripe (use nurse_stephen@hotmail.com)
|
|
|
-
|
Blocked
|
| |
|
|
|
HomePage - Allow multi-selections in the Contact Us form
- Add Product-include in Contact form field
|
|
|
|
Complete
|
| |
|
|
|
Bat file - Include in the bat file that will copy the Language-Icon files
|
|
|
-
|
Blocked
|
| |
|
|
|
User - Create fields for the GPSLocations for both HomeAddress and BusinessAddress
- businessGpsLongitude
- businessGpsLatitude
- homeGpsLongitude
- homeGpsLatitude
- Include buttons to take current location and populate either Home or Business gpsLocations TODO
- Improve the user/show twig (compare to business card show) and include a map with both the addresses on them DONE
- Hide Business or Home buttons depending on settings in CompanyDetails DONE
- In User index include the red map-marker icon if the gps longitude/latitude are present (like business contacts) DONE
- Include in CompanyDetails, in the User Profile, a flag to include GPS (one flag for Home, one for Business) DONE
|
|
|
|
Pending
|
| |
|
|
|
Backup plan - Can the live server copy the database to c:\dev every [x] hours. Controlled in the settings
|
|
|
|
Pending
|
| |
|
|
|
CMS Copy/Format - I have placeholder field in all the CMS_Copy records called CMS_Format. It includes the different tricks to format the page (Accordian etc).
- Can you wire them up and make them work so we can have a different formatted page?
|
|
|
|
Pending
|
| |
|
|
|
Users - Link the list of fields viewable to the CompanyDetails settings
- Home Address
- Business Address
- Personal Details
- Job Details
|
|
|
|
Complete
|
| |
|
|
|
Security - Email verification for New users
|
|
|
-
|
Pending
|
| |
|
|
|
CMS Photo - Default the rotate to zero
- When editing, if it was a Product it reverts to Static upon opening
- If photo.photo is blank, it should be ignored in the controller (displaying product.html.twig)
|
|
|
|
Complete
|
| |
|
|
|
CMS Photos - Movie files in Interests/Products or Home page don't seem to size correctly
|
|
|
|
Complete
|
| |
|
|
|
Photos - Header Link should go to the Show By Location if sole location
|
|
|
-
|
Complete
|
| |
|
|
|
Live server set up - Automate the process to give read/write access to the public/administration
- sudo chmod -R 775 /var/www/html/stephennurse/public/administration/Attachments/
- sudo chown -R www-data:www-data /var/www/html/stephennurse/public/administration/Attachments/
- Write a batch file that will copy the Map-Icon and Language-Icon files, to all the projects (or have them uploaded in the git process)
|
|
|
-
|
Pending
|
| |
|
|
|
SQL download - Learn how to import into local
|
|
|
-
|
Complete
|
| |
|
|
|
Useful files - E-mail functionality doesn't work
- Edit issue
|
|
|
-
|
Complete
|
| |
|
|
|
OfficeAddress - Why doesn't it occupy full page, especially on mobile?
|
|
|
-
|
Complete
|
| |
|
|
|
Create a Help entity - Ability to show video of implementing each function
|
|
|
-
|
Complete
|
| |
|
|
|
CMS Copy - Headlings and Titles in CMS_Copy should be be hidden unless Ranking ==1
- Default Ranking =1 for first one and 2 thereafter
|
|
|
|
Complete
|
| |
|
|
|
Product List - Button to make Active/Inactive from the Index
- Buttons to Change the Ranking and Renumber
|
|
|
|
Complete
|
| |
|
|
|
Multi-lingual functionality: - Include in the CompanyDetails entity a field called ‘multilingual’ (booelan)
- Create new entity called ‘Languages’ containing, language (English, French, German, Spanish) , flag icon file, and abbreviation
- Selection of flag switches language of text
Page count - Add field in the Products entity for pageCount and pageCountAdmin
- When a page is loaded add to the pageCount (and if an Admin user add to pageCountAdmin only)
|
|
|
|
Complete
|
| |
|
|
|
Translations - Create import/export buttons for the translations
- Replace records with same English
|
|
|
|
Complete
|
| |
|
|
|
ATS Template - Multi-lingual functionality:
- Include in the CompanyDetails entity a field called ‘multilingual’ (booelan)
- Create new entity called ‘Languages’ containing, language (English, French, German, Spanish) , flag icon file, and abbreviation
- Selection of flag switches language of text
- Page count
- Add field in the Products entity for pageCount and pageCountAdmin
- When a page is loaded add to the pageCount (and if an Admin user add to pageCountAdmin only
|
|
|
-
|
Complete
|
| |
|
|
|
Facebook Reviews - List of users : FindByRole function should have up to 3 roles
- Include a setting for limit review history (eg 3 months), and show/hide the reviews according to that limit
- Import Reviews needs to find the User and the Facebook Group from the entity
|
|
|
-
|
Complete
|
| |
|
|
|
User - Work out a way to share some common features of the User entity but allowing for adaptions for each different project
- ChatGPT: I am building about 10 different websites that all work on Symfony/PHP. They will all share the same foundations or basic architecture (basic USER handling, a CMS, and other standard features) and any changes in one are updated across all by copying the Entity, Controller, Form, Repository and Templates. The each site will have some specific code unique to each site. The problem I have is that the USER entity needs to be slightly different for each site, so I can't copy those across. How can I maintain consistency and the uniqueness. My thought was to split the user entity in two and embed the second (different) USER2 contents within the USER form. Any suggestions
|
|
|
-
|
Complete
|
| |
|
|
|
Business Contacts - Index: Need to sort by the ranking of the Business Types
- In Business Contact form
- Java-script to hide the First/Last Name if the BusinessOrPerson= “Business”. if Person selected, show both
- Add GPS location button that picks current location. Activate from the view too.
- When deleting a business contact, cascade to the Referrals log
|
|
|
|
Complete
|
| |
|
|
|
Map Icons - Button to delete icons and hide/show the form field as appropriate
|
|
|
-
|
Complete
|
| |
|
|
|
ATS Company Details Show - Fix slider
- hide facebook months and registration email if deselected
|
|
|
|
Complete
|
| |
|
|
|
Company Details - Boolean flag to show/hide Contact Details in the Headers
- Other flags to hide/show other functionality from the Dashboard
- Weather, Facebook groups, Business contacts, Instructions, Competitors.
|
|
|
-
|
Complete
|
| |
|
|
|
Photos - In the CountService, for the CountPrivateLocations, don't just count those Private locations, but those where the user has access to
|
|
|
|
Complete
|
| |
|
|
|
|
|
|
|
|
Complete
|
| |
|
|
|
Email server - Emails failing in many projects
|
|
|
-
|
Complete
|
| |
|
|
|
Company Details - Index view - The i icon for Directions doesn't slice or raw
- Weather - Fails with GMT as time zone
- Map link field - increase height
|
|
|
|
Complete
|
| |
|
|
|
Registration - Settings. Have a flag for enable registrations
- Email templates:
- Registration - Thank you registering and has a verification link to confirm
- Referral
- Display QR code on home page
|
|
|
|
Complete
|
| |
|
|
|
|
|
|
|
|
Complete
|
| |
|
|
|
Company Details - Need to make email and Default password mandatory, if using the contact form.
|
|
|
|
Complete
|
| |
|
|
|
Home page (photos only) - Looks terrible on Ipad Pro
|
|
|
-
|
Complete
|
| |
|
|
|
Services.yaml - The only directory that doesn't work is the favicons_directory and mapicons_directory
- However it works in the CompanyDetailsController, it only fails to work in twig (company-details-index, QR-homepage, base.html)
- In each of those twigs, they don't accept other directories from the service.yaml and favicon_directory works in other twigs
|
|
|
-
|
Complete
|
| |
|
|
|
Business Contacts - Counter fix. Don't display Business Types if Counter =0
|
|
|
|
Complete
|
| |
|
|
|
Photo Locations - New Photo Location creates an error
|
|
|
|
Complete
|
| |
|
|
|
Languages - Add a link on the Active/Inactive to turn off/off instantly
- Add a ranking number to control the order of the flags in the dropdown
- Import feature to upload all the countries. Delete all
|
|
|
-
|
Complete
|
| |
|
|
|
User - Add photo, which should be part of personal details
- Improve views
|
|
|
|
Complete
|
| |
|
|
|
- Add useful contacts – copy from Stephen-nurse or Immigration
- Include a map that shows the location of each restaurant/hotel etc
- Restaurant entity to include opening times (for on and off peak season)
- Menu entity
- Add all to the copy batch file
|
|
|
|
Complete
|
| |
|
|
|
|
|
|
|
|
Complete
|
| |
|
|
|
Mobile view needs to be improved - Dashboard
- Company Details
- Change from a table to a single record to display across whole page (Show)
- Show function doesn't work as is
- CMS_Copy - restrict content
- CMS_Photo - restrict content
|
|
|
|
Complete
|
| |
|
|
|
User - Reset password doesn't work
|
|
|
-
|
Complete
|
| |
|
|
|
Backdoor Doesn't work: Password Encoder error
|
|
|
|
Complete
|
| |
|
|
|
|
|
|
|
|
Complete
|
| |
|
|
|
Interests/Products - In the hyperlink in the Products/Interests entity - in the index correct for https or www to launch even if lazily entered. Same for business contacts
|
|
|
-
|
Complete
|
| |
|
|
|
Product list (header) - If there is only one product in the ProductList, then it should become the Header
- Same for SubProducts
HomePage Contact Form - Still shows the DateTime sent.
- Phone number should be optional
Workflow
|
|
|
-
|
Complete
|
| |
|
|
|
Website contacts - How do I see what Product they are interested in?
|
|
|
-
|
Complete
|
| |
|
|
|
Logout time - How do I control the time til the systems logs you out?
|
|
|
|
Complete
|
| |
|
|
|
Facebook Groups and Products
|
|
|
-
|
Complete
|
| |
|
|
|
Login Direction - Doesn't seem to do anything anymore
|
|
|
|
Complete
|
| |
|
|
|
Users - Edit User fails because
- Password is not visible
- If the user has 2 or more than 3 names in the fullName
|
|
|
|
Complete
|
| |
|
|
|
CMS Copy - Can't save Edits
- Increase height of the content box
- Define different page layout formats and have the CMS copy be applied to that format
|
|
|
-
|
Complete
|
| |
|
|
|
Weather - Index - Link to the live google weather page doesn't find the location specfied
- Create a daily chron job
|
|
|
|
Complete
|
| |
|
|
|
Edit the bat file to add the new project specific inflation
|
|
|
-
|
Complete
|
| |
|
|
|
QR page - Look and feel on full and small screen
|
|
|
|
Complete
|
| |
|
|
|
Products - Notes field should be better positioned (on the right, col-8) and be editable with CKEditor.
- As you hover over the Links for the Products in the menu it should show you the Notes
|
|
|
-
|
Complete
|
| |
|
|
|
Instructions - Import Media file
- Display media file
- And launch
|
|
|
-
|
Complete
|
| |
|
|
|
Website contacts - Ordering of products according to ranking
- Similarly in email
|
|
|
-
|
Complete
|
| |
|
|
|
Company Details - Include Contact Details or not in the headers
|
|
|
|
Complete
|
| |
|
|
|
HomePage (Photos) and Interests Page - If the hyperlink is blank it should do anything when clicked.
|
|
|
-
|
Complete
|
| |
|
|
|
Server clean-up - Button to clean up the attachments for all directories
- Button to import the mapicon files
|
|
|
-
|
Complete
|
| |
|
|
|
Project specific roles maintain in settings - Create an entity to define the roles available in the project
- Also in the User form, be able to control which fields are active as a function of the role
|
|
|
-
|
Complete
|
| |
|
|
|
CMS Copy - When switching between Static Page and Product, deleting the field for Static page/Product respectively
- New CMS: Product list to be ordered by ranking
|
|
|
-
|
Complete
|
| |
|
|
|
Maps To calculate the optimal zoom level for a Google Map that just fits all of your venues without scrolling, you need to determine the bounding box that encompasses all the venue locations. Based on the bounding box, you can compute the zoom level that ensures all the venues are visible. Here’s how you can approach this: Steps to Calculate Optimal Zoom LevelFind the bounding box: For all your venues, compute the min and max latitudes and min and max longitudes: - minLat = minimum latitude of all venues
- maxLat = maximum latitude of all venues
- minLng = minimum longitude of all venues
- maxLng = maximum longitude of all venues
Calculate the geographical range: - The latitude range is:
latRange = maxLat - minLat - The longitude range is:
lngRange = maxLng - minLng
Calculate the center of the map: The center of the map is simply the average of the latitudes and longitudes: - centerLat = (maxLat + minLat) / 2
- centerLng = (maxLng + minLng) / 2
Calculate the diagonal distance: The diagonal distance between the top-left and bottom-right corners of the bounding box is critical for determining the zoom level. You can use the Haversine formula or a simplified approximation to compute the distance. The Haversine formula is: - a = sin²(Δφ/2) + cos(φ1) ⋅ cos(φ2) ⋅ sin²(Δλ/2) c = 2 ⋅ atan2(√a, √(1−a)) d = R ⋅ c
Where: - Δφ = difference in latitude (in radians)
- Δλ = difference in longitude (in radians)
- φ1, φ2 = latitude values in radians
- R = radius of the Earth (mean radius = 6,371 km)
- d = the distance between the two points (diagonal distance)
Estimate zoom level: Based on the diagonal distance, Google Maps provides a rough way to estimate the zoom level, which is typically from 0 (world) to 21 (street level). A common approach is to map the diagonal distance to zoom levels using a logarithmic scale, but this depends on the map's current bounds and the projection used. Generally, a simplified formula is: - zoomLevel = maxZoom - log(d / maxDistance) * scaleFactor
- maxZoom = the maximum zoom level allowed (usually 21)
- maxDistance = the maximum diagonal distance you want to show (e.g., distance across your entire map's viewable range)
- scaleFactor adjusts for the desired map fit
Using Google Maps API to Simplify:You can simplify this calculation by using the Google Maps API, which has a method to fit markers within a viewport using fitBounds(): // Assuming you have an array of venue locations in {lat, lng} format: const locations = [ {lat: 40.748817, lng: -73.985428}, {lat: 40.748217, lng: -73.985128}, // Add other venues here ]; // Create a bounds object const bounds = new google.maps.LatLngBounds(); // Extend bounds to include each venue locations.forEach(location => { bounds.extend(new google.maps.LatLng(location.lat, location.lng)); }); // Create a map with the bounds set const map = new google.maps.Map(document.getElementById("map"), { center: bounds.getCenter(), // Center map at the average of the venues zoom: 15 // You can let Google automatically choose the zoom or set a default }); // Fit map to the bounds map.fitBounds(bounds); This method will automatically adjust the zoom level and center based on your venues, ensuring all the locations are visible without scrolling. You don't need to manually calculate the zoom level if you're using this approach.
|
|
|
-
|
Complete
|
| |
|
|
|
HomePage - All photos - The photos don't have the hyerlink or the title pop-up working
|
|
|
-
|
Complete
|
| |
|
|
|
Company Details - Doesn't save the Driving Instructions. Can't save edits
- Wrap google map link
|
|
|
-
|
Complete
|
| |
|
|
|
Users - VCF export not built
- Show each user's log count, counting the number of times the number has logged in.
- Hover to show the date/time of the last [5] view
|
|
|
|
Complete
|
| |
|
|
|
Header & Footer - Product list should be sorted by Ranking number
|
|
|
|
Complete
|
| |
|
|
|
Business contacts - New contact: Sort categories alphabetically
- FIle and photo field show in edit mode when not empty. Copy JS in Edit for CompanyDetails
- Index: Desktop class doesn’t work
- Count contacts where maplocation is not empty service
Git fails - Copy to Whistles and Bells
|
|
|
|
Complete
|
| |
|
|
|
Photos - Individual photo doesn't resize well when viewed by a mobile
|
|
|
-
|
Complete
|
| |
|
|
|
Website contacts - Add a delete all button
- Include the phoneChceker into the index view
|
|
|
|
Complete
|
| |
|
|
|
Bugs in live systems vs ATSTemplate - MapIcon, Business Types and Business Contacts imports don't work on stephen-nurse.com
- Winter Cash Cup: Upgrade from ATS didn't work
|
|
|
-
|
Complete
|
| |
|
|
|
CMS Photo - When editing, if the file is loaded, don't show the input box
- Make the unique identifier just three letters
- Increase the size of the photo in the Edit field much larger
- Make the Hyperlink adaptable to include rhe https// and www
- Improve the title on the Edit page
|
|
|
|
Complete
|
| |
|
|
|
ROLES User - Photo field showing when populated.
|
|
|
-
|
Complete
|
| |
|
|
|
Project specific landing page post login for different access rights
|
|
|
-
|
Complete
|
| |
|
|
|
CSS - Should these files be copied from the ATS Template?
|
|
|
-
|
Complete
|
| |
|
|
|
|
|
|
|
-
|
Complete
|
| |
|
|
|
Business contacts - The File and Photo fields show when not empty. Copy JS found in Company Details Edit form
|
|
|
|
Complete
|
| |
|
|
|
Multi-lingual - Make the titles in Indexes language-specific
|
|
|
|
Complete
|
| |
|
|
|
Have in the Settings a flag for if site is still in testing mode. - If in Testing mode, then:
- Login screen contains the test login buttons
|
|
|
-
|
Complete
|
| |
|
|
|
Photo gallery - Don't open the photo-locations page unless an Admin and there are at least [15] different locations
- Instead show the name (and date and # photos) of each location in the dropdown. Listed either alphabetically or by date (make that a control in the Settings)
- Then have the private groups listed, in red
|
|
|
-
|
Complete
|
| |
|
|
|
New functionality: Import from Outlook - I am building a system to manage client bookings and although i would prefer that clients book online directly, some do email me. I would like to build the ability to import the content, subject line and sender and date from my email system (eg Outlook) email into a record in the database
- My plans is that emails that need to be brought into the booking system would be moved to a specific directory (eg “Upload to system”) and these are the emails that the booking system would see and extract the data from. The booking system would need access to the email
- I am using Symfony/PHP - how can i build this?
|
|
|
-
|
Complete
|
| |
|
|
|
Header - Useful links show/hide doesn't seem to be in all projects
|
|
|
-
|
Complete
|
| |
|
|
|
User Import - No longer works as the SetRoles line needs to reference the Roles entity
|
|
|
-
|
Complete
|
| |
|
|
|
User - Default language - order by ranking
|
|
|
|
Complete
|
| |
|
|
|
Photos - E-mail fails
- Handling of favourites
|
|
|
-
|
Complete
|
| |
|
|
|
User log - Build out a more comprehensive user tracking log. Not just logins . Google analytics
|
|
|
-
|
Complete
|
| |
|
|
|
Instructions - Control in Company Details to include a link to instructions functionality.
- Show in dashboard if selected.
- Include in Header display selections
Contacts details (Company Details settings) - Flag to include business card or not
- Business card to include only the information permissioned
- Perhaps include email as
|
|
|
-
|
Complete
|
| |
|
|
|
Useful Articles - Create a “Useful articles page” with some helpful topics.
|
|
|
-
|
Complete
|
| |
|
|
|
CMS - Home Page. if the flag for Photos only is not checked and there is no CMS page Static-Home, then show an error message
|
|
|
|
Complete
|
| |
|
|
|
Multi-currency flags don't work
|
|
|
|
Complete
|
| |
|
|
|
Header - Photo Gallery and Photos appear twice in the Header if logged in as ADMIN
|
|
|
|
Complete
|
| |
|
|
|
Workflow from Website Contact to User - The objective here is to automate the process of converting a Website Inquiry into a User
- Form received from client (in Website contacts).
- To do
- Allow multiple entries on the checklist
- Add field in Products for “Include in Contact Form” and references in the Contact Us form
- Add input in CompanyDetails as to whether to receive an alert with a new Inquiry
- And ‘Email’ text in Product form
- Office_Staff decides to accept a Website Inquiry or not (perhaps automate this).
- Converting to User creates a New User with the credentials provided in the Website Inquiry.
- Sends a generic email
-
|
|
|
-
|
Complete
|
| |
|
|
|
|
|
|
|
|
Complete
|
| |
|
|
|
Helpful guides - Seems to take Products as well as Helpful Guides. Do I need the checkbox if picking Helpful Gudes?
|
|
|
|
Complete
|
| |
|
|
|
Clear all attachments - Button to clear public directory - assume that the directories will be made as files are saved for the first time?
|
|
|
|
Complete
|
| |
|
|
|
|
|
|
|
|
Complete
|
| |
|
|
|
CMS Photo - Add an input field in the entity that puts a title on the photo (or a flag to move it from a tooltip to a title)
|
|
|
|
Complete
|
| |
|
|
|
Company Details - Boolean checkbox can't not be checked
|
|
|
|
Complete
|
| |
|
|
|
Company details - The show pages is not device responsive. Unreadable in mobile
|
|
|
|
Complete
|
| |
|
|
|
Homepage - Skinny up the Contact us block. Looks silly so wide.
|
|
|
|
Complete
|
| |
|
|
|
Useful links to pages - Create a page (thinking of gwenny) that contains a list of topics.
- In Product, create a boolean “includeInHelpfulGuides” which brings the Products into the Guide
|
|
|
-
|
Complete
|
| |
|
|
|
Services Consolidator - Let's write a quick summary of what each service does and where it is used.
- And then merge some more of the ATS services to make the list easier in a way that is logical:
- Create a Help.doc saved in Services which contains the info we need about each one
- Suggested consolidations:
ATS_UtilitiesService - AgeService
- CheckIfUserService
- EmailFetcher
- ICAL
- HeicImageService
- LanguagesSerivce
- LogService
- PageVisitStatsService
- RoleService
- StringReplaceService
- TranslastionService
- WeatherService
ATS_CountService (all 10) - CountAllocatedWebsites (what does this do?)
- CountBusinessContacReferrealsService
- …..
- CountUserLogsService
ATS_PhoneService: - FakesWhatsAppValidator[Service]
- PhoneAnalyser
- PhoneNumberValidator
- WhatsAppValidator
|
|
|
-
|
Complete
|
| |
|
|
|
Products Index - Main/Sub label should follow the label in the CompanyDetails
|
|
|
-
|
Complete
|
| |
|
|
|
Delete ChartwellCourt and VisitWeimar - I have deleted the project on C, and the git repositories
- Please delete anything else?
|
|
|
|
Complete
|
| |
|
|
|
User log - Create a user log for pages visited even if not logged in
|
|
|
|
Complete
|
| |
|
|
|
Languages - Confirm you can delete an icon from within a record
- Save file name in lowercase upon saving or editing
|
|
|
|
Complete
|
| |
|
|
|
Useful URLs - Security issues. Non admin can't see any of the records. Inconsistent with being able to see the URL.
- I think control it through the CompanyDetails menu and hide the login and passwords. Not secure info
|
|
|
-
|
Complete
|
| |
|
|
|
2 Jan 2026 update 1) Please pull latest changes (ATSTemplate) Please git pull on ATSTemplate. I made minor changes overnight (not related to Services consolidation): - Fix 1 bug in CompanyDetails
- Fix 1 bug in HomeController
2) Testing of Services consolidation I tested the latest consolidation of Services in ATSTemplate and everything appeared to work. I then propagated the changes using the BAT file (attached) into: I updated the BAT file to delete duplicate/legacy versions of some Services that have been renamed over time (mainly the “Import…” related ones). The aim is that simple projects (e.g., techarete, whistlesandbells) don’t accumulate superfluous files after running the script. Post-update testing - techarete (closest to “pure ATS”, minimal bespoke code): worked fine after composer dump-autoload.
- linkedinexport: initially failed until I restored these files (so they are still required somewhere in that project):
- PhoneAnalyzer.php
- CountPhoneLocationsService.php
- CountUserLogsService.php
Request: Please help identify where linkedinexport still depends on these (direct usage, service wiring, or indirect dependency), and whether we should: - keep them in ATSUtilities, or
- keep them project-local to linkedinexport, or
- refactor linkedinexport to remove dependency.
3) Next Services to consolidate into ATSUtilities Please add these currently unconsolidated Services into ATSUtilities (with the usual wiring/config updates as needed): - BusinessContactVCFExport
- CompanyDetailsService
- FindUser
- PhotoAuthorsByLocationService
- ProductService
- TranslationWorkerService
4) Repo structure tidy-up ideas (seeking your recommendation) I’m considering two structural changes: - Controllers: create src/Controller/ATS/ (or similar) and move ATS template controllers into it.
- Templates: create templates/ATS/ and move ATS template templates into it.
Please advise whether either change causes issues in Symfony, and if so what’s the cleanest way to do it. My expectation: Controllers move should be low-risk (assuming routing attributes / service discovery still work). Templates move will require updating template references (render(), extends, include, etc.) and should be done systematically to avoid broken links. My view on the sub-directory changes: A) Controllers under a sub-directory: generally safe Moving controllers from src/Controller to src/Controller/ATS is normally fine in Symfony provided you are using attribute routes (you are) and Composer autoloading covers src/. Symfony will still discover the classes. Common “gotchas”: Namespace must match folder path (e.g., namespace App\Controller\ATS;), and any references/imports updated. If you have any config that targets controller paths explicitly (rare, but possible), it may need updating. Examples: - services.yaml resource patterns for autowire/autoconfigure (often src/ so it’s fine)
- security access control rules relying on controller class names (uncommon)
Route names and paths are unaffected as long as the attributes remain unchanged. Net: this is mostly an organisational refactor; low functional risk. B) Templates under a sub-directory: also safe, but requires systematic reference updates Moving templates under templates/ATS/ won’t “break Symfony” per se, but you must update every template reference that uses the old path. So, do you think this is a good idea, or will it take too long?
|
|
|
|
Complete
|
| |
|
|
|
CSS - Seem to have lost some CSS (eg the formatting of CKeditor)
|
|
|
|
Complete
|
| |
|
|
|
User - The display parameters in CompanyDetails no longer seem to trigger different displays in the User form
|
|
|
-
|
Complete
|
| |
|
|
|
Security/Login - I can login with a new user if their access is Admin or Super_Admin, but not User (ROLE_USER)
|
|
|
|
Complete
|
| |
|
|
|
Team Bio inclusion - Think of a way to not just have ROLE_ADMIN in Team Bio
- Flag in User, only visible to ROLE_ADMIN?
|
|
|
|
Complete
|
| |
|
|
|
Chrome vs Firefox - The login script doesn't work in Chrome
|
|
|
-
|
Complete
|
| |
|
|
|
SQL Upload into Live - How do I upload my local sql into the live server? TennisFInder.sql
|
|
|
-
|
Complete
|
| |
|
|
|
Photos - If the photo file is missing, you can't delete the record
|
|
|
-
|
Complete
|
| |
|
|
|
Bugs - CMS_photo view requires login, so errors for non users
- The secret wizard (pending reach-outs) is viewable by all
|
|
|
|
Complete
|
| |
|
|
|
|
|
|
|
|
Complete
|
| |
|
|
|
Footer - Don't display Product title if count = 0
|
|
|
|
Complete
|
| |
|
|
|
Services consolidation - Does it make sense to consolidate all the ImportServices into a single one?
- And the Count Services into a single Service?
- Does it make sense to rename the Services with a ATS prefix?
|
|
|
|
Complete
|
| |
|
|
|
Database download - Test the download database required to copy the live database to dev
|
|
|
-
|
Complete
|
| |
|
|
|
Company Details - In the form, The “delete VCF photo” button deletes the QR code not the VCF photo.
- There is no controller for delete VCF phoot.
- Copy the QR code delete button (line 240 in the controller) and link to the button in the twig
- The WeatherLastScraped field is not well shown in the CompanyDetails edit twig.
|
|
|
|
Complete
|
| |
|
|
|
|
|
|
|
-
|
Complete
|
| |
|
|
|
|
|
|
|
-
|
Complete
|
| |
|
|
|
vCard export (Team Bio) - Can't handle a birthday (string expected)
- Check all fields in user and business contacts
|
|
|
-
|
Complete
|
| |
|
|
|
Contact Box on HomePage - if there is only 1 active product, don't show the checkbox
- Include in the CompanyDetails a checkbox to ask whether to include the tel number and or the Message question in the contact us box
|
|
|
-
|
Complete
|
| |
|
|
|
Dynamic Header - Review the include/exclude logic
|
|
|
-
|
Complete
|
| |
|
|
|
Page Visits - Check that this is working ok
- Data at top of page should be hashed out
- Ability to reset the Homepage
- Colour code dates
|
|
|
|
Complete
|
| |
|
|
|
Autologin - Check auto-login is working.
- Pause for bookmark
|
|
|
-
|
Complete
|
| |
|
|
|
Competitor - Get Location buttons don't work in Index or Show
|
|
|
|
Complete
|
| |
|
|
|
Weather - Don't refresh with a cron, but check the last time it was refreshed. Store in settings. and if longer than x then refresh automatically upon the index being called
|
|
|
-
|
Complete
|
| |
|
|
|
Company details - Change the vCard download to the posh one
|
|
|
-
|
Complete
|
| |
|
|
|
Products - Re-numbering/re-ordering button
|
|
|
|
Complete
|
| |
|
|
|
Header - Include a checkbox that says include Photo in the Title when not logged in.
|
|
|
|
Complete
|
| |
|
|
|
Header - Photo header appears if there are no photos stored
|
|
|
|
Complete
|
| |
|
|
|
Business contacts - Map not working. Creates an error
- Add a button for each Business Type.
- Improve the Admin View - Show GPS Long/Lat to 4 dps
- Index: Sort by the ranking of the Business Types
- In Business Contact form
- GPS button doesn't work from within the record
- In Business Contacts index, fix the count function. Don't show empty Type to the Users (only to Admin)
|
|
|
-
|
Complete
|
| |
|
|
|
User Indexes - Dynamic control of sorting in Index
|
|
|
-
|
Complete
|
| |
|
|
|
Business Contacts and Competitors - The export function should mirror the import and add back in the Company name accordingly
|
|
|
-
|
Complete
|
| |
|
|
|
Business contacts - Handle re-imports well
- if a field is updated in import then import it, otherwise don't change
|
|
|
-
|
Complete
|
| |
|
|
|
Business contacts - In Business Contacts index, fix the count function. Don't show empty Type to the Users (only to Admin)
- Map
- Buttons to restrict to one business type don't work.
|
|
|
-
|
Complete
|
| |
|
|
|
CMS Copy and Photo overlap - Increase size of text box
- Decide to split the screen as a function of the text ranking
- Check what happens to Accordian in CMS Format Styles?
- If non GB text is blank, return the GB text prefixed by (Awaiting translation…)
|
|
|
-
|
Complete
|
| |
|
|
|
Helpful files - View of Useful URLs on the mobile
- Email fails with one file
- Email fails when more than one file (different error)
|
|
|
-
|
Complete
|
| |
|
|
|
CMS - On each product.html page include a link for admin to the product. To change the name of the product
|
|
|
|
Complete
|
| |
|
|
|
Users - I introduced sorting for all the columns (ie post pagination functionality) for the Users index. Curiously, some work but not all.
Business contacts - Tried to insert the PhoneAnalyzer into Business Contacts, but it fails
|
|
|
-
|
Complete
|
| |
|
|
|
Products - Deleting a Product when the CMS is populated drives an error
|
|
|
-
|
Complete
|
| |
|
|
|
Competitor Page - We collect the address and GPS locations of the competitors but don't use that anywhere.
- Perhaps create a map and a VCF download - similar to business contacts
|
|
|
|
Complete
|
| |
|
|
|
Languages - CompanyDetails page fails if no languages in database or no English
- Doesn't seem to work in TennisClub.
|
|
|
|
Complete
|
| |
|
|
|
|
|
|
|
-
|
Complete
|
| |
|
|
|
Contact Us - Don't show the Interested in… and list of Products if there is only 1 product on offer
|
|
|
|
Complete
|
| |
|
|
|
User registration - More elegant handling of a duplicate user
|
|
|
|
Complete
|
| |
|
|
|
Multi-Lingual (Languages) - Flag import fails. Possibly because file already exists?
|
|
|
|
Complete
|
| |
|
|
|
Business contacts - Test that the file attachment and photo get deleted if you delete a contact
|
|
|
|
Complete
|
| |
|
|
|
New functionality: Glossary - Add a new entity called Glossary or Help
- Creates a page with some background that can be linked from another page. But shouldn't be in the main drop-down menus
|
|
|
-
|
Complete
|
| |
|
|
|
Registration - Email fails
- Need to test the full process
|
|
|
-
|
Complete
|
| |
|
|
|
Business Contacts - Use the White-space:No wrap and in-line style settings to make sure the names line up and the map icon appears on the same line as address
|
|
|
-
|
Complete
|
| |
|
|
|
Multi-lingual - In Company Details control the default language, with one setting being to look at the browser language?
|
|
|
-
|
Complete
|
| |
|
|
|
Product - Formatting of New and Edit are different
- From Index be able to launch the Page
- Nowrap on arrows
- Add a button to add 3 CMS and 3 Photos or +new from the index
|
|
|
-
|
Complete
|
| |
|
|
|
CMS Photos - It is possible to select Video for a JPG
- When switching between Product and Static Page it keeps the Static Page name and therefore impacts the Save
|
|
|
-
|
Complete
|
| |
|
|
|
Login Directions - Functionality doesn't seem to work
|
|
|
|
Complete
|
| |
|
|
|
Map Icons - New/Edit: Selection of icons to be sorted alphabetically
|
|
|
-
|
Complete
|
| |
|
|
|
Company Details - Button to add Longitude and Latitude into the Company Details record
- Can't save changes (since adding Photos)
|
|
|
|
Complete
|
| |
|
|
|
User - Create a field in CompanyDetails that permits or not “Auto login” from a given unique URL
- Each User gets a unique URL, which will log them into the site with their name
- Construct a controller that does that login for them
|
|
|
-
|
Complete
|
| |
|
|
|
Users - Error message when adding a birthday “datefmt_create: invalid locale: U_ILLEGAL_ARGUMENT_ERROR”
- Make the flags on the User/index saveable fields in the CompanyDetails page, so the standard can be saved for each application
- Add conditionality so that unnecessary flags are hidden in both the User View and in Company Details
|
|
|
|
Complete
|
| |
|
|
|
Mobile view - needs work. - CompanyDetails Show/Edit
- Products
- CMS- Edit/New is good
- SubPage
- CMSPhoto- index only
- UsefulLinks - ok
- Instructions -New
- Weather -ok
- Business contacts - New and Edit
- Map Icons - edit
- Facebook Groups - Index and Edit
- Competitors - New
|
|
|
-
|
Complete
|
| |
|
|
|
Photo Gallery - Email button doesn't work
- Favoured/unfavoured button don't work
|
|
|
-
|
Complete
|
| |
|
|
|
Doctrine update - Entities not working - Instructions
- Weather
- Facebook Groups
- Competitor
- Competitor Service
|
|
|
|
Complete
|
| |
|
|
|
WhatsApp number - Develop a service that checks if a number is a valid WhatsApp number or not
|
|
|
-
|
Complete
|
| |
|
|
|
Check backdoor functionality - Doesn't work in ComfyCats (live)
|
|
|
-
|
Complete
|
| |
|
|
|
Weather - Weather refresh is only every 3 hours
|
|
|
-
|
Complete
|
| |
|
|
|