joedolson / my-calendar Goto Github PK
View Code? Open in Web Editor NEWMy Calendar WordPress Plugin
Home Page: https://www.joedolson.com/my-calendar/
License: GNU General Public License v3.0
My Calendar WordPress Plugin
Home Page: https://www.joedolson.com/my-calendar/
License: GNU General Public License v3.0
Hey Joe
An example. I have used https://webnus.net/modern-events-calendar/
for a customer site.
I believe the site has various events in May, June and perhaps July. Let's say that there are 3-4 events a month.
Having a way to show all events independent of month would be helpful. A way to create an overview of all the events happening. I understand this can be done in List view.
Maybe I should just close this issue. As I would like to see a general better design. Creating additional views on the frontend. To make the calendar feel more modern. I will likely get back to this at a later time.
I went to the My Calendar page to view the frontend calendar.
This is what I saw:
I wondered if a fly had landed on the screen. For it kinda looks like a smudge mark on the 2021 year to the left of the Go button.
I assume that I can place the backend Classic block into a Group block to make it wider.
Like so:
Checking the frontend the calendar has the same width.
I also assume that I can add a background color to the calendar somewhere in the settings page.
It would be nice with different styles for the calendar. I can experiment with that.
Idea from private support forum, e.g. [my_calendar category=”6,3,5(25,26,27,28,29),2,4,30″ format=”calendar” time=”month” above=”nav,jump,timeframe,key” below=”print,feeds”]
In above example, categories 25-29 are being grouped under category 5. They'll be displayed & toggled as a group as if they were in category 5, even if they aren't.
It appears that the Location drop-down list has been changed to a simple text box. Is there any way of getting the drop-down back?
Hi Joe
Doing some brain storming.
I am wondering if the "Show in event manager" should be placed in a kind of vertical row with columns list.
+
Using less text in the "Event Scheduling Defaults" section.
"If a recurring event falls on a date that doesn't exist (like the 5th Wednesday in February), move it back one week."
= If a recurring event falls on a date that does not exist, move it back one week.
" If an event coincides with an event in the designated "Holiday" category, do not show the event."
Hmm this one is a bit tricky. It feels too detailed. Having a "Holiday Category" mentioned in the Categories page seems fine. The above option becomes too detailed.
I believe it would be better to have an advanced customization page, to where less used option can be moved.
Should correct display to match the database representation.
I am looking at the Output Settings.
Regarding:
The option “Process WordPress shortcodes in description fields” refers to WordPress shortcodes like [my_calendar], not My Calendar’s own template tags like {title}. This enables you to insert forms, payment buttons, and similar items directly into your description fields and have them ren- dered appropriately.
The above should link to a section that mentions shortcodes.
We have a client that needs to be able to search for any page in their site with a global search bar. Could the exclude_from_search
post type argument be modifiable through a filter?
Settings -> General
Where is your main calendar page? ---> shows Page ID and not page name.
Looking at the Categories area below the Event content.
Changes:
.my-calendar-admin fieldset.categories {
margin-top: 10px;
}
.my-calendar-admin fieldset fieldset {
/* margin: 0 0 20px 0; */
padding-top: 2px;
}
.my-calendar-admin .checkboxes li {
display: inline-block;
padding: 5px;
/* background: rgba(0, 0, 0, .05); */
margin: 2px;
}
As there is just too much space in the Categories area. This can be tightened up. I also removed the grey background color.
I am going through the guide.
I am testing pretty permalinks vs default permalinks.
Use Pretty Permalinks for Events
Adds the title of the event into the URL.
http://yourdomain.com/mc-events/title-of-your-event/?mc_id=24
Turning off this option removes the title from the URL and only inserts the My Calendar slug.
http://yourdomain.com/my-calendar/?mc_id=6
What I find strange with the above is using mc-events with pretty permalinks and with default permalinks it uses my-calendar.
My assumption is that it would look like this:
Pretty permalinks:
http://yourdomain.com/my-calendar/title-of-your-event/?mc_id=24
Default permalinks:
http://yourdomain.com/my-calendar/?mc_id=6
With no mention of mc-events.
mc events should default to the My Calendar name or whatever name the user uses for the Calendar page.
Using the option to 'Add New Date' for an event gives you the ability to have an extra occurrence of the event. However, if you re-save the root event, any custom occurrences are wiped out and replaced by the standard recurrence pattern.
Want to add a record in hidden fields of all non-conforming dates so that they will be recreated, as well.
Categories can be limited via shortcode or UI to show events from multiple categories; locations should have the same support.
In the “my-calendar” view that allows you to select between “List”, “Month”, “Week” and “Day”.
I would like to see an H2 heading used to consistently title each view.
The heading can be used as an accessible name for the table in the “Month” and “Week” views using aria-labelledby
attribute.
This would make styling the page easier and give a consistent way for screen reader users to find the calendar information.
I have added some Javascript to provide a patch on the referenced website to demonstrate the approach I would like to see.
https://accessibleit.disability.illinois.edu/my-calendar/
I am wondering what the below does.
Mini calendar widget date links to:
Options.
jQuery pop-up view
daily view page (above)
in-page anchor on main calendar page (list)
In-page anchor on main calendar page (grid)
Associated:
What is this? Target for Mini Calendar date links:
#52
Week numbers are not shown if first day in week are empty
Now that I have a record of deleted instances, should look at an option to restore them.
After swapping the decade-old handful of PNG icons for 1700 Font Awesome SVG icons, need to build a selector for them.
These functions don't currently conform to the WordPress code standards. Would ultimately like to get rid of this process, and only edit files that are outside of the plug-in directory, but there are a number of steps to get there.
There is so much one can configure that one idea would also be to add tooltips to specific options.
For instance a ? with a circle around it. Hover or click the ? to see the tooltip information.
Problems to resolve: number of events could be very high. If included as unique events, this will becoming a very large export/import. Will need to parse recurrence patterns into iCal recurrence formats for this to work.
All days is having the same css-class name of day (monday) as the current day.
In the Output settings.
The first option is:
"Open calendar links to event details"
Rephrasing to what I believe it does:
"Open events in single event view."
---> This should also be on/checked by default.
WP-Admin > My Calendar > Add New Event
When I go to view the calendar, both entries inherited the Test B All Day label. This behavior was unexpected since I entered two different All Day event Time Labels. (this is more of an observation than a bug in my opinion though - I'm a web developer (not a WordPress developer) so I tend to side with developers :) but I digress. :)
WP-Admin > My Calendar > Event Groups
November 26: _Test B:_Test 3
November 28: _:_test 3
I am going through the manual.
Why not use the WordPress delete option?
My Calendar User's Guide : Calendar version 3.2.0 : June 2020 : 9
Using WordPress to delete a plug-in does more than just delete the files; it also deletes all of your set- tings for the plug-in. If you use that method to remove a plug-in, you will need to reconfigure any set- tings you've changed in the plug-in, including your stylesheets, unless you're using My Calendar's cus- tom files directory to store styles.
Adding a remove My Calendar data on delete of plugin would give the option for the user.
It would be added to the General settings page.
It would be helpful to go through Settings and see which options are not needed any longer, and perhaps add a note about it in this thread. So these can be looked at when there is time to do so.
Example:
Remove Use Pretty Permalinks for Events.
Currently, default time is based on the current date. If the default start/end times were instead based on the last event entered, it would be easier to enter a sequence of events in chronological order.
Hi.
I'm thinking of a future to make it easy to print search results. I want them to be on calender default print page.
I have done this before, by saving the return from "mc_get_search_results( $search );" i $_session and make my_calendar() to use that if the variable $_GET['searched'] is set.
I could make a pr with that approach but i don't know if its a good way to solve it or if only events id should be saved in the session or as a cookie and reload them when from db when rendering printpage.
One advantage of that would be that it could be easy to implement a select function so you could select which event you want to print.
What do you think?
This would make it difficult to limit by past factors, but may make a better user experience.
I don't think that filtering past events is a common behavior. Consider possible use cases.
NVDA/Firefox: adding a new occurrence results in odd reading. NVDA reads each label (n) in each cloned region (alpha) in the order a1 - b1 - c1, a2 - b2 - c2, etc. That's weird.
It would be nice to have a way to automatically delete (or archive) all events older than x days in order to keep the Manage Events list at a reasonable length.
If you've reset the dates for a recurring series, you may want the option to add any custom instances you had previously added.
I am wondering if the Multisite information at page 21 Multisite Settings (Network Administrators only) and the mention of a widget page 22 should be moved into a later section of the documentation.
I cut down on the information in the Google doc:
https://docs.google.com/document/d/1n0k2zRsggnLMMINrRJmq-XTprGHCoKhZsee-rWU5Vm4/edit#
Page 14-15.
My Calendar version: 3.1.18
If there's a multiple day event with the End Date set to today, upcoming events shortcode does not display it even with show_today
set to yes
.
Example event
Date: 2020-04-05
From: empty
To: empty
All day event: checked
End Date: 2020-04-10
Example shortcode
[my_calendar_upcoming template="abcd206b575b82d604522ca7bf01021f" before="0" after="7" show_today="yes" type="event" order="asc"]
I believe changing DATE(occur_end) > '$date'
to DATE(occur_end) >= '$date'
on line 312 would fix the issue, I'll open up a pull request for it :)
Testing with WordPress 5.7.
Twenty Twenty One.
Gutenberg plugin 10.3.2
Hi Joe
In the installed screen. Clicking the "My Calendar" Settings takes one to this screen:
No tab is selected. Clicking the General tab I can see it selected.
NB. I also see the number 1953 in the "Where is your main calendar page?" field.
Reproduce: At My Calendar > Style Editor. Select 'reset styles', save. Styles are removed
As I am not very familiar with the calendar which is a good thing as I go through the guide..:)
I am right now in the Output Settings screen.
I do not understand what this is:
Target for Mini Calendar date links:
You can configure links in the mini calendar to point either to that date's events or to the place in the current calendar where that date is found. Although I could use the same URL for all possible settings, it gives more flexibility for you to specify a different URL – in case you want a different look or behavior. This URL is the destination you want links from the mini calendar to use.
Questions that come up....
What is the mini calendar? I have not seen a mention of this before now.
Where do I see it?
What does it do?
Associated:
What is this? Mini calendar widget date links to:
#53
Tested with Twenty Twenty One and Twenty Twenty themes.
Hovering over the main calendar icon + List text shows an uneven underline like so:
I have also seen this in other locations as well.
For instance.
Btw Open a List view. Click the first event. Then close it again. Move the cursor away.
Notice the first clicked event has gone missing.
The way My Calendar handles designs is problematic, and needs to be revised. Historically, users have been able to directly edit the stylesheets in the plug-in directory. On plug-in update, these files need to be copied to a backup directory then restored. Because of this, there's no good way to ensure that updates to stylesheets - bug fixes, design changes, etc., are propagated to existing sites.
Goal: no more editing of plug-in stylesheets.
Update decision making:
Process:
No need to do a replacement; that will happen automatically on update.
Changes to editing:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.