MediaWiki:Common.js: Difference between revisions

Add dynamic sidebar adjustments for Wiki app
(Sticky headers: Fixes for overflow handling)
(Add dynamic sidebar adjustments for Wiki app)
Line 670: Line 670:
}
}
});
});
}
}
function initWikiAppSidebar() {
if (navigator.userAgent.indexOf('median') > -1) {
const items = [
  {
    url: 'https://wiki.melvoridle.com/w/Main_Page',
    label: 'Home',
    subLinks: [],
    icon: 'fas fa-house'
  },
  {
    url: 'https://wiki.melvoridle.com/w/Main_Page',
    label: 'Test',
    subLinks: [],
    icon: 'fas fa-house'
  },
  {
    label: 'Guides',
    url: 'https://wiki.melvoridle.com/w/Guides',
    icon: 'fas fa-book',
    subLinks: []
  },
  {
    label: 'FAQ',
    url: 'https://wiki.melvoridle.com/w/FAQ',
    icon: 'fas fa-circle-question',
    subLinks: []
  },
  {
    label: 'Changelog',
    url: 'https://wiki.melvoridle.com/w/Changelog',
    icon: 'fas fa-book-open',
    subLinks: []
  },
  {
    label: 'Mod Creation',
    url: 'https://wiki.melvoridle.com/w/Mod_Creation',
    icon: 'fas fa-hammer',
    subLinks: []
  },
  {
    label: 'Account Management',
    url: '',
    isGrouping: true,
    subLinks: [
      {
        label: 'Sign In / Register',
        url: 'https://wiki.melvoridle.com/index.php?title=Special:UserLogin&returnto=Main+Page',
        subLinks: []
      },
      {
        label: 'Preferences',
        url: 'https://wiki.melvoridle.com/w/Special:Preferences',
        subLinks: []
      },
      {
        label: 'Logout',
        url: 'https://wiki.melvoridle.com/index.php?title=Special:UserLogout&returnto=Main+Page',
        subLinks: []
      }
    ],
    icon: 'fas fa-user-gear'
  },
  {
    label: 'Special Tools',
    url: '',
    isGrouping: true,
    subLinks: [
      {
        label: 'Upload Files',
        url: 'https://wiki.melvoridle.com/w/Special:Upload',
        subLinks: [],
        icon: 'fas fa-upload'
      },
      {
        label: 'Special Pages',
        url: 'https://wiki.melvoridle.com/w/Special:SpecialPages',
        subLinks: [],
        icon: 'fas fa-file-powerpoint'
      }
    ],
    icon: 'fas fa-gear'
  },
  {
    label: 'Support Melvor Idle',
    url: '',
    isGrouping: true,
    subLinks: [
      {
        label: 'Buy Melvor Idle',
        url: 'https://wiki.melvoridle.com/w/Full_Version',
        subLinks: []
      },
      {
        label: 'Buy Throne of the Herald',
        url: 'https://wiki.melvoridle.com/w/Throne_of_the_Herald_Expansion',
        subLinks: []
      },
      {
        label: 'Buy Atlas of Discovery',
        url: 'httpshttps://wiki.melvoridle.com/w/Atlas_of_Discovery_Expansion://',
        subLinks: []
      },
      {
        label: 'Patreon',
        url: 'https://patreon.com/MelvorIdle',
        subLinks: [],
        icon: 'fab fa-patreon'
      }
    ],
    icon: null
  },
  {
    label: 'Melvor Idle Socials',
    url: '',
    isGrouping: true,
    subLinks: [
      {
        label: 'Discord',
        url: 'https://discord.gg/melvoridle',
        subLinks: [],
        icon: 'fab fa-discord'
      },
      {
        label: 'Reddit',
        url: 'https://reddit.com/r/MelvorIdle',
        icon: 'custom icon-reddit-alien',
        subLinks: []
      },
      {
        label: 'Twitter',
        url: 'https://twitter.com/melvoridle',
        icon: 'custom icon-twitter',
        subLinks: []
      },
      {
        label: 'Facebook',
        url: 'https://facebook.com/melvoridle',
        icon: 'custom icon-facebook',
        subLinks: []
      },
      {
        label: 'Instagram',
        url: 'https://instagram.com/melvoridle',
        icon: 'custom icon-instagram',
        subLinks: []
      }
    ]
  }
];
median.sidebar.setItems({"items":items,"enabled":true, "persist":false});
}
}
}
}
Line 676: Line 829:
// Table sticky headers
// Table sticky headers
initStickyHeaders();
initStickyHeaders();
// Wiki app native navigation
initWikiAppSidebar();
});
});