Пойди туда — не знаю куда. Или место расположения обучающих ресурсов в распределенной сети
Иногда выгодна ситуация, когда обучающие ресурсы располагаются не на том же сервере, где установлена СДО, а непосредственно на компьютере пользователя или где-то еще в локальной сети. Это позволяет разгрузить сервер, снизить затраты на трафик, обеспечить быструю загрузку элементов курса.
При таком подходе нам нужно знать путь к обучающим ресурсам относительно конкретного рабочего места, ведь в разных локальных сетях эти пути будут различны.
Традиционным подходом для решения этой задачи является ведение базы данных внутри СДО: каждому филиалу ставится в соответствие адрес, по которому в нем размещены ресурсы. Каждый из обучающихся приписан к какому-то из филиалов. Таким образом, мы знаем, какой абсолютный путь подставлять к названию файла, чтобы этот файл открылся из локальной сети для конкретного обучающегося.
Целью данной статьи является описание технологии открытия обучающих ресурсов без необходимости ведения базы данных о том, где у какого пользователя расположены курсы (разумеется, мы все равно должны иметь список путей, по которым курсы расположены в филиалах).
Вернее речь пойдет даже не обо всей технологии, чтобы не получилось слишком громоздко, а только об элементе, ответственном за идентификацию пути.
Проблема отчасти связана с тем, что в нашей ситуации из соображений безопасности не возможна встроенная функция, которая проверяла бы, существует тот или иной файл в локальной сети пользователя или нет. А раз нет такой функции, то не возможно средствами программирования организовать цикл проверки путей. Однако есть способ обойти это препятствие.
Итак, имеем название файла, который должен быть запущен и список путей, по которым он может быть расположен в локальной сети. Нужно понять какой путь верный.
Идея реализации проста: страничка делится на фреймы. Две колонки. В левой колонке находится сообщение, о том, что файл в процессе открытия эта колонка занимает 100% размера экрана.
Таким образом, правая колонка оказывается невидимой. Мы её делим на столько подфреймов, сколько ссылок нам нужно проверить. В каждый из этих невидимых подфреймов загружаем комбинацию «проверяемый_путь + имя_файла». Если комбинация не существующая, то ничего и не происходит. Но при правильной комбинации «путь+файл» в наш фрейм загрузится … нет, не сам курс, но промежуточный файл, который загрузит курс в главное окно («parent») вместо всех ранее созданных фреймов. Впрочем, промежуточный файл может выполнять и некую другую функциональность.
При таком подходе нам нужно знать путь к обучающим ресурсам относительно конкретного рабочего места, ведь в разных локальных сетях эти пути будут различны.
Традиционным подходом для решения этой задачи является ведение базы данных внутри СДО: каждому филиалу ставится в соответствие адрес, по которому в нем размещены ресурсы. Каждый из обучающихся приписан к какому-то из филиалов. Таким образом, мы знаем, какой абсолютный путь подставлять к названию файла, чтобы этот файл открылся из локальной сети для конкретного обучающегося.
Целью данной статьи является описание технологии открытия обучающих ресурсов без необходимости ведения базы данных о том, где у какого пользователя расположены курсы (разумеется, мы все равно должны иметь список путей, по которым курсы расположены в филиалах).
Вернее речь пойдет даже не обо всей технологии, чтобы не получилось слишком громоздко, а только об элементе, ответственном за идентификацию пути.
Проблема отчасти связана с тем, что в нашей ситуации из соображений безопасности не возможна встроенная функция, которая проверяла бы, существует тот или иной файл в локальной сети пользователя или нет. А раз нет такой функции, то не возможно средствами программирования организовать цикл проверки путей. Однако есть способ обойти это препятствие.
Итак, имеем название файла, который должен быть запущен и список путей, по которым он может быть расположен в локальной сети. Нужно понять какой путь верный.
Идея реализации проста: страничка делится на фреймы. Две колонки. В левой колонке находится сообщение, о том, что файл в процессе открытия эта колонка занимает 100% размера экрана.
Таким образом, правая колонка оказывается невидимой. Мы её делим на столько подфреймов, сколько ссылок нам нужно проверить. В каждый из этих невидимых подфреймов загружаем комбинацию «проверяемый_путь + имя_файла». Если комбинация не существующая, то ничего и не происходит. Но при правильной комбинации «путь+файл» в наш фрейм загрузится … нет, не сам курс, но промежуточный файл, который загрузит курс в главное окно («parent») вместо всех ранее созданных фреймов. Впрочем, промежуточный файл может выполнять и некую другую функциональность.