User:BZPN/PNHelper.js: Difference between revisions
Jump to navigation
Jump to search
Content deleted Content added
No edit summary Tag: Reverted |
No edit summary Tag: Reverted |
||
Line 1: | Line 1: | ||
mw.loader.using(['mediawiki.api', 'oojs-ui'], function() { |
|||
⚫ | |||
// Dodaj przycisk do p-tb |
|||
// Główny kontener narzędzia |
|||
⚫ | |||
⚫ | |||
⚫ | |||
padded: true, |
|||
expanded: false |
|||
⚫ | |||
// Funkcja otwierająca popup |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
}); |
}); |
||
// |
// Pole tytułu zadania |
||
var titleInput = new OO.ui.TextInputWidget({ |
var titleInput = new OO.ui.TextInputWidget({ |
||
placeholder: 'Tytuł zadania' |
placeholder: 'Tytuł zadania' |
||
}); |
}); |
||
⚫ | |||
var descriptionInput = new OO.ui. |
var descriptionInput = new OO.ui.MultilineTextInputWidget({ |
||
placeholder: 'Opis zadania', |
placeholder: 'Opis zadania', |
||
⚫ | |||
rows: 5 |
rows: 5 |
||
}); |
}); |
||
// Przycisk dodawania linków |
|||
var addButton = new OO.ui.ButtonWidget({ |
|||
var addLinkButton = new OO.ui.ButtonWidget({ |
|||
label: 'Dodaj linki', |
|||
⚫ | |||
}); |
}); |
||
// Przycisk stylowania tekstu |
|||
⚫ | |||
⚫ | |||
}); |
|||
// Przycisk anulowania |
|||
var cancelButton = new OO.ui.ButtonWidget({ |
var cancelButton = new OO.ui.ButtonWidget({ |
||
label: 'Anuluj', |
label: 'Anuluj', |
||
flags: [' |
flags: ['destructive'] |
||
}); |
}); |
||
// |
// Układ przycisków |
||
var |
var buttonLayout = new OO.ui.HorizontalLayout({ |
||
items: [addLinkButton, styleTextButton, cancelButton] |
|||
⚫ | |||
}); |
}); |
||
// |
// Dodanie elementów do panelu |
||
annotationPanel.$element.append( |
|||
⚫ | |||
⚫ | |||
buttonLayout.$element |
|||
); |
|||
⚫ | |||
cancelButton.on('click', function() { |
cancelButton.on('click', function() { |
||
// Zamknięcie okna/popupu |
|||
}); |
}); |
||
// |
// Zwrócenie głównego elementu |
||
return annotationPanel; |
|||
⚫ | |||
} |
|||
⚫ | |||
⚫ | |||
// Dodanie przycisku do paska narzędzi |
|||
⚫ | |||
function addAnnotationToolbarButton() { |
|||
console.log('Dodano zadanie:', title, description); |
|||
var annotationTool = new OO.ui.ButtonWidget({ |
|||
⚫ | |||
⚫ | |||
}); |
}); |
||
⚫ | |||
// Zdarzenie kliknięcia przycisku "Dodaj link" |
|||
// Otwieranie popupu z narzędziem |
|||
linkButton.on('click', function() { |
|||
var popup = new OO.ui.PopupWidget({ |
|||
$content: createLinkAnnotationTool().$element, |
|||
console.log('Dodaj link do zaznaczonych wyrazów'); |
|||
⚫ | |||
}); |
|||
⚫ | |||
}); |
}); |
||
// |
// Dodanie do paska narzędzi |
||
$('#p-tb .vector-menu-content-list').append( |
|||
$('<li>').append(annotationTool.$element) |
|||
); |
|||
dialog.$body.append(linkButton.$element); |
|||
dialog.$body.append(cancelButton.$element); |
|||
⚫ | |||
⚫ | |||
} |
} |
||
// Inicjalizacja po załadowaniu strony |
|||
// Dodaj zdarzenie kliknięcia do przycisku |
|||
$(document).ready(function() { |
|||
button.on('click', openPopup); |
|||
addAnnotationToolbarButton(); |
|||
⚫ | |||
// Dodaj przycisk do p-tb |
|||
$('#mw-panel > div.mw-portlet-body').append(button.$element); |
|||
}); |
}); |
Revision as of 16:19, 20 November 2024
mw.loader.using(['mediawiki.api', 'oojs-ui'], function() {
function createLinkAnnotationTool() {
// Główny kontener narzędzia
var annotationPanel = new OO.ui.PanelLayout({
padded: true,
expanded: false
});
// Pole tytułu zadania
var titleInput = new OO.ui.TextInputWidget({
placeholder: 'Tytuł zadania'
});
// Pole opisu zadania
var descriptionInput = new OO.ui.MultilineTextInputWidget({
placeholder: 'Opis zadania',
rows: 5
});
// Przycisk dodawania linków
var addLinkButton = new OO.ui.ButtonWidget({
label: 'Dodaj linki',
flags: ['primary', 'progressive']
});
// Przycisk stylowania tekstu
var styleTextButton = new OO.ui.ButtonWidget({
label: 'Style tekstu'
});
// Przycisk anulowania
var cancelButton = new OO.ui.ButtonWidget({
label: 'Anuluj',
flags: ['destructive']
});
// Układ przycisków
var buttonLayout = new OO.ui.HorizontalLayout({
items: [addLinkButton, styleTextButton, cancelButton]
});
// Dodanie elementów do panelu
annotationPanel.$element.append(
titleInput.$element,
descriptionInput.$element,
buttonLayout.$element
);
// Logika zamykania
cancelButton.on('click', function() {
// Zamknięcie okna/popupu
});
// Zwrócenie głównego elementu
return annotationPanel;
}
// Dodanie przycisku do paska narzędzi
function addAnnotationToolbarButton() {
var annotationTool = new OO.ui.ButtonWidget({
label: 'Annotacje',
icon: 'link'
});
annotationTool.on('click', function() {
// Otwieranie popupu z narzędziem
var popup = new OO.ui.PopupWidget({
$content: createLinkAnnotationTool().$element,
width: 400
});
popup.toggle();
});
// Dodanie do paska narzędzi
$('#p-tb .vector-menu-content-list').append(
$('<li>').append(annotationTool.$element)
);
}
// Inicjalizacja po załadowaniu strony
$(document).ready(function() {
addAnnotationToolbarButton();
});
});