Jump to content

Search the Community

Showing results for tags 'programowanie'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • IPSBeyond.pl
    • BOU
    • Propozycje i sugestie
  • Invision Community Support
    • Ogólne rozmowy o Invision Community
    • IPS Community Suite 4
    • IP.Board 3.4.x
    • IPSBeyond.pl Support Premium
    • Tworzenie własnych dodatków
    • Tutoriale i Artykuły
    • Wersje niewspierane
  • Ogólne
    • Rozmowy Niekontrolowane
    • Ogłoszenia
    • Pokaż się
    • Webmastering
    • IPS Community Suite - News
    • Spam Room
    • Kosz
  • IPSBeyond friends's Tematy

Categories

  • Invision Community 4
    • Aplikacje
    • eCommerce
    • Pluginy
    • Szablony
    • Tłumaczenia
  • IP.Board
    • Aplikacje
    • Modyfikacje
    • Hooki i pluginy
    • Skiny
    • Inne dodatki
  • Publikacje IP.Board
  • Spolszczenia
    • Spolszczenia produktów IPS
    • Spolszczenia modyfikacji
  • IP.Nexus
  • IP.Content
  • Inne dodatki
    • Przyciski
    • Inne grafiki

Product Groups

  • Invision Community
    • Aplikacje
    • eCommerce
  • Old IP.Board version
    • Dodatki do IP.Board
    • Dodatki do IP.Nexus
    • Publikacje IP.Board
  • Usługi
  • Reklamy w serwisie
  • Usuwanie stopki

Blogs

There are no results to display.

There are no results to display.

Categories

  • Dzieci i Rodzina
  • Edukacja
  • Ekonomia i Biznes
  • Ekstremalne
  • Gry
  • Hobbystyczne
  • Inne
  • Internet i Komputery
  • Filmy, Kultura i Sztuka
  • Motoryzacja
  • Muzyka
  • Nauka i Technika
  • Regionalne
  • Rozrywka
  • Sport
  • Świat, Ludzie i Polityka
  • Towarzyskie, Erotyka i Sex
  • Wielotematyczne
  • Zdrowie i Uroda
  • Zwierzęta i Rośliny

Categories

  • (SD) ActiveCampaign Integration

Categories

  • Hosting IP.Board
  • Usługi związane z IP.Board
  • Tworzenie stron WWW
  • Test category

Categories

  • Sprzedam
    • Licencja IPS
    • Modyfikacje
    • Inne
    • Skiny
    • Skrypty
  • Kupię

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Gadu-Gadu


Tlen


Jabber


Skype


AQQ


AIM


MSN


ICQ


Yahoo


Website URL


Location


Zainteresowania


Adres Forum

Found 5 results

  1. Zobacz kurs Programowanie w Invision Community Historia powstania kursu Invision Community (kiedyś IP.Board) zajmuję się profesjonalnie od roku 2005. Na swoim koncie posiadam setki wykonanych dodatków (aplikacje, pluginy, hooki, modyfikacje), a także dziesiątki skinów. Od roku 2012 utrzymuję się tylko z tworzenia dedykowanych rozwiązań dla Invision Community. W międzyczasie przeprowadziłem kilka zamkniętych szkoleń z tworzenia rozwiązań dedykowanych temu właśnie skryptowi. W tym roku postanowiłem nagrać kurs, który będzie dostępny dla wszystkich i każdemu da wartość. Co dostaniesz w kursie? Kurs składa się zasadniczo z dwóch modułów: tworzenia aplikacji oraz tworzenia pluginów, dodatkowo jest jeszcze moduł bonusowy zawierający między innymi informacje na temat niezbędnych narzędzi. W niedługim czasie kurs zostanie rozbudowany jeszcze o jeden moduł: tworzenie własnych szablonów. W ramach kursu dostajemy nieograniczony dostęp do kursu, dostęp do specjalnej tajnej grupy, gdzie dostęp mają tylko kursanci. W grupie tej można będzie pytać mnie o wszystkie aspekty tworzenia dodatków. Dodatkowo w ramach kursu dostajesz indywidualną pomoc ode mnie w ramach której pomogę Ci stworzyć pierwszy dodatek (nie myl tego z pojęciem, że go napiszę za Ciebie 😊 ). Kurs zawiera szereg materiałów dodatkowych, między innymi szkielet przykładowej aplikacji oraz pluginu, które możesz używać do własnych potrzeb. Dla kogo jest ten kurs? Dla każdego, kto posiada podstawową wiedzę z zakresu PHP, MySQL oraz HTML (mile widziana znajomość JavaScript oraz CSS). Jeśli chcesz stworzyć dodatek dla swojego forum lub zarabiać na tworzeniu dodatków dla innych, to ten kurs jest jak najbardziej dla Ciebie. Dla kogo nie jest ten kurs? Kurs nie jest przeznaczony dla osób, które nie mają podstawowej wiedzy na temat PHP, MySQL oraz HTML. Co otrzymasz kupując dostęp do kursu? Kurs Programowanie w Invision Community: Wartość 499 PLN Dożywotni dostęp do kursu oraz aktualizacji materiałów: Wartość 990 PLN Indywidualne konsultacje ze mną i pomoc przy napisaniu pierwszego dodatku: Wartość 1100 PLN Dożywotni dostęp do grupy "Kurs Programowanie w Invision Community ": Wartość 199 PLN BONUSOWE nagrania wideo: Wartość 500 PLN Autor Spanner Dodany 06.11.2018 Kategoria Kursy Invision Community
  2. Historia powstania kursu Invision Community (kiedyś IP.Board) zajmuję się profesjonalnie od roku 2005. Na swoim koncie posiadam setki wykonanych dodatków (aplikacje, pluginy, hooki, modyfikacje), a także dziesiątki skinów. Od roku 2012 utrzymuję się tylko z tworzenia dedykowanych rozwiązań dla Invision Community. W międzyczasie przeprowadziłem kilka zamkniętych szkoleń z tworzenia rozwiązań dedykowanych temu właśnie skryptowi. W tym roku postanowiłem nagrać kurs, który będzie dostępny dla wszystkich i każdemu da wartość. Co dostaniesz w kursie? Kurs składa się zasadniczo z dwóch modułów: tworzenia aplikacji oraz tworzenia pluginów, dodatkowo jest jeszcze moduł bonusowy zawierający między innymi informacje na temat niezbędnych narzędzi. W niedługim czasie kurs zostanie rozbudowany jeszcze o jeden moduł: tworzenie własnych szablonów. W ramach kursu dostajemy nieograniczony dostęp do kursu, dostęp do specjalnej tajnej grupy, gdzie dostęp mają tylko kursanci. W grupie tej można będzie pytać mnie o wszystkie aspekty tworzenia dodatków. Dodatkowo w ramach kursu dostajesz indywidualną pomoc ode mnie w ramach której pomogę Ci stworzyć pierwszy dodatek (nie myl tego z pojęciem, że go napiszę za Ciebie 😊 ). Kurs zawiera szereg materiałów dodatkowych, między innymi szkielet przykładowej aplikacji oraz pluginu, które możesz używać do własnych potrzeb. Dla kogo jest ten kurs? Dla każdego, kto posiada podstawową wiedzę z zakresu PHP, MySQL oraz HTML (mile widziana znajomość JavaScript oraz CSS). Jeśli chcesz stworzyć dodatek dla swojego forum lub zarabiać na tworzeniu dodatków dla innych, to ten kurs jest jak najbardziej dla Ciebie. Dla kogo nie jest ten kurs? Kurs nie jest przeznaczony dla osób, które nie mają podstawowej wiedzy na temat PHP, MySQL oraz HTML. Co otrzymasz kupując dostęp do kursu? Kurs Programowanie w Invision Community: Wartość 499 PLN Dożywotni dostęp do kursu oraz aktualizacji materiałów: Wartość 990 PLN Indywidualne konsultacje ze mną i pomoc przy napisaniu pierwszego dodatku: Wartość 1100 PLN Dożywotni dostęp do grupy "Kurs Programowanie w Invision Community ": Wartość 199 PLN BONUSOWE nagrania wideo: Wartość 500 PLN
  3. Praktycznie każda aplikacja, którą piszemy, będziemy pisać w przyszłości będzie potrzebować systemu komentarzy. Nie ważne czy jest to aplikacja typu moje trasy, blog, platforma z ogłoszeniami. Zawsze dążymy do tego by użytkownik wchodził w jakąś interakcję z dodaną treścią. Najłatwiej jest to osiągnąć właśnie przez system komentarzy. Co musimy zrobić? Aby uruchomić system komentarzy w naszej aplikacji musimy wykonać 3 kroki: Dodać odpowiedni kod do klasy elementu, który będzie przetrzymywał komentarze Stworzyć odpowiednią strukturę tabeli Stworzyć model klasy komentarzy Ale zacznijmy od początku. Zmiana w pliku Opiszę tutaj to na przykładzie jednej z moich aplikacji. Aplikacja znajduje się w przestrzeni nazw IPS\livestreams a elementem (modelem), który będzie przetrzymywać komentarze jest Stream. Zatem Otwieramy plik: /applications/livestreams/sources/Stream/Stream.php i wklejamy w nim wewnątrz klasy: /** * @brief Comment Class */ public static $commentClass = 'IPS\livestreams\Stream\Comment'; Struktura bazy danych Tutaj musimy stworzyć dość prostą tabelę a mianowicie: CREATE TABLE `ibf_livestreams_streams_comments` ( `comment_id` INT(10) NOT NULL AUTO_INCREMENT, `comment_stream_id` INT(10) NOT NULL DEFAULT '0', `comment_member_id` MEDIUMINT(8) NOT NULL DEFAULT '0', `comment_author` VARCHAR(255) NULL DEFAULT NULL, `comment_ip_address` VARCHAR(46) NULL DEFAULT NULL COLLATE 'utf8mb4_unicode_ci', `comment_date` INT(10) NULL DEFAULT NULL, `comment_append_edit` TINYINT(1) NULL DEFAULT '0', `comment_approved` TINYINT(1) NOT NULL DEFAULT '0', `comment_text` MEDIUMTEXT NULL COLLATE 'utf8mb4_unicode_ci', `comment_edit_time` INT(10) NOT NULL DEFAULT '0', `comment_edit_name` VARCHAR(255) NULL DEFAULT NULL COLLATE 'utf8mb4_unicode_ci', PRIMARY KEY (`comment_id`), INDEX `comment_parent_id` (`comment_stream_id`), INDEX `comment_author_id` (`comment_member_id`) ); Idąc od początku: comment_id - Id komentarza w bazie comment_stream_id - Id elementu, którego komentarz ma dotyczyć comment_member_id - Id autora komentarza comment_author - Nazwa autora comment_ip_address - Adres IP użytkownika comment_date - Data dodania wpisu comment_approved - Czy komentarz jest zatwierdzony comment_text - Treść komentarza comment_edit_time - Czas, kiedy komentarz był edytowany Model klasy komentarzy Plik musi nosić nazwę Comment.php i znajdować się w katalogu /applications/livestreams/sources/Stream/. A jego kod wygląda następująco: <?php /** * SolutionrDEVs Application * (SD) Live Streams * * @brief Comment model * @author Dawid Baruch <dawid.baruch@solutiondevs.pl> <a href='http://www.solutiondevs.pl'>SolutionDEVs</a> * @copyright (c) 2005 - 2016 SolutionDEVs * @package SolutionDEVs Apps * @subpackage (SD) Live Streams * @link http://www.solutiondevs.pl * @link http://www.ipsbeyond.pl * @since 25 Aug 2016 * @version 2.0.0 */ namespace IPS\livestreams\Stream; /* To prevent PHP errors (extending class does not exist) revealing path */ if( !defined( '\IPS\SUITE_UNIQUE_KEY' ) ) { header( ( isset( $_SERVER[fusion_builder_container hundred_percent="yes" overflow="visible"][fusion_builder_row][fusion_builder_column type="1_1" background_position="left top" background_color="" border_size="" border_color="" border_style="solid" spacing="yes" background_image="" background_repeat="no-repeat" padding="" margin_top="0px" margin_bottom="0px" class="" id="" animation_type="" animation_speed="0.3" animation_direction="left" hide_on_mobile="no" center_content="no" min_height="none"][ 'SERVER_PROTOCOL' ] ) ? $_SERVER[ 'SERVER_PROTOCOL' ] : 'HTTP/1.0' ) . ' 403 Forbidden' ); exit; } /** * Stream Comment Model */ class _Comment extends \IPS\Content\Comment implements \IPS\Content\EditHistory, \IPS\Content\ReportCenter, \IPS\Content\Hideable, \IPS\Content\Reputation, \IPS\Content\Searchable, \IPS\Content\Embeddable { /** * @brief [ActiveRecord] Multiton Store */ protected static $multitons; /** * @brief [Content\Comment] Item Class */ public static $itemClass = 'IPS\livestreams\Stream'; /** * @brief [ActiveRecord] Database Table */ public static $databaseTable = 'livestreams_streams_comments'; /** * @brief [ActiveRecord] Database Prefix */ public static $databasePrefix = 'comment_'; /** * @brief Database Column Map */ public static $databaseColumnMap = array( 'item' => 'stream_id', 'author' => 'member_id', 'author_name' => 'author', 'content' => 'text', 'date' => 'date', 'ip_address' => 'ip_address', 'edit_time' => 'edit_time', 'edit_member_name' => 'edit_name', 'edit_show' => 'append_edit', 'approved' => 'approved' ); /** * @brief Application */ public static $application = 'livestreams'; /** * @brief Title */ public static $title = 'livestreams_streams_comment'; /** * @brief Icon */ public static $icon = 'video-camera'; /** * @brief Reputation Type */ public static $reputationType = 'comment_id'; /** * @brief [Content] Key for hide reasons */ public static $hideLogKey = 'livestreams-scomment'; /** * Get URL for doing stuff * * @param string|NULL $action Action * @return \IPS\Http\Url */ public function url( $action=NULL ) { return parent::url( $action )->setQueryString( 'tab', 'comments' ); } } I ogólnie to tyle, aby dodać komentarze do naszej aplikacji
  4. Osadzanie treści przy użyciu standardu oEmbed jest bardzo fajnym rozwiązaniem. Dzięki temu możemy podając link np. do facebooka zobaczyć ten wpis na naszej stronie. Facebook oczywiście nie jest jedynym takim serwisem. Takie osadzanie treści możemy zrealizować chociażby dla pinteresta, youtube, instagrama i innych. W przypadku facebooka wyglądało by to mniej więcej tak: IPS Community Suite oczywiście także pozwala na takie osadzanie treści, ale co w przypadku, gdy chcemy osadzić wpis z wordpressa? Niestety tutaj byliśmy skazani na porażkę ponieważ domyślnie nie ma takiej możliwości. Jeśli jednak chcielibyśmy mieć taką możliwość musimy napisać prosty hook, który rozszerza klasę \IPS\Text\Parser i nadpisać metodę oembedServices przykładowo w taki sposób: /** * Get OEmbed Services * Implemented in this way so it's easy for hook authors to override if they wanted to * * @see <a href="http://www.oembed.com" data-mce-href="http://www.oembed.com">oEmbed</a> * @return array */ protected static function oembedServices() { $return = parent::oembedServices(); $return[fusion_builder_container hundred_percent="yes" overflow="visible"][fusion_builder_row][fusion_builder_column type="1_1" background_position="left top" background_color="" border_size="" border_color="" border_style="solid" spacing="yes" background_image="" background_repeat="no-repeat" padding="" margin_top="0px" margin_bottom="0px" class="" id="" animation_type="" animation_speed="0.3" animation_direction="left" hide_on_mobile="no" center_content="no" min_height="none"][ 'ipboard.ninja' ] = 'http://ipboard.ninja/wp-json/oembed/1.0/embed'; return $return; } A co jeśli nie czujemy się zbytnio na siłach lub nie mamy czasu na tworzenie własnych dodatków? Tutaj z pomocą przychodzi nam dodatek (SD) oEmbed. Ustawienia dodatku (SD) oEmbed Ustawienie dodatku jest bardzo proste i sprowadza się do podania dwóch rzeczy: domeny oraz linku, który generuje kod oEmbed dla danej domeny. Przykładowo: ipboard.ninja;http://ipboard.ninja/wp-json/oembed/1.0/embed
  5. Czasami w aplikacji, którą piszemy potrzebujemy zrobić szybki podgląd zawartości. Przykładem takiego miejsca jest chociażby lista tematów w danym forum, gdzie po najechaniu myszką na tytuł tematu po chwili pokazuje nam się podgląd pierwszego i ostatniego posta w temacie.Podgląd taki jest efektem bardzo prostym do osiągnięcia. Pokażę to na przykładzie mojej nowej aplikacji. W widoku, w miejscu gdzie jest link do wpisu dodajemy coś takiego: data-ipsHover data-ipsHover-target='{$row->url()->setQueryString( 'preview', 1 )}' data-ipsHover-timeout='1.5' Czyli całość wygląda np. tak: <a href="{$row->url()}" data-ipsHover data-ipsHover-target='{$row->url()->setQueryString( 'preview', 1 )}' data-ipsHover-timeout='1.5'>{$row->name}</a> Następnie w kontrolerze dla takiego żądania musimy stworzyć odpowiedni kod, który obsłuży takie żądanie. W moim przypadku kod jest umieszczony w metodzie manage() i zawiera bardzo prosty kod: if( \IPS\Request::i()->isAjax() && \IPS\Request::i()->preview ) { \IPS\Output::i()->sendOutput( \IPS\Theme::i()->getTemplate( 'core' )->ticketHover( $this->ticket ) ); return; } I to jest w sumie tyle. Jak będzie wyglądać podgląd i co będziecie w nim prezentować zależy już tylko od Was.
×
×
  • Create New...

Important Information

W celu świadczenie usług przez nasz Serwis na najwyższym poziomie, w ramach Serwisu wykorzystujemy pliki Cookies (tzw. ciasteczka). Korzystając ze stron Serwisu IPSBEYOND.PL bez zmiany ustawień przeglądarki będą one zapisane w pamięci urządzenia. Jeżeli nie dokonacie Państwo zmiany ustawień przeglądarki internetowej to wyrażacie zgodę na zapisywanie plików Cookies.