Придумал структуру, думаю, что она не верная и запутанная.
Задача: Нужно сделать вид для 2 групп пользователей, допустим User
и Admin
.
Есть форма, которая будит дополняться в случае, если пришла нужная нам группа. 3 файла: основной (1), стандартная форма (2), модифицированная форма (3).
Моя логика:
Проверка (для одной группы 1 файл не доступен), т.е. в 1-ом случай мы не досчитаемся 1 объекта. (try catch
). Если файл есть - поднимаем объект. (поднимаемый файл наследует стандартную форму и расширяет ее).
В стандартной форме, т.е. при инициализации объекта, мы проверяем, делать ли модификацию. Если да, то мы в объекте стандартной формы тянем объект модификаций, который, в свою очередь, наследует стандартную форму.
$(function() {
var modif;
try{
modif = new modifForm();
}catch(e){
modif = false;
}
var app = new defaultViewForm(modif)
}
// дефаулт форма
var default = {};
function defaultViewForm(modif) {
var me = {};
if(modif){
me = modif;
}
me.test = default.test ,
me.test = default.test2
return me;
}
default.test = function(){
console.log('default test');
}
default.test2 = function(){
console.log('default test2');
}
// мод форма
var mod = {};
function modViewForm() {
var me = defaultViewForm.extend; // расширили
me.test = default.test2 // переопределили метод
return me;
}
mod.test = function(){
console.log('default test2');
}
Понимаю, что решение никуда не годится, но по другому не понимаю как реализовать. Подскажите, как сделать красивой данную задачу?
Виртуальный выделенный сервер (VDS) становится отличным выбором
Здравствуйте, пытался понять один вопрос который у меня возник с $broadcast в AngulaJS, но так ничего не понялМое приложение работает, но хочется докопаться...
Если зарегистрироваться через сайт, то информация на русском в базу данных не попадает(пустые поля)а если к кодировке в файле подключения(все...