Xin Calendar 2 Mods II

More than one mod can be turned on in the same page, the following table shows the interference between mods:

[0] [1] [2] [3] [4] [5] [6] [7] [8] [9]

Month/Year List [0]

Date Range [1]
Special Days [2] + + +
Date Info [3] + + +
Journal [4] ×
Date Link [5] + + × =
Long Date Format [6] ×
Tiles [7]
Date Tips [8] + + =
Time [9] ×


+: the mod with a smaller order number takes precedence on styling if the same date is specified by both mods
×: these two mods won't work with each other
=: the Date Link mod should have a smaller order number than the Date Tips mod


Thus, if we want to turn on the Date Range mod and Date Tips mod, we can have the following settings in the default config file (config/xc2_default.js):

xcMods=[{"order": 0,  "mod": "Month/Year List",   "script": "mod_list.js"},
        {"order": 1,  "mod": "Date Range",        "script": "mod_date.js"},
        {"order": 0,  "mod": "Special Days",      "script": "mod_days.js"},
        {"order": 0,  "mod": "Date Info",         "script": "mod_info.js"},
        {"order": 0,  "mod": "Journal",           "script": "mod_journal.js"},
        {"order": 0,  "mod": "Date Link",         "script": "mod_link.js"},
        {"order": 0,  "mod": "Long Date Format",  "script": "mod_long.js"},
        {"order": 0,  "mod": "Tiles",             "script": "mod_tiles.js"},
        {"order": 1,  "mod": "Date Tips",         "script": "mod_tips.js"},
        {"order": 0,  "mod": "Time",              "script": "mod_time.js"}];

The order numbers won't matter here since the Date Range mod and Date Tips mod have no interference. We can also do it in the JS way:

<script language="javascript" src="../config/xc2_default.js"></script>
<script language="javascript">
  xcMods[1].order=1;
  xcMods[8].order=1;
</script>

After that, we can put together the settings for these two mods:

<script language="javascript" src="../script/xc2_inpage.js"></script>
<script language="javascript">
... settings for Date Range mod ...
... settings for Date Tips mod ...
</script>

If we want to turn on the Special Days mod and the Date Tips mod, and we noticed that the Special Days mod and the Date Tips mod have a + sign in the interference table, which means if a date is defined in both mods, the mod with a smaller order number will set the style for the date. So we would like to have the Date Tips mod to take the precedence:

xcMods=[{"order": 0,  "mod": "Month/Year List",   "script": "mod_list.js"},
        {"order": 0,  "mod": "Date Range",        "script": "mod_date.js"},
        {"order": 2,  "mod": "Special Days",      "script": "mod_days.js"},
        {"order": 0,  "mod": "Date Info",         "script": "mod_info.js"},
        {"order": 0,  "mod": "Journal",           "script": "mod_journal.js"},
        {"order": 0,  "mod": "Date Link",         "script": "mod_link.js"},
        {"order": 0,  "mod": "Long Date Format",  "script": "mod_long.js"},
        {"order": 0,  "mod": "Tiles",             "script": "mod_tiles.js"},
        {"order": 1,  "mod": "Date Tips",         "script": "mod_tips.js"},
        {"order": 0,  "mod": "Time",              "script": "mod_time.js"}];

or in the JS way:

<script language="javascript" src="../config/xc2_default.js"></script>
<script language="javascript">
  xcMods[2].order=2;
  xcMods[8].order=1;
</script>

After that, we can put together the settings for these two mods:

<script language="javascript" src="../script/xc2_inpage.js"></script>
<script language="javascript">
... settings for Special Days mod ...
... settings for Date Tips mod ...
</script>

We can turn on all nine mods, but since the Journal mod won't work with the Date Link mod, so actually we can only have up to eight mods working together in one page. Now let's look at a 3-mod combo example.

[The 3-mod combo] [Back to index page]

# # #