├── web ├── logs │ ├── error.log │ └── access.log ├── images │ ├── +.png │ ├── >.png │ ├── >>.png │ ├── RSS.png │ ├── bug.png │ ├── dot.png │ ├── Active.png │ ├── Trash.png │ ├── extend.png │ ├── help.png │ ├── tick.png │ ├── Activate.png │ ├── Diaspora.png │ ├── Disable.png │ ├── Error401.png │ ├── Error403.png │ ├── Error404.png │ ├── Facebook.png │ ├── TrashRed.png │ ├── Twitter.png │ ├── icoCopy.png │ ├── icoNews.png │ ├── icoTrash.png │ ├── iconRead.png │ ├── iconSend.png │ ├── Active base.png │ ├── Desapoinhat.png │ ├── SergeEmail.png │ ├── Trash base.png │ ├── captcha │ │ ├── 1.png │ │ ├── 10.png │ │ ├── 11.png │ │ ├── 12.png │ │ ├── 13.png │ │ ├── 14.png │ │ ├── 15.png │ │ ├── 16.png │ │ ├── 17.png │ │ ├── 18.png │ │ ├── 19.png │ │ ├── 2.png │ │ ├── 20.png │ │ ├── 21.png │ │ ├── 22.png │ │ ├── 23.png │ │ ├── 24.png │ │ ├── 25.png │ │ ├── 26.png │ │ ├── 27.png │ │ ├── 28.png │ │ ├── 29.png │ │ ├── 3.png │ │ ├── 30.png │ │ ├── 31.png │ │ ├── 32.png │ │ ├── 33.png │ │ ├── 34.png │ │ ├── 35.png │ │ ├── 36.png │ │ ├── 37.png │ │ ├── 38.png │ │ ├── 39.png │ │ ├── 4.png │ │ ├── 40.png │ │ ├── 41.png │ │ ├── 42.png │ │ ├── 43.png │ │ ├── 44.png │ │ ├── 45.png │ │ ├── 46.png │ │ ├── 47.png │ │ ├── 48.png │ │ ├── 49.png │ │ ├── 5.png │ │ ├── 50.png │ │ ├── 51.png │ │ ├── 52.png │ │ ├── 6.png │ │ ├── 7.png │ │ ├── 8.png │ │ └── 9.png │ ├── icoAddPack.png │ ├── icoPatents.png │ ├── icoPremium.png │ ├── icoSciences.png │ ├── icoSetting.png │ ├── icoTrashRed.png │ ├── iconFuncRss.png │ ├── iconFuncSMS.png │ ├── iconNotSend.png │ ├── iconUnread.png │ ├── navWikiIco.png │ ├── screenPhone.png │ ├── serge_logo.png │ ├── Activate base.png │ ├── Desactivated.png │ ├── Disable base.png │ ├── TrashRed base.png │ ├── icoAddNewPack.png │ ├── iconFuncMail.png │ ├── iconFuncStats.png │ ├── iconFuncWiki.png │ ├── iconWikiLight.png │ ├── navResultIco.png │ ├── SERGE_logo_norm.png │ ├── background │ │ ├── Earth.png │ │ ├── Sea01.jpg │ │ ├── Sea03.jpg │ │ ├── dark.png │ │ ├── intro.png │ │ ├── Sea02.jpeg │ │ ├── Sea04.jpeg │ │ ├── Space02.jpg │ │ ├── Japan01.jpeg │ │ ├── Nature01.jpg │ │ ├── Nature02.jpg │ │ ├── Nature03.jpeg │ │ ├── Nature04.jpeg │ │ ├── Nature05.jpg │ │ ├── Nature06.jpeg │ │ ├── Space01.jpeg │ │ ├── Mountains01.jpg │ │ ├── Mountains02.jpeg │ │ ├── intro_small.png │ │ └── Skyscrapers01.jpg │ ├── favicons │ │ ├── favicon.ico │ │ ├── apple-icon.png │ │ ├── favicon-16x16.png │ │ ├── favicon-32x32.png │ │ ├── favicon-96x96.png │ │ ├── ms-icon-70x70.png │ │ ├── apple-icon-57x57.png │ │ ├── apple-icon-60x60.png │ │ ├── apple-icon-72x72.png │ │ ├── apple-icon-76x76.png │ │ ├── ms-icon-144x144.png │ │ ├── ms-icon-150x150.png │ │ ├── ms-icon-310x310.png │ │ ├── android-icon-36x36.png │ │ ├── android-icon-48x48.png │ │ ├── android-icon-72x72.png │ │ ├── android-icon-96x96.png │ │ ├── apple-icon-114x114.png │ │ ├── apple-icon-120x120.png │ │ ├── apple-icon-144x144.png │ │ ├── apple-icon-152x152.png │ │ ├── apple-icon-180x180.png │ │ ├── android-icon-144x144.png │ │ ├── android-icon-192x192.png │ │ ├── apple-icon-precomposed.png │ │ ├── browserconfig.xml │ │ └── manifest.json │ ├── icoPackCreation.png │ ├── iconFuncHistory.png │ ├── iconFuncOption.png │ ├── iconFuncPatent.png │ ├── iconFuncScience.png │ ├── iconFuncTwitter.png │ ├── navSettingsIco.png │ ├── navWikiIco base.png │ ├── CairnGit_logo_norm.png │ ├── Desactivated base.png │ ├── TrashDesactivated.png │ ├── navResultIco base.png │ ├── SERGE_logo_norm_big.png │ ├── SERGE_logo_norm_nav.png │ ├── icoTrashDesactivated.png │ ├── pictogrammes │ │ ├── pictoMdp.png │ │ ├── rcupdate.png │ │ ├── redcross.png │ │ ├── Picto_viewW.png │ │ ├── pictoLanguage.png │ │ ├── pictoPremium.png │ │ ├── redAlertPicto.png │ │ ├── pictoWallpaper.png │ │ ├── pictoMdp.svg │ │ ├── pictoWallpaper.svg │ │ └── redcross.svg │ ├── Cairn_Devices_logo_norm.png │ ├── SERGE_logo_norm_footer.png │ ├── TrashDesactivated base.png │ ├── background_preview │ │ ├── Sea01.jpg │ │ ├── Sea02.jpeg │ │ ├── Sea03.jpg │ │ ├── Sea04.jpeg │ │ ├── Space02.jpg │ │ ├── Japan01.jpeg │ │ ├── Nature01.jpg │ │ ├── Nature02.jpg │ │ ├── Nature03.jpeg │ │ ├── Nature04.jpeg │ │ ├── Nature05.jpg │ │ ├── Nature06.jpeg │ │ ├── Space01.jpeg │ │ ├── Mountains01.jpg │ │ ├── Mountains02.jpeg │ │ └── Skyscrapers01.jpg │ ├── SERGE_logo_final_dark_background.png │ ├── iconFuncStats.svg │ ├── iconFuncWiki.svg │ ├── dot.svg │ ├── tick.svg │ ├── iconFuncRss.svg │ ├── iconFuncMail.svg │ └── iconFuncSMS.svg ├── controller │ ├── logout.php │ ├── generateNonce.php │ ├── wiki.php │ ├── error404.php │ ├── legal.php │ ├── addLinkInWiki.php │ ├── sendmail.php │ ├── accessLimitedToSignInPeople.php │ ├── searchEngine.php │ ├── workinprogress.php │ ├── deleteAccount.php │ ├── redirect.php │ ├── dataProcessing.php │ ├── rss.php │ └── bug.php ├── logout.php ├── view │ ├── body │ │ ├── error401.php │ │ ├── error403.php │ │ ├── error404.php │ │ ├── addLinkInWiki.php │ │ ├── deleteAccount.php │ │ ├── workinprogress.php │ │ ├── bug.php │ │ └── purchase.php │ ├── nav │ │ └── nav.php │ └── footer │ │ └── footer.php ├── security.txt ├── rss.php ├── js │ ├── confirmDeleteAccount.js │ ├── copyToClipboard.js │ ├── updatePrice.js │ ├── piwik │ │ └── piwik.js │ ├── scrollPos.js │ ├── backgroundPreviewAsTitle.js │ └── counter.js ├── robots.txt ├── model │ ├── captcha.php │ ├── readOwnerResult.php │ ├── readColumns.php │ ├── connection_sql.php │ ├── get_text_var.php │ ├── get_text.php │ ├── goodActive.php │ ├── insert.php │ ├── addNewPatentQuery.php │ ├── updateSearchIndexWP.php │ ├── addNewScienceQuery.php │ ├── update.php │ ├── read.php │ ├── updateSearchIndex.php │ └── addNewKeyword.php ├── languages.php ├── redirect.php ├── legal.php ├── result.php ├── error401.php ├── error403.php ├── error404.php ├── addLinkInWiki.php ├── bug.php ├── index.php ├── connection.php ├── purchase.php ├── deleteAccount.php ├── workinprogress.php ├── watchPack.php ├── setting.php ├── css │ ├── legal.php │ ├── error401.php │ ├── error403.php │ ├── error404.php │ ├── style.php │ ├── addLinkInWiki.php │ ├── deleteAccount.php │ ├── workinprogress.php │ └── nav.php ├── favicon.php └── .htaccess ├── iconWiki.png ├── logo_GPLv3.png ├── logo_GitHub.png ├── serge_logo.png ├── iconWikiLight.png ├── logo_CairnDevices.png ├── doc ├── Communique_de_presse_Serge.pdf └── Screenshot_Serge │ ├── Serge_Actu.png │ ├── Serge_Brevet.png │ ├── Serge_Science.png │ ├── Serge_results.png │ ├── icône │ ├── Disable.png │ ├── Doc_Wiki.png │ ├── TrashRed.png │ ├── bug_icon.png │ ├── Doc_Wiki_Mail.png │ ├── Doc_validation.png │ ├── Doc_Ajout_WatchPack.png │ └── Doc_retour_chariot.png │ ├── Serge_Mail_Num.png │ ├── Serge_Mail_cut.png │ ├── Serge_Science_Num.png │ ├── SERGE_logo_norm_big.png │ ├── Serge_Ajout_Pack_Num.png │ ├── Serge_Resultats_Num.png │ ├── Serge_Creation_Pack_Num.png │ ├── Serge_parametrage_actu_num.png │ ├── Serge_parametrage_premium.png │ ├── Serge_parametrage_infos_num.png │ ├── English_ver │ ├── Serge_settings_num.png │ ├── Serge_add_watchpack_num.png │ ├── Serge_patent_management.png │ ├── Serge_settings_email_num.png │ ├── Serge_watch_result_num.png │ ├── Serge_create_watchpack_num.png │ ├── Serge_news_management_num.png │ ├── Serge_premium_information.png │ ├── Serge_account_information_num.png │ ├── Serge_scientific_management_num.png │ ├── Serge_settings_sms_privacy_num.png │ └── Serge_watchpack_management_num.png │ ├── Serge_parametrage_reglages_num.png │ ├── Serge_parametrage_pack_veille_num.png │ ├── Serge_parametrage_reglages_email_num.png │ └── Serge_parametrage_reglages_sms_vie_privee_num.png ├── database_demo ├── admin_table_serge.sql ├── newsletter_table_serge.sql ├── queries_science_serge.sql ├── sms_tokens.sql ├── watch_pack_queries_serge.sql ├── keyword_news_serge.sql ├── trweet_tokens.sql ├── stripe_table_serge.sql ├── queries_wipo_serge.sql ├── price_table_serge.sql ├── premium_code_table_serge.sql ├── rss_serge.sql ├── patents_sources_serge.sql ├── miscellaneous_serge.sql ├── purchase_table_serge.sql ├── watch_pack_serge.sql ├── result_news_serge.sql ├── result_science_serge.sql ├── result_patents_serge.sql ├── background_serge.sql ├── users_table_serge.sql ├── captcha_serge.sql ├── equivalence_science_serge.sql └── language_serge.sql ├── extensions_tables ├── target_trweet_serge.sql ├── queries_trweet_serge.sql ├── geo_trweet_serge.sql ├── result_trweet_serge.sql └── timeline_trweet_serge.sql ├── toolbox.py ├── README.md ├── failDetectorPack.py ├── handshake.py └── sergenet.py /web/logs/error.log: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /web/logs/access.log: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /iconWiki.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/iconWiki.png -------------------------------------------------------------------------------- /logo_GPLv3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/logo_GPLv3.png -------------------------------------------------------------------------------- /logo_GitHub.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/logo_GitHub.png -------------------------------------------------------------------------------- /serge_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/serge_logo.png -------------------------------------------------------------------------------- /web/images/+.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/+.png -------------------------------------------------------------------------------- /web/images/>.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/>.png -------------------------------------------------------------------------------- /iconWikiLight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/iconWikiLight.png -------------------------------------------------------------------------------- /web/images/>>.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/>>.png -------------------------------------------------------------------------------- /web/images/RSS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/RSS.png -------------------------------------------------------------------------------- /web/images/bug.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/bug.png -------------------------------------------------------------------------------- /web/images/dot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/dot.png -------------------------------------------------------------------------------- /logo_CairnDevices.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/logo_CairnDevices.png -------------------------------------------------------------------------------- /web/images/Active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/Active.png -------------------------------------------------------------------------------- /web/images/Trash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/Trash.png -------------------------------------------------------------------------------- /web/images/extend.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/extend.png -------------------------------------------------------------------------------- /web/images/help.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/help.png -------------------------------------------------------------------------------- /web/images/tick.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/tick.png -------------------------------------------------------------------------------- /web/images/Activate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/Activate.png -------------------------------------------------------------------------------- /web/images/Diaspora.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/Diaspora.png -------------------------------------------------------------------------------- /web/images/Disable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/Disable.png -------------------------------------------------------------------------------- /web/images/Error401.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/Error401.png -------------------------------------------------------------------------------- /web/images/Error403.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/Error403.png -------------------------------------------------------------------------------- /web/images/Error404.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/Error404.png -------------------------------------------------------------------------------- /web/images/Facebook.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/Facebook.png -------------------------------------------------------------------------------- /web/images/TrashRed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/TrashRed.png -------------------------------------------------------------------------------- /web/images/Twitter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/Twitter.png -------------------------------------------------------------------------------- /web/images/icoCopy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/icoCopy.png -------------------------------------------------------------------------------- /web/images/icoNews.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/icoNews.png -------------------------------------------------------------------------------- /web/images/icoTrash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/icoTrash.png -------------------------------------------------------------------------------- /web/images/iconRead.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/iconRead.png -------------------------------------------------------------------------------- /web/images/iconSend.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/iconSend.png -------------------------------------------------------------------------------- /web/images/Active base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/Active base.png -------------------------------------------------------------------------------- /web/images/Desapoinhat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/Desapoinhat.png -------------------------------------------------------------------------------- /web/images/SergeEmail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/SergeEmail.png -------------------------------------------------------------------------------- /web/images/Trash base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/Trash base.png -------------------------------------------------------------------------------- /web/images/captcha/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/1.png -------------------------------------------------------------------------------- /web/images/captcha/10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/10.png -------------------------------------------------------------------------------- /web/images/captcha/11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/11.png -------------------------------------------------------------------------------- /web/images/captcha/12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/12.png -------------------------------------------------------------------------------- /web/images/captcha/13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/13.png -------------------------------------------------------------------------------- /web/images/captcha/14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/14.png -------------------------------------------------------------------------------- /web/images/captcha/15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/15.png -------------------------------------------------------------------------------- /web/images/captcha/16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/16.png -------------------------------------------------------------------------------- /web/images/captcha/17.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/17.png -------------------------------------------------------------------------------- /web/images/captcha/18.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/18.png -------------------------------------------------------------------------------- /web/images/captcha/19.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/19.png -------------------------------------------------------------------------------- /web/images/captcha/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/2.png -------------------------------------------------------------------------------- /web/images/captcha/20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/20.png -------------------------------------------------------------------------------- /web/images/captcha/21.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/21.png -------------------------------------------------------------------------------- /web/images/captcha/22.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/22.png -------------------------------------------------------------------------------- /web/images/captcha/23.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/23.png -------------------------------------------------------------------------------- /web/images/captcha/24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/24.png -------------------------------------------------------------------------------- /web/images/captcha/25.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/25.png -------------------------------------------------------------------------------- /web/images/captcha/26.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/26.png -------------------------------------------------------------------------------- /web/images/captcha/27.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/27.png -------------------------------------------------------------------------------- /web/images/captcha/28.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/28.png -------------------------------------------------------------------------------- /web/images/captcha/29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/29.png -------------------------------------------------------------------------------- /web/images/captcha/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/3.png -------------------------------------------------------------------------------- /web/images/captcha/30.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/30.png -------------------------------------------------------------------------------- /web/images/captcha/31.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/31.png -------------------------------------------------------------------------------- /web/images/captcha/32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/32.png -------------------------------------------------------------------------------- /web/images/captcha/33.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/33.png -------------------------------------------------------------------------------- /web/images/captcha/34.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/34.png -------------------------------------------------------------------------------- /web/images/captcha/35.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/35.png -------------------------------------------------------------------------------- /web/images/captcha/36.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/36.png -------------------------------------------------------------------------------- /web/images/captcha/37.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/37.png -------------------------------------------------------------------------------- /web/images/captcha/38.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/38.png -------------------------------------------------------------------------------- /web/images/captcha/39.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/39.png -------------------------------------------------------------------------------- /web/images/captcha/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/4.png -------------------------------------------------------------------------------- /web/images/captcha/40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/40.png -------------------------------------------------------------------------------- /web/images/captcha/41.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/41.png -------------------------------------------------------------------------------- /web/images/captcha/42.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/42.png -------------------------------------------------------------------------------- /web/images/captcha/43.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/43.png -------------------------------------------------------------------------------- /web/images/captcha/44.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/44.png -------------------------------------------------------------------------------- /web/images/captcha/45.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/45.png -------------------------------------------------------------------------------- /web/images/captcha/46.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/46.png -------------------------------------------------------------------------------- /web/images/captcha/47.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/47.png -------------------------------------------------------------------------------- /web/images/captcha/48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/48.png -------------------------------------------------------------------------------- /web/images/captcha/49.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/49.png -------------------------------------------------------------------------------- /web/images/captcha/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/5.png -------------------------------------------------------------------------------- /web/images/captcha/50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/50.png -------------------------------------------------------------------------------- /web/images/captcha/51.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/51.png -------------------------------------------------------------------------------- /web/images/captcha/52.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/52.png -------------------------------------------------------------------------------- /web/images/captcha/6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/6.png -------------------------------------------------------------------------------- /web/images/captcha/7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/7.png -------------------------------------------------------------------------------- /web/images/captcha/8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/8.png -------------------------------------------------------------------------------- /web/images/captcha/9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/captcha/9.png -------------------------------------------------------------------------------- /web/images/icoAddPack.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/icoAddPack.png -------------------------------------------------------------------------------- /web/images/icoPatents.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/icoPatents.png -------------------------------------------------------------------------------- /web/images/icoPremium.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/icoPremium.png -------------------------------------------------------------------------------- /web/images/icoSciences.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/icoSciences.png -------------------------------------------------------------------------------- /web/images/icoSetting.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/icoSetting.png -------------------------------------------------------------------------------- /web/images/icoTrashRed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/icoTrashRed.png -------------------------------------------------------------------------------- /web/images/iconFuncRss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/iconFuncRss.png -------------------------------------------------------------------------------- /web/images/iconFuncSMS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/iconFuncSMS.png -------------------------------------------------------------------------------- /web/images/iconNotSend.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/iconNotSend.png -------------------------------------------------------------------------------- /web/images/iconUnread.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/iconUnread.png -------------------------------------------------------------------------------- /web/images/navWikiIco.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/navWikiIco.png -------------------------------------------------------------------------------- /web/images/screenPhone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/screenPhone.png -------------------------------------------------------------------------------- /web/images/serge_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/serge_logo.png -------------------------------------------------------------------------------- /web/images/Activate base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/Activate base.png -------------------------------------------------------------------------------- /web/images/Desactivated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/Desactivated.png -------------------------------------------------------------------------------- /web/images/Disable base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/Disable base.png -------------------------------------------------------------------------------- /web/images/TrashRed base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/TrashRed base.png -------------------------------------------------------------------------------- /web/images/icoAddNewPack.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/icoAddNewPack.png -------------------------------------------------------------------------------- /web/images/iconFuncMail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/iconFuncMail.png -------------------------------------------------------------------------------- /web/images/iconFuncStats.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/iconFuncStats.png -------------------------------------------------------------------------------- /web/images/iconFuncWiki.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/iconFuncWiki.png -------------------------------------------------------------------------------- /web/images/iconWikiLight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/iconWikiLight.png -------------------------------------------------------------------------------- /web/images/navResultIco.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/navResultIco.png -------------------------------------------------------------------------------- /web/images/SERGE_logo_norm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/SERGE_logo_norm.png -------------------------------------------------------------------------------- /web/images/background/Earth.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background/Earth.png -------------------------------------------------------------------------------- /web/images/background/Sea01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background/Sea01.jpg -------------------------------------------------------------------------------- /web/images/background/Sea03.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background/Sea03.jpg -------------------------------------------------------------------------------- /web/images/background/dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background/dark.png -------------------------------------------------------------------------------- /web/images/background/intro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background/intro.png -------------------------------------------------------------------------------- /web/images/favicons/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/favicon.ico -------------------------------------------------------------------------------- /web/images/icoPackCreation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/icoPackCreation.png -------------------------------------------------------------------------------- /web/images/iconFuncHistory.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/iconFuncHistory.png -------------------------------------------------------------------------------- /web/images/iconFuncOption.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/iconFuncOption.png -------------------------------------------------------------------------------- /web/images/iconFuncPatent.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/iconFuncPatent.png -------------------------------------------------------------------------------- /web/images/iconFuncScience.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/iconFuncScience.png -------------------------------------------------------------------------------- /web/images/iconFuncTwitter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/iconFuncTwitter.png -------------------------------------------------------------------------------- /web/images/navSettingsIco.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/navSettingsIco.png -------------------------------------------------------------------------------- /web/images/navWikiIco base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/navWikiIco base.png -------------------------------------------------------------------------------- /web/images/CairnGit_logo_norm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/CairnGit_logo_norm.png -------------------------------------------------------------------------------- /web/images/Desactivated base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/Desactivated base.png -------------------------------------------------------------------------------- /web/images/TrashDesactivated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/TrashDesactivated.png -------------------------------------------------------------------------------- /web/images/background/Sea02.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background/Sea02.jpeg -------------------------------------------------------------------------------- /web/images/background/Sea04.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background/Sea04.jpeg -------------------------------------------------------------------------------- /web/images/background/Space02.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background/Space02.jpg -------------------------------------------------------------------------------- /web/images/navResultIco base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/navResultIco base.png -------------------------------------------------------------------------------- /doc/Communique_de_presse_Serge.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Communique_de_presse_Serge.pdf -------------------------------------------------------------------------------- /doc/Screenshot_Serge/Serge_Actu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/Serge_Actu.png -------------------------------------------------------------------------------- /web/controller/logout.php: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /web/images/SERGE_logo_norm_big.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/SERGE_logo_norm_big.png -------------------------------------------------------------------------------- /web/images/SERGE_logo_norm_nav.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/SERGE_logo_norm_nav.png -------------------------------------------------------------------------------- /web/images/background/Japan01.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background/Japan01.jpeg -------------------------------------------------------------------------------- /web/images/background/Nature01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background/Nature01.jpg -------------------------------------------------------------------------------- /web/images/background/Nature02.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background/Nature02.jpg -------------------------------------------------------------------------------- /web/images/background/Nature03.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background/Nature03.jpeg -------------------------------------------------------------------------------- /web/images/background/Nature04.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background/Nature04.jpeg -------------------------------------------------------------------------------- /web/images/background/Nature05.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background/Nature05.jpg -------------------------------------------------------------------------------- /web/images/background/Nature06.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background/Nature06.jpeg -------------------------------------------------------------------------------- /web/images/background/Space01.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background/Space01.jpeg -------------------------------------------------------------------------------- /web/images/favicons/apple-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/apple-icon.png -------------------------------------------------------------------------------- /web/images/icoTrashDesactivated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/icoTrashDesactivated.png -------------------------------------------------------------------------------- /web/images/pictogrammes/pictoMdp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/pictogrammes/pictoMdp.png -------------------------------------------------------------------------------- /web/images/pictogrammes/rcupdate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/pictogrammes/rcupdate.png -------------------------------------------------------------------------------- /web/images/pictogrammes/redcross.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/pictogrammes/redcross.png -------------------------------------------------------------------------------- /web/logout.php: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /doc/Screenshot_Serge/Serge_Brevet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/Serge_Brevet.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/Serge_Science.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/Serge_Science.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/Serge_results.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/Serge_results.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/icône/Disable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/icône/Disable.png -------------------------------------------------------------------------------- /web/images/Cairn_Devices_logo_norm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/Cairn_Devices_logo_norm.png -------------------------------------------------------------------------------- /web/images/SERGE_logo_norm_footer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/SERGE_logo_norm_footer.png -------------------------------------------------------------------------------- /web/images/TrashDesactivated base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/TrashDesactivated base.png -------------------------------------------------------------------------------- /web/images/background/Mountains01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background/Mountains01.jpg -------------------------------------------------------------------------------- /web/images/background/Mountains02.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background/Mountains02.jpeg -------------------------------------------------------------------------------- /web/images/background/intro_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background/intro_small.png -------------------------------------------------------------------------------- /web/images/favicons/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/favicon-16x16.png -------------------------------------------------------------------------------- /web/images/favicons/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/favicon-32x32.png -------------------------------------------------------------------------------- /web/images/favicons/favicon-96x96.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/favicon-96x96.png -------------------------------------------------------------------------------- /web/images/favicons/ms-icon-70x70.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/ms-icon-70x70.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/Serge_Mail_Num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/Serge_Mail_Num.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/Serge_Mail_cut.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/Serge_Mail_cut.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/icône/Doc_Wiki.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/icône/Doc_Wiki.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/icône/TrashRed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/icône/TrashRed.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/icône/bug_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/icône/bug_icon.png -------------------------------------------------------------------------------- /web/images/background/Skyscrapers01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background/Skyscrapers01.jpg -------------------------------------------------------------------------------- /web/images/background_preview/Sea01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background_preview/Sea01.jpg -------------------------------------------------------------------------------- /web/images/background_preview/Sea02.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background_preview/Sea02.jpeg -------------------------------------------------------------------------------- /web/images/background_preview/Sea03.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background_preview/Sea03.jpg -------------------------------------------------------------------------------- /web/images/background_preview/Sea04.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background_preview/Sea04.jpeg -------------------------------------------------------------------------------- /web/images/background_preview/Space02.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background_preview/Space02.jpg -------------------------------------------------------------------------------- /web/images/favicons/apple-icon-57x57.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/apple-icon-57x57.png -------------------------------------------------------------------------------- /web/images/favicons/apple-icon-60x60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/apple-icon-60x60.png -------------------------------------------------------------------------------- /web/images/favicons/apple-icon-72x72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/apple-icon-72x72.png -------------------------------------------------------------------------------- /web/images/favicons/apple-icon-76x76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/apple-icon-76x76.png -------------------------------------------------------------------------------- /web/images/favicons/ms-icon-144x144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/ms-icon-144x144.png -------------------------------------------------------------------------------- /web/images/favicons/ms-icon-150x150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/ms-icon-150x150.png -------------------------------------------------------------------------------- /web/images/favicons/ms-icon-310x310.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/ms-icon-310x310.png -------------------------------------------------------------------------------- /web/images/pictogrammes/Picto_viewW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/pictogrammes/Picto_viewW.png -------------------------------------------------------------------------------- /web/images/pictogrammes/pictoLanguage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/pictogrammes/pictoLanguage.png -------------------------------------------------------------------------------- /web/images/pictogrammes/pictoPremium.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/pictogrammes/pictoPremium.png -------------------------------------------------------------------------------- /web/images/pictogrammes/redAlertPicto.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/pictogrammes/redAlertPicto.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/Serge_Science_Num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/Serge_Science_Num.png -------------------------------------------------------------------------------- /web/images/background_preview/Japan01.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background_preview/Japan01.jpeg -------------------------------------------------------------------------------- /web/images/background_preview/Nature01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background_preview/Nature01.jpg -------------------------------------------------------------------------------- /web/images/background_preview/Nature02.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background_preview/Nature02.jpg -------------------------------------------------------------------------------- /web/images/background_preview/Nature03.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background_preview/Nature03.jpeg -------------------------------------------------------------------------------- /web/images/background_preview/Nature04.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background_preview/Nature04.jpeg -------------------------------------------------------------------------------- /web/images/background_preview/Nature05.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background_preview/Nature05.jpg -------------------------------------------------------------------------------- /web/images/background_preview/Nature06.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background_preview/Nature06.jpeg -------------------------------------------------------------------------------- /web/images/background_preview/Space01.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background_preview/Space01.jpeg -------------------------------------------------------------------------------- /web/images/favicons/android-icon-36x36.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/android-icon-36x36.png -------------------------------------------------------------------------------- /web/images/favicons/android-icon-48x48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/android-icon-48x48.png -------------------------------------------------------------------------------- /web/images/favicons/android-icon-72x72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/android-icon-72x72.png -------------------------------------------------------------------------------- /web/images/favicons/android-icon-96x96.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/android-icon-96x96.png -------------------------------------------------------------------------------- /web/images/favicons/apple-icon-114x114.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/apple-icon-114x114.png -------------------------------------------------------------------------------- /web/images/favicons/apple-icon-120x120.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/apple-icon-120x120.png -------------------------------------------------------------------------------- /web/images/favicons/apple-icon-144x144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/apple-icon-144x144.png -------------------------------------------------------------------------------- /web/images/favicons/apple-icon-152x152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/apple-icon-152x152.png -------------------------------------------------------------------------------- /web/images/favicons/apple-icon-180x180.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/apple-icon-180x180.png -------------------------------------------------------------------------------- /web/images/pictogrammes/pictoWallpaper.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/pictogrammes/pictoWallpaper.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/SERGE_logo_norm_big.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/SERGE_logo_norm_big.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/Serge_Ajout_Pack_Num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/Serge_Ajout_Pack_Num.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/Serge_Resultats_Num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/Serge_Resultats_Num.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/icône/Doc_Wiki_Mail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/icône/Doc_Wiki_Mail.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/icône/Doc_validation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/icône/Doc_validation.png -------------------------------------------------------------------------------- /web/images/background_preview/Mountains01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background_preview/Mountains01.jpg -------------------------------------------------------------------------------- /web/images/background_preview/Mountains02.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background_preview/Mountains02.jpeg -------------------------------------------------------------------------------- /web/images/favicons/android-icon-144x144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/android-icon-144x144.png -------------------------------------------------------------------------------- /web/images/favicons/android-icon-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/android-icon-192x192.png -------------------------------------------------------------------------------- /web/images/favicons/apple-icon-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/favicons/apple-icon-precomposed.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/Serge_Creation_Pack_Num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/Serge_Creation_Pack_Num.png -------------------------------------------------------------------------------- /web/images/SERGE_logo_final_dark_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/SERGE_logo_final_dark_background.png -------------------------------------------------------------------------------- /web/images/background_preview/Skyscrapers01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/web/images/background_preview/Skyscrapers01.jpg -------------------------------------------------------------------------------- /doc/Screenshot_Serge/Serge_parametrage_actu_num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/Serge_parametrage_actu_num.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/Serge_parametrage_premium.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/Serge_parametrage_premium.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/icône/Doc_Ajout_WatchPack.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/icône/Doc_Ajout_WatchPack.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/icône/Doc_retour_chariot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/icône/Doc_retour_chariot.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/Serge_parametrage_infos_num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/Serge_parametrage_infos_num.png -------------------------------------------------------------------------------- /web/view/body/error401.php: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 | 5 |
6 | 7 |
8 | -------------------------------------------------------------------------------- /web/view/body/error403.php: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 | 5 |
6 | 7 |
8 | -------------------------------------------------------------------------------- /web/view/body/error404.php: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 | 5 |
6 | 7 |
8 | -------------------------------------------------------------------------------- /doc/Screenshot_Serge/English_ver/Serge_settings_num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/English_ver/Serge_settings_num.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/Serge_parametrage_reglages_num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/Serge_parametrage_reglages_num.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/Serge_parametrage_pack_veille_num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/Serge_parametrage_pack_veille_num.png -------------------------------------------------------------------------------- /web/security.txt: -------------------------------------------------------------------------------- 1 | Contact: security@cairn-devices.eu 2 | Encryption: https://raw.githubusercontent.com/Gspohu/security/master/pgp-key.txt 3 | Acknowledgements: 4 | -------------------------------------------------------------------------------- /doc/Screenshot_Serge/English_ver/Serge_add_watchpack_num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/English_ver/Serge_add_watchpack_num.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/English_ver/Serge_patent_management.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/English_ver/Serge_patent_management.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/English_ver/Serge_settings_email_num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/English_ver/Serge_settings_email_num.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/English_ver/Serge_watch_result_num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/English_ver/Serge_watch_result_num.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/Serge_parametrage_reglages_email_num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/Serge_parametrage_reglages_email_num.png -------------------------------------------------------------------------------- /web/rss.php: -------------------------------------------------------------------------------- 1 | 6 | 9 | -------------------------------------------------------------------------------- /doc/Screenshot_Serge/English_ver/Serge_create_watchpack_num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/English_ver/Serge_create_watchpack_num.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/English_ver/Serge_news_management_num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/English_ver/Serge_news_management_num.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/English_ver/Serge_premium_information.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/English_ver/Serge_premium_information.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/English_ver/Serge_account_information_num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/English_ver/Serge_account_information_num.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/English_ver/Serge_scientific_management_num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/English_ver/Serge_scientific_management_num.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/English_ver/Serge_settings_sms_privacy_num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/English_ver/Serge_settings_sms_privacy_num.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/English_ver/Serge_watchpack_management_num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/English_ver/Serge_watchpack_management_num.png -------------------------------------------------------------------------------- /doc/Screenshot_Serge/Serge_parametrage_reglages_sms_vie_privee_num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ABHC/SERGE/HEAD/doc/Screenshot_Serge/Serge_parametrage_reglages_sms_vie_privee_num.png -------------------------------------------------------------------------------- /web/js/confirmDeleteAccount.js: -------------------------------------------------------------------------------- 1 | function confirmDAccount(message, token) 2 | { 3 | if(confirm(message)) 4 | { 5 | window.open("deleteAccount?token="+token, "", ""); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /web/robots.txt: -------------------------------------------------------------------------------- 1 | User-agent: * 2 | Disallow: /rss* 3 | Disallow: /redirect* 4 | Disallow: /purchase* 5 | Disallow: /result* 6 | Disallow: /setting* 7 | Disallow: /watchPack* 8 | Disallow: /logout* 9 | -------------------------------------------------------------------------------- /web/view/body/addLinkInWiki.php: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 |
5 | 6 |
7 |
8 | -------------------------------------------------------------------------------- /web/model/captcha.php: -------------------------------------------------------------------------------- 1 | query('SELECT * FROM captcha_serge'); 3 | $cpt=0; 4 | while ($donnees = $result->fetch()) 5 | { 6 | $captcha[$cpt]=$donnees['name']; 7 | $cpt++; 8 | } 9 | $result->closeCursor(); 10 | ?> 11 | -------------------------------------------------------------------------------- /web/js/copyToClipboard.js: -------------------------------------------------------------------------------- 1 | function copyToClipboard(type) 2 | { 3 | var btnCopy = document.getElementById("copy"+type); 4 | var toCopy = document.getElementById("toCopy"+type); 5 | btnCopy.title = "Copied !"; 6 | toCopy.select(); 7 | document.execCommand("copy"); 8 | } 9 | -------------------------------------------------------------------------------- /web/model/readOwnerResult.php: -------------------------------------------------------------------------------- 1 | prepare("$QUERYRESULT"); 4 | $req->execute($arrayValues); 5 | $readOwnerResults = $req->fetchAll(); 6 | $nbResults = $req->rowCount(); 7 | $req->closeCursor(); 8 | ?> 9 | -------------------------------------------------------------------------------- /web/controller/generateNonce.php: -------------------------------------------------------------------------------- 1 | 12 | -------------------------------------------------------------------------------- /web/controller/wiki.php: -------------------------------------------------------------------------------- 1 | 16 | -------------------------------------------------------------------------------- /web/images/favicons/browserconfig.xml: -------------------------------------------------------------------------------- 1 | 2 | #ffffff -------------------------------------------------------------------------------- /web/controller/error404.php: -------------------------------------------------------------------------------- 1 | 15 | -------------------------------------------------------------------------------- /web/controller/legal.php: -------------------------------------------------------------------------------- 1 | 17 | -------------------------------------------------------------------------------- /web/model/readColumns.php: -------------------------------------------------------------------------------- 1 | prepare("SHOW columns FROM `equivalence_science_serge`"); 6 | $req->execute(); 7 | $columnsNames = $req->fetchAll(); 8 | $req->closeCursor(); 9 | } 10 | catch (Exception $e) 11 | { 12 | // Error in log 13 | error_log($e->getMessage(), 0); 14 | } 15 | ?> 16 | -------------------------------------------------------------------------------- /database_demo/admin_table_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `admin_table_serge` ( 5 | `id` int(11) NOT NULL, 6 | `admin` text COLLATE utf8mb4_bin NOT NULL, 7 | `email` text COLLATE utf8mb4_bin NOT NULL 8 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 9 | 10 | SET NAMES utf8mb4; 11 | -------------------------------------------------------------------------------- /web/view/body/deleteAccount.php: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 |
5 |

6 | 7 |
8 |
9 | -------------------------------------------------------------------------------- /database_demo/newsletter_table_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `newsletter_table_serge` ( 5 | `id` int(11) NOT NULL AUTO_INCREMENT, 6 | `email` text COLLATE utf8mb4_bin NOT NULL, 7 | `signup_date` int(11) NOT NULL, 8 | PRIMARY KEY (id) 9 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 10 | 11 | SET NAMES utf8mb4; 12 | -------------------------------------------------------------------------------- /web/controller/addLinkInWiki.php: -------------------------------------------------------------------------------- 1 | 19 | -------------------------------------------------------------------------------- /web/js/updatePrice.js: -------------------------------------------------------------------------------- 1 | function updatePrice(duration, monthPrice) 2 | { 3 | function escapeHTML(unsafe) 4 | { 5 | return unsafe 6 | .replace(/&/g, "&") 7 | .replace(//g, ">") 9 | .replace(/"/g, """) 10 | .replace(/'/g, "'"); 11 | } 12 | 13 | var price = duration * monthPrice; 14 | 15 | document.getElementById("price").innerHTML = escapeHTML(`${price}€`); 16 | } 17 | -------------------------------------------------------------------------------- /database_demo/queries_science_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `queries_science_serge` ( 5 | `id` int(11) NOT NULL AUTO_INCREMENT, 6 | `query_serge` text COLLATE utf8mb4_bin NOT NULL, 7 | `owners` text COLLATE utf8mb4_bin NOT NULL, 8 | `active` int(11) NOT NULL, 9 | PRIMARY KEY (id) 10 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 11 | 12 | SET NAMES utf8mb4; 13 | -------------------------------------------------------------------------------- /database_demo/sms_tokens.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `sms_tokens` ( 5 | `endpoint` text COLLATE utf8mb4_bin NOT NULL, 6 | `application_key` text COLLATE utf8mb4_bin NOT NULL, 7 | `application_secret` text COLLATE utf8mb4_bin NOT NULL, 8 | `consumer_key` text COLLATE utf8mb4_bin NOT NULL 9 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 10 | 11 | SET NAMES utf8mb4; 12 | -------------------------------------------------------------------------------- /database_demo/watch_pack_queries_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `watch_pack_queries_serge` ( 5 | `id` int(11) NOT NULL AUTO_INCREMENT, 6 | `pack_id` int(11) NOT NULL, 7 | `query` text COLLATE utf8mb4_bin NOT NULL, 8 | `source` text COLLATE utf8mb4_bin NOT NULL, 9 | PRIMARY KEY (id) 10 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 11 | 12 | SET NAMES utf8mb4; 13 | -------------------------------------------------------------------------------- /web/controller/sendmail.php: -------------------------------------------------------------------------------- 1 | 16 | -------------------------------------------------------------------------------- /extensions_tables/target_trweet_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `target_trweet_serge` ( 5 | `id` int(11) NOT NULL, 6 | `target_and_query` text COLLATE utf8mb4_bin NOT NULL, 7 | `owners` text COLLATE utf8mb4_bin NOT NULL, 8 | `last_launch` int(11) NOT NULL, 9 | `active` int(11) NOT NULL 10 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 11 | 12 | SET NAMES utf8mb4; 13 | -------------------------------------------------------------------------------- /database_demo/keyword_news_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `keyword_news_serge` ( 5 | `id` int(11) NOT NULL AUTO_INCREMENT, 6 | `keyword` text COLLATE utf8mb4_bin NOT NULL, 7 | `applicable_owners_sources` text COLLATE utf8mb4_bin NOT NULL, 8 | `active` int(11) NOT NULL, 9 | PRIMARY KEY (id) 10 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 11 | 12 | SET NAMES utf8mb4; 13 | -------------------------------------------------------------------------------- /database_demo/trweet_tokens.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `trweet_tokens` ( 5 | `consumer_key` text COLLATE utf8mb4_bin NOT NULL, 6 | `consumer_secret` text COLLATE utf8mb4_bin NOT NULL, 7 | `access_token` text COLLATE utf8mb4_bin NOT NULL, 8 | `access_token_secret` text COLLATE utf8mb4_bin NOT NULL 9 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 10 | 11 | SET NAMES utf8mb4; 12 | -------------------------------------------------------------------------------- /web/languages.php: -------------------------------------------------------------------------------- 1 | 20 | -------------------------------------------------------------------------------- /web/redirect.php: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 9 | 10 | 11 | Serge : redirect to your link 12 | 13 | 16 | 17 | 18 | 19 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /database_demo/stripe_table_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `stripe_table_serge` ( 5 | `id` int(11) NOT NULL AUTO_INCREMENT, 6 | `account_name` text COLLATE utf8mb4_bin NOT NULL, 7 | `secret_key` text COLLATE utf8mb4_bin NOT NULL, 8 | `publishable_key` text COLLATE utf8mb4_bin NOT NULL, 9 | PRIMARY KEY (id) 10 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 11 | 12 | SET NAMES utf8mb4; 13 | -------------------------------------------------------------------------------- /database_demo/queries_wipo_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `queries_wipo_serge` ( 5 | `id` int(11) NOT NULL AUTO_INCREMENT, 6 | `query` text COLLATE utf8mb4_bin NOT NULL, 7 | `legal_research` tinyint(1) DEFAULT 3, 8 | `owners` text COLLATE utf8mb4_bin NOT NULL, 9 | `active` int(11) NOT NULL, 10 | PRIMARY KEY (id) 11 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 12 | 13 | SET NAMES utf8mb4; 14 | -------------------------------------------------------------------------------- /web/controller/accessLimitedToSignInPeople.php: -------------------------------------------------------------------------------- 1 | 16 | -------------------------------------------------------------------------------- /database_demo/price_table_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `price_table_serge` ( 5 | `id` int(11) NOT NULL AUTO_INCREMENT, 6 | `price` int(11) NOT NULL, 7 | `currency` text COLLATE utf8mb4_bin NOT NULL, 8 | `type` text COLLATE utf8mb4_bin NOT NULL, 9 | PRIMARY KEY (id) 10 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 11 | 12 | INSERT INTO `price_table_serge` VALUES (1,1,'EUR','month'); 13 | 14 | SET NAMES utf8mb4; 15 | -------------------------------------------------------------------------------- /extensions_tables/queries_trweet_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `queries_trweet_serge` ( 5 | `id` int(11) NOT NULL, 6 | `query` text COLLATE utf8mb4_bin NOT NULL, 7 | `owners` text COLLATE utf8mb4_bin NOT NULL, 8 | `geo` tinyint(1) NOT NULL, 9 | `lang` text COLLATE utf8mb4_bin, 10 | `last_launch` int(11) NOT NULL, 11 | `active` int(11) NOT NULL 12 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 13 | 14 | SET NAMES utf8mb4; 15 | -------------------------------------------------------------------------------- /database_demo/premium_code_table_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `premium_code_table_serge` ( 5 | `id` int(11) NOT NULL AUTO_INCREMENT, 6 | `code` text COLLATE utf8mb4_bin NOT NULL, 7 | `creation_date` int(11) NOT NULL, 8 | `users` text COLLATE utf8mb4_bin NOT NULL, 9 | `duration_premium` int(11) NOT NULL, 10 | `expiration_date` int(11) NOT NULL, 11 | PRIMARY KEY (id) 12 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 13 | 14 | SET NAMES utf8mb4; 15 | -------------------------------------------------------------------------------- /database_demo/rss_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `rss_serge` ( 5 | `id` int(11) NOT NULL AUTO_INCREMENT, 6 | `link` text COLLATE utf8mb4_bin NOT NULL, 7 | `name` text COLLATE utf8mb4_bin DEFAULT NULL, 8 | `favicon` blob, 9 | `owners` text COLLATE utf8mb4_bin NOT NULL, 10 | `etag` text COLLATE utf8mb4_bin DEFAULT NULL, 11 | `active` int(11) NOT NULL, 12 | PRIMARY KEY (id) 13 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 14 | 15 | SET NAMES utf8mb4; 16 | -------------------------------------------------------------------------------- /web/js/piwik/piwik.js: -------------------------------------------------------------------------------- 1 | var _paq = _paq || []; 2 | /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ 3 | _paq.push(['trackPageView']); 4 | _paq.push(['enableLinkTracking']); 5 | (function() { 6 | var u="//piwikDomainName/"; 7 | _paq.push(['setTrackerUrl', u+'piwik.php']); 8 | _paq.push(['setSiteId', '1']); 9 | var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; 10 | g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s); 11 | })(); 12 | -------------------------------------------------------------------------------- /database_demo/patents_sources_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `patents_sources_serge` ( 5 | `id` int(11) NOT NULL AUTO_INCREMENT, 6 | `link` text COLLATE utf8mb4_bin NOT NULL, 7 | `name` text COLLATE utf8mb4_bin DEFAULT NULL, 8 | PRIMARY KEY (id) 9 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 10 | 11 | SET NAMES utf8mb4; 12 | 13 | INSERT INTO `patents_sources_serge` (`id`, `link`, `name`) VALUES 14 | (1, 'http://www.wipo.int', 'The World Intellectual Property Organization (WIPO)'); 15 | -------------------------------------------------------------------------------- /database_demo/miscellaneous_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `miscellaneous_serge` ( 5 | `name` text COLLATE utf8mb4_bin NOT NULL, 6 | `value` text COLLATE utf8mb4_bin NOT NULL 7 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 8 | 9 | INSERT INTO `miscellaneous_serge` (`name`, `value`) VALUES 10 | ('timelog', UNIX_TIMESTAMP()), 11 | ('feedtitles_refresh', UNIX_TIMESTAMP()), 12 | ('domain', ''), 13 | ('extension', ''), 14 | ('support_email', 'support@your-domain.tld'); 15 | 16 | SET NAMES utf8mb4; 17 | -------------------------------------------------------------------------------- /web/legal.php: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 | 11 | 12 | Serge : your news monitoring 13 | 14 | 17 | 18 | 19 | 20 | 21 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /web/result.php: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 | 11 | 12 | Serge : your news monitoring 13 | 14 | 17 | 18 | 19 | 20 | 21 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /web/error401.php: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 | 11 | 12 | Serge : your news monitoring 13 | 14 | 17 | 18 | 19 | 20 | 21 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /web/error403.php: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 | 11 | 12 | Serge : your news monitoring 13 | 14 | 17 | 18 | 19 | 20 | 21 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /web/error404.php: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 | 11 | 12 | Serge : your news monitoring 13 | 14 | 17 | 18 | 19 | 20 | 21 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /database_demo/purchase_table_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `purchase_table_serge` ( 5 | `id` int(11) NOT NULL AUTO_INCREMENT, 6 | `user_id` int(11) NOT NULL, 7 | `purchase_date` int(11) NOT NULL, 8 | `duration_premium` int(11) NOT NULL, 9 | `invoice_number` text COLLATE utf8mb4_bin NOT NULL, 10 | `price` int(11) NOT NULL, 11 | `premium_code_id` int(11) NOT NULL, 12 | `bank_details` text COLLATE utf8mb4_bin NOT NULL, 13 | PRIMARY KEY (id) 14 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 15 | 16 | SET NAMES utf8mb4; 17 | -------------------------------------------------------------------------------- /web/addLinkInWiki.php: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 | 11 | 12 | Serge : your news monitoring 13 | 14 | 17 | 18 | 19 | 20 | 21 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /web/bug.php: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 | 11 | 12 | Serge : your news monitoring 13 | 14 | 17 | 18 | 19 | 20 | 21 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /web/index.php: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 | 11 | 12 | Serge : your news monitoring 13 | 14 | 17 | 18 | 19 | 20 | 21 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /extensions_tables/geo_trweet_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `geo_trweet_serge` ( 5 | `id` int(11) NOT NULL AUTO_INCREMENT, 6 | `query_id` text COLLATE utf8mb4_bin NOT NULL, 7 | `owners` text COLLATE utf8mb4_bin NOT NULL, 8 | `trweet_id` text COLLATE utf8mb4_bin NOT NULL, 9 | `latitude` DECIMAL(10,7) NOT NULL, 10 | `longitude` DECIMAL(10,7) NOT NULL, 11 | `country` text COLLATE utf8mb4_bin NOT NULL, 12 | `date` text COLLATE utf8mb4_bin, 13 | PRIMARY KEY (id) 14 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 15 | 16 | SET NAMES utf8mb4; 17 | -------------------------------------------------------------------------------- /web/connection.php: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 | 11 | 12 | Serge : your news monitoring 13 | 14 | 17 | 18 | 19 | 20 | 21 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /web/purchase.php: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 | 11 | 12 | Serge : your news monitoring 13 | 14 | 15 | 18 | 19 | 20 | 21 | 22 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /web/deleteAccount.php: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 | 11 | 12 | Serge : your news monitoring 13 | 14 | 17 | 18 | 19 | 20 | 21 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /extensions_tables/result_trweet_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `result_trweet_serge` ( 5 | `id` int(11) NOT NULL AUTO_INCREMENT, 6 | `query_id` text COLLATE utf8mb4_bin NOT NULL, 7 | `owners` text COLLATE utf8mb4_bin NOT NULL, 8 | `author` text COLLATE utf8mb4_bin NOT NULL, 9 | `tweet` text COLLATE utf8mb4_bin, 10 | `date` text COLLATE utf8mb4_bin, 11 | `likes` int(11) NOT NULL, 12 | `retweets` int(11) NOT NULL, 13 | `link` text COLLATE utf8mb4_bin NOT NULL, 14 | PRIMARY KEY (id) 15 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 16 | 17 | SET NAMES utf8mb4; 18 | -------------------------------------------------------------------------------- /web/workinprogress.php: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 | 11 | 12 | Serge : your news monitoring 13 | 14 | 15 | 18 | 19 | 20 | 21 | 22 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /extensions_tables/timeline_trweet_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `timeline_trweet_serge` ( 5 | `id` int(11) NOT NULL AUTO_INCREMENT, 6 | `query_id` text COLLATE utf8mb4_bin NOT NULL, 7 | `owners` text COLLATE utf8mb4_bin NOT NULL, 8 | `author` text COLLATE utf8mb4_bin NOT NULL, 9 | `tweet` text COLLATE utf8mb4_bin, 10 | `date` text COLLATE utf8mb4_bin, 11 | `likes` int(11) NOT NULL, 12 | `retweets` int(11) NOT NULL, 13 | `link` text COLLATE utf8mb4_bin NOT NULL, 14 | PRIMARY KEY (id) 15 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 16 | 17 | SET NAMES utf8mb4; 18 | -------------------------------------------------------------------------------- /web/view/body/workinprogress.php: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 | 5 |
6 |
Stay tuned, we are coming soon
7 |
Cairn Devices
8 |
9 | 10 | 11 | 12 |
13 | 14 | 15 |
16 |
17 | -------------------------------------------------------------------------------- /web/watchPack.php: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 | 11 | 12 | Serge : your news monitoring 13 | 14 | 15 | 16 | 19 | 20 | 21 | 22 | 23 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /web/model/connection_sql.php: -------------------------------------------------------------------------------- 1 | PDO::ERRMODE_EXCEPTION)); 19 | } 20 | catch (Exception $e) 21 | { 22 | error_log('Error : ' . $e->getMessage()); 23 | die('Something happend : Sorry for the inconvenience'); 24 | } 25 | ?> 26 | -------------------------------------------------------------------------------- /web/model/get_text_var.php: -------------------------------------------------------------------------------- 1 | prepare("SELECT $language FROM text_content_serge WHERE index_name = :name"); 23 | $req->execute(array( 24 | 'name' => $name)); 25 | $result = $req->fetch(); 26 | $req->closeCursor(); 27 | 28 | return $result[$language]; 29 | } 30 | ?> 31 | -------------------------------------------------------------------------------- /web/model/get_text.php: -------------------------------------------------------------------------------- 1 | prepare("SELECT $language FROM text_content_serge WHERE index_name = :name"); 23 | $req->execute(array( 24 | 'name' => $name)); 25 | $result = $req->fetch(); 26 | $req->closeCursor(); 27 | 28 | echo $result[$language]; 29 | 30 | return 0; 31 | } 32 | ?> 33 | -------------------------------------------------------------------------------- /web/js/scrollPos.js: -------------------------------------------------------------------------------- 1 | // Keep scroll position 2 | document.onsubmit = function() 3 | { 4 | var $window = $(window); 5 | // Scroll position 6 | var scrollPosition = $window.scrollTop(); 7 | document.getElementById("scrollPos").value = scrollPosition; 8 | return true; 9 | }; 10 | 11 | //Onload 12 | $(document).ready( 13 | function() 14 | { 15 | var $window = $(window); 16 | var scrollPosition = document.getElementById("scrollPos").value; 17 | if (scrollPosition !== 0 || scrollPosition == null) 18 | { 19 | $window.scrollTop(scrollPosition); 20 | } 21 | } 22 | ); 23 | 24 | function autoSubmit(formTo) 25 | { 26 | var $window = $(window); 27 | // Scroll position 28 | var scrollPosition = $window.scrollTop(); 29 | document.getElementById("scrollPos").value = scrollPosition; 30 | formTo.submit(); 31 | return true; 32 | } 33 | -------------------------------------------------------------------------------- /web/model/goodActive.php: -------------------------------------------------------------------------------- 1 | query('SELECT id, applicable_owners_sources FROM keyword_news_serge WHERE 1'); 4 | $applicable_owners_sources = $req->fetchAll(); 5 | $req->closeCursor(); 6 | 7 | foreach ($applicable_owners_sources as $input_lines) 8 | { 9 | # Regarder nb source 10 | preg_match_all("/,[0-9]+/", $input_lines['applicable_owners_sources'], $output_array); 11 | 12 | $cpt = 0; 13 | while (isset($output_array[0][$cpt])) 14 | { 15 | $cpt ++; 16 | } 17 | # Update la BDD avec active = nb sources 18 | $req = $bdd->prepare('UPDATE keyword_news_serge SET active = :active WHERE id = :id'); 19 | $req->execute(array( 20 | 'active' => $cpt, 21 | 'id' => $input_lines['id'])); 22 | $req->closeCursor(); 23 | } 24 | ?> 25 | -------------------------------------------------------------------------------- /database_demo/watch_pack_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `watch_pack_serge` ( 5 | `id` int(11) NOT NULL AUTO_INCREMENT, 6 | `search_index` text COLLATE utf8mb4_bin DEFAULT NULL, 7 | `name` text COLLATE utf8mb4_bin NOT NULL, 8 | `description` text COLLATE utf8mb4_bin NOT NULL, 9 | `author` text COLLATE utf8mb4_bin NOT NULL, 10 | `users` text COLLATE utf8mb4_bin NOT NULL, 11 | `category` text COLLATE utf8mb4_bin NOT NULL, 12 | `language` text COLLATE utf8mb4_bin NOT NULL, 13 | `update_date` text COLLATE utf8mb4_bin NOT NULL, 14 | `rating` text COLLATE utf8mb4_bin DEFAULT NULL, 15 | PRIMARY KEY (id) 16 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 17 | 18 | SET NAMES utf8mb4; 19 | 20 | ALTER TABLE `watch_pack_serge` ADD FULLTEXT INDEX `search` (`search_index`); 21 | -------------------------------------------------------------------------------- /database_demo/result_news_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `result_news_serge` ( 5 | `id` int(11) NOT NULL AUTO_INCREMENT, 6 | `search_index` text COLLATE utf8mb4_bin DEFAULT NULL, 7 | `title` text COLLATE utf8mb4_bin NOT NULL, 8 | `link` text COLLATE utf8mb4_bin NOT NULL, 9 | `send_status` VARCHAR(8000) COLLATE utf8mb4_bin DEFAULT ',0,', 10 | `read_status` VARCHAR(8000) COLLATE utf8mb4_bin DEFAULT ',0,', 11 | `date` text COLLATE utf8mb4_bin DEFAULT NULL, 12 | `id_source` int(11) NOT NULL, 13 | `keyword_id` text COLLATE utf8mb4_bin NOT NULL, 14 | `owners` text COLLATE utf8mb4_bin NOT NULL, 15 | PRIMARY KEY (id) 16 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 17 | 18 | SET NAMES utf8mb4; 19 | 20 | ALTER TABLE `result_news_serge` ADD FULLTEXT INDEX `search` (`search_index`); 21 | -------------------------------------------------------------------------------- /database_demo/result_science_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `result_science_serge` ( 5 | `id` int(11) NOT NULL AUTO_INCREMENT, 6 | `search_index` text COLLATE utf8mb4_bin DEFAULT NULL, 7 | `title` text COLLATE utf8mb4_bin NOT NULL, 8 | `link` text COLLATE utf8mb4_bin NOT NULL, 9 | `send_status` VARCHAR(8000) COLLATE utf8mb4_bin DEFAULT ',0,', 10 | `read_status` VARCHAR(8000) COLLATE utf8mb4_bin DEFAULT ',0,', 11 | `date` text COLLATE utf8mb4_bin DEFAULT NULL, 12 | `id_source` int(11) NOT NULL, 13 | `query_id` text COLLATE utf8mb4_bin NOT NULL, 14 | `owners` text COLLATE utf8mb4_bin NOT NULL, 15 | PRIMARY KEY (id) 16 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 17 | 18 | SET NAMES utf8mb4; 19 | 20 | ALTER TABLE `result_science_serge` ADD FULLTEXT INDEX `search` (`search_index`); 21 | -------------------------------------------------------------------------------- /web/images/favicons/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "App", 3 | "icons": [ 4 | { 5 | "src": "\/android-icon-36x36.png", 6 | "sizes": "36x36", 7 | "type": "image\/png", 8 | "density": "0.75" 9 | }, 10 | { 11 | "src": "\/android-icon-48x48.png", 12 | "sizes": "48x48", 13 | "type": "image\/png", 14 | "density": "1.0" 15 | }, 16 | { 17 | "src": "\/android-icon-72x72.png", 18 | "sizes": "72x72", 19 | "type": "image\/png", 20 | "density": "1.5" 21 | }, 22 | { 23 | "src": "\/android-icon-96x96.png", 24 | "sizes": "96x96", 25 | "type": "image\/png", 26 | "density": "2.0" 27 | }, 28 | { 29 | "src": "\/android-icon-144x144.png", 30 | "sizes": "144x144", 31 | "type": "image\/png", 32 | "density": "3.0" 33 | }, 34 | { 35 | "src": "\/android-icon-192x192.png", 36 | "sizes": "192x192", 37 | "type": "image\/png", 38 | "density": "4.0" 39 | } 40 | ] 41 | } -------------------------------------------------------------------------------- /web/setting.php: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 | 11 | 12 | Serge : your news monitoring 13 | 14 | 15 | 16 | 17 | 18 | 19 | 22 | 23 | 24 | 25 | 26 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /web/css/legal.php: -------------------------------------------------------------------------------- 1 | 10 | 11 | .body 12 | { 13 | display: flex; 14 | flex-direction: column; 15 | justify-content: space-between; 16 | align-items: center; 17 | min-height: 100vh; 18 | color: #f9f9ff; 19 | } 20 | 21 | .background 22 | { 23 | position: fixed; 24 | top: 0; 25 | left: 0; 26 | margin: 0; 27 | width: 100%; 28 | height: 100vh; 29 | z-index: -1; 30 | background: url('../images/background/dark.png') center no-repeat; 31 | background-size: cover; 32 | } 33 | 34 | .subBackground 35 | { 36 | position: fixed; 37 | top: 0; 38 | left: 0; 39 | margin: 0; 40 | width: 100%; 41 | height: 100vh; 42 | z-index: -1; 43 | } 44 | 45 | .legalText 46 | { 47 | width: 80%; 48 | margin-top: 100px; 49 | } 50 | 51 | 54 | -------------------------------------------------------------------------------- /web/css/error401.php: -------------------------------------------------------------------------------- 1 | 10 | 11 | .background 12 | { 13 | position: fixed; 14 | top: 0; 15 | left: 0; 16 | margin: 0; 17 | width: 100%; 18 | height: 100vh; 19 | z-index: -1; 20 | background: url('../images/background/dark.png') center no-repeat; 21 | background-size: cover; 22 | } 23 | 24 | .subBackground 25 | { 26 | position: fixed; 27 | top: 0; 28 | left: 0; 29 | margin: 0; 30 | width: 100%; 31 | height: 100vh; 32 | z-index: -1; 33 | background-color: rgba(0, 0, 0, 0.1); 34 | } 35 | 36 | .body 37 | { 38 | position: relative; 39 | width: 100%; 40 | height: calc(100vh - 75px); 41 | margin: 0; 42 | background: url(../images/Error401.png) scroll no-repeat; 43 | background-size: contain; 44 | z-index: 1; 45 | } 46 | 47 | 50 | -------------------------------------------------------------------------------- /web/css/error403.php: -------------------------------------------------------------------------------- 1 | 10 | 11 | .background 12 | { 13 | position: fixed; 14 | top: 0; 15 | left: 0; 16 | margin: 0; 17 | width: 100%; 18 | height: 100vh; 19 | z-index: -1; 20 | background: url('../images/background/dark.png') center no-repeat; 21 | background-size: cover; 22 | } 23 | 24 | .subBackground 25 | { 26 | position: fixed; 27 | top: 0; 28 | left: 0; 29 | margin: 0; 30 | width: 100%; 31 | height: 100vh; 32 | z-index: -1; 33 | background-color: rgba(0, 0, 0, 0.1); 34 | } 35 | 36 | .body 37 | { 38 | position: relative; 39 | width: 100%; 40 | height: calc(100vh - 75px); 41 | margin: 0; 42 | background: url(../images/Error403.png) scroll no-repeat; 43 | background-size: contain; 44 | z-index: 1; 45 | } 46 | 47 | 50 | -------------------------------------------------------------------------------- /web/css/error404.php: -------------------------------------------------------------------------------- 1 | 10 | 11 | .background 12 | { 13 | position: fixed; 14 | top: 0; 15 | left: 0; 16 | margin: 0; 17 | width: 100%; 18 | height: 100vh; 19 | z-index: -1; 20 | background: url('../images/background/dark.png') center no-repeat; 21 | background-size: cover; 22 | } 23 | 24 | .subBackground 25 | { 26 | position: fixed; 27 | top: 0; 28 | left: 0; 29 | margin: 0; 30 | width: 100%; 31 | height: 100vh; 32 | z-index: -1; 33 | background-color: rgba(0, 0, 0, 0.1); 34 | } 35 | 36 | .body 37 | { 38 | position: relative; 39 | width: 100%; 40 | height: calc(100vh - 75px); 41 | margin: 0; 42 | background: url(../images/Error404.png) scroll center no-repeat; 43 | background-size: contain; 44 | z-index: 1; 45 | } 46 | 47 | 50 | -------------------------------------------------------------------------------- /web/view/nav/nav.php: -------------------------------------------------------------------------------- 1 | 36 | -------------------------------------------------------------------------------- /web/js/backgroundPreviewAsTitle.js: -------------------------------------------------------------------------------- 1 | var backgroundPreviewAsTitle = function() 2 | { 3 | var yCorner = -10; 4 | var xCorner = 20; 5 | 6 | $("#selectBackgroundPreview option").hover 7 | ( 8 | function(e) 9 | { 10 | $("body").append(""); 11 | $("#backgroundPreview") 12 | .css("top",(e.pageY - yCorner) + "px") 13 | .css("left",(e.pageX + xCorner) + "px") 14 | .fadeIn("fast"); 15 | }, 16 | 17 | // Remove image when image goes out of the right area 18 | function() 19 | { 20 | $("#backgroundPreview").remove(); 21 | } 22 | ); 23 | 24 | // Adapt image position to mouse position 25 | $("#selectBackgroundPreview option").mousemove 26 | ( 27 | function(e) 28 | { 29 | $("#backgroundPreview") 30 | .css("top",(e.pageY - yCorner) + "px") 31 | .css("left",(e.pageX + xCorner) + "px"); 32 | } 33 | ); 34 | }; 35 | 36 | //Onload 37 | window.onload = function() 38 | { 39 | backgroundPreviewAsTitle(); 40 | }; 41 | -------------------------------------------------------------------------------- /web/model/insert.php: -------------------------------------------------------------------------------- 1 | $value)); 19 | } 20 | 21 | # SQL request 22 | try 23 | { 24 | $req = $bdd->prepare("INSERT INTO $tableName ($INSERTvar) VALUES ($VALUESvar) $optional"); 25 | $req->execute($arrayValues); 26 | $req->closeCursor(); 27 | $execution = TRUE; 28 | 29 | if (!empty($redirectPage)) 30 | { 31 | header("Location: $redirectPage"); 32 | die(); 33 | } 34 | } 35 | catch (Exception $e) 36 | { 37 | $execution = FALSE; 38 | // Error in log 39 | error_log($e->getMessage(), 0); 40 | } 41 | 42 | return $execution; 43 | } 44 | ?> 45 | -------------------------------------------------------------------------------- /database_demo/result_patents_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `result_patents_serge` ( 5 | `id` int(11) NOT NULL AUTO_INCREMENT, 6 | `search_index` text COLLATE utf8mb4_bin DEFAULT NULL, 7 | `title` text COLLATE utf8mb4_bin NOT NULL, 8 | `link` text COLLATE utf8mb4_bin NOT NULL, 9 | `send_status` VARCHAR(8000) COLLATE utf8mb4_bin DEFAULT ',0,', 10 | `read_status` VARCHAR(8000) COLLATE utf8mb4_bin DEFAULT ',0,', 11 | `date` text COLLATE utf8mb4_bin DEFAULT NULL, 12 | `id_source` int(11) NOT NULL, 13 | `id_query_wipo` text COLLATE utf8mb4_bin NOT NULL, 14 | `owners` text COLLATE utf8mb4_bin NOT NULL, 15 | `legal_abstract` text COLLATE utf8mb4_bin DEFAULT NULL, 16 | `legal_status` text COLLATE utf8mb4_bin DEFAULT NULL, 17 | `lens_link` text COLLATE utf8mb4_bin DEFAULT NULL, 18 | `legal_check_date` double DEFAULT NULL, 19 | PRIMARY KEY (id) 20 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 21 | 22 | SET NAMES utf8mb4; 23 | 24 | ALTER TABLE `result_patents_serge` ADD FULLTEXT INDEX `search` (`search_index`); 25 | -------------------------------------------------------------------------------- /web/css/style.php: -------------------------------------------------------------------------------- 1 | body 2 | { 3 | margin: 0; 4 | font-family: Verdana, Geneva, sans-serif; 5 | font-style: normal; 6 | font-variant: normal; 7 | } 8 | 9 | * 10 | { 11 | outline: none; 12 | } 13 | 14 | a 15 | { 16 | color: inherit; 17 | text-decoration: none; 18 | } 19 | 20 | .align 21 | { 22 | display: flex; 23 | flex-direction: row; 24 | } 25 | 26 | .hidden 27 | { 28 | visibility: hidden; 29 | } 30 | 31 | .center 32 | { 33 | text-align: center; 34 | } 35 | 36 | .noDisplay 37 | { 38 | display: none; 39 | } 40 | 41 | .hiddenFont 42 | { 43 | font-size: 0; 44 | color: rgba(0, 0, 0, 0); 45 | } 46 | 47 | .helpMe 48 | { 49 | position: relative; 50 | color: rgba(255, 255, 255, 0.3); 51 | text-decoration: none; 52 | font-size: 25px; 53 | margin-left: 12px; 54 | margin-right: 13px; 55 | font-weight: bold; 56 | user-select: none; 57 | } 58 | 59 | *:placeholder, 60 | *::placeholder, 61 | *:placeholder-shown, 62 | input::-webkit-input-placeholder, 63 | input:-ms-input-placeholder, 64 | input:-moz-placeholder, 65 | input:placeholder, 66 | input::placeholder, 67 | input:placeholder-shown 68 | { 69 | color: rgb(170,170,170); 70 | } 71 | -------------------------------------------------------------------------------- /web/js/counter.js: -------------------------------------------------------------------------------- 1 | function counter(d, h, m, s, divId) 2 | { 3 | function escapeHTML(unsafe) 4 | { 5 | return unsafe 6 | .replace(/&/g, "&") 7 | .replace(//g, ">") 9 | .replace(/"/g, """) 10 | .replace(/'/g, "'"); 11 | } 12 | 13 | var e = document.getElementById(divId); 14 | var timer; 15 | 16 | if (s < 0) 17 | { 18 | clearTimeout(timer); 19 | m = m - 1; 20 | s = 59; 21 | } 22 | 23 | if (m < 0) 24 | { 25 | clearTimeout(timer); 26 | h = h - 1; 27 | m = 59; 28 | } 29 | 30 | if (h < 0) 31 | { 32 | clearTimeout(timer); 33 | d = d - 1; 34 | h = 23; 35 | } 36 | 37 | if (d < 0) 38 | { 39 | clearTimeout(timer); 40 | d = 0; 41 | h = 0; 42 | m = 0; 43 | s = 0; 44 | } 45 | 46 | var st = s; 47 | var mt = m; 48 | var ht = h; 49 | var dt = d; 50 | 51 | if (s < 10) 52 | { 53 | st = "0"+s; 54 | } 55 | if (m < 10) 56 | { 57 | mt = "0"+m; 58 | } 59 | if (h < 10) 60 | { 61 | ht = "0"+h; 62 | } 63 | if (d < 10) 64 | { 65 | dt = "0"+d; 66 | } 67 | 68 | e.innerHTML = escapeHTML(`${dt}:${ht}:${mt}:${st}`); 69 | 70 | s--; 71 | setTimeout("counter("+d+","+h+","+m+","+s+",\""+divId+"\")",1000); 72 | } 73 | -------------------------------------------------------------------------------- /database_demo/background_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `background_serge` ( 5 | `id` int(11) NOT NULL AUTO_INCREMENT, 6 | `name` text COLLATE utf8mb4_bin NOT NULL, 7 | `filename` text COLLATE utf8mb4_bin NOT NULL, 8 | `type` text COLLATE utf8mb4_bin NOT NULL, 9 | PRIMARY KEY (id) 10 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 11 | 12 | INSERT INTO `background_serge` VALUES (1,'Fujiyama','Japan01.jpeg','result'), 13 | (2,'Forest mountain','Mountains01.jpg','result'), 14 | (3,'Mountain lake','Mountains02.jpeg','result'), 15 | (4,'Natural valley','Nature01.jpg','result'), 16 | (5,'Lake','Nature02.jpg','result'), 17 | (6,'Waterfall cairn','Nature03.jpeg','result'), 18 | (7,'Cloudy nature','Nature04.jpeg','result'), 19 | (8,'Forest','Nature05.jpg','result'), 20 | (9,'On a lake','Nature06.jpeg','result'), 21 | (10,'Blue Sea','Sea01.jpg','result'), 22 | (11,'Sea cairn','Sea02.jpeg','result'), 23 | (12,'Sea','Sea03.jpg','result'), 24 | (13,'Peaceful sea','Sea04.jpeg','result'), 25 | (14,'Skyscrapers','Skyscrapers01.jpg','result'), 26 | (15,'Milky way','Space01.jpeg','result'), 27 | (16,'Space','Space02.jpg','result'); 28 | 29 | SET NAMES utf8mb4; 30 | -------------------------------------------------------------------------------- /web/model/addNewPatentQuery.php: -------------------------------------------------------------------------------- 1 | 44 | -------------------------------------------------------------------------------- /web/favicon.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /web/model/updateSearchIndexWP.php: -------------------------------------------------------------------------------- 1 | prepare("SELECT id, name, description, author, category, language, update_date FROM $tableName WHERE search_index IS NULL"); 11 | $req->execute(); 12 | $result = $req->fetchAll(); 13 | $req->closeCursor(); 14 | 15 | foreach ($result as $line) 16 | { 17 | $word = $line['name'] . ' ' . $line['description'] . ' ' . $line['author'] . ' ' . $line['category'] . ' ' . $line['language']; 18 | 19 | $soundexWord = ''; 20 | $soundexWord_array = explode(' ', $word); 21 | foreach ($soundexWord_array as $wordSplit) 22 | { 23 | $soundexWord = $soundexWord . ' ' . soundex($wordSplit); 24 | } 25 | 26 | $dateIndex = htmlspecialchars(date("d/m/o", $line['update_date'])); 27 | 28 | $searchIndex = $dateIndex . ' ' . mb_strtolower($word) . ' ' . mb_strtolower(del_accent($word)) . ' ' . $soundexWord; 29 | 30 | // Update search index 31 | $req = $bdd->prepare("UPDATE $tableName SET search_index = :search WHERE id = :id"); 32 | $req->execute(array( 33 | 'search' => $searchIndex, 34 | 'id' => $line['id'])); 35 | $req->closeCursor(); 36 | } 37 | ?> 38 | -------------------------------------------------------------------------------- /web/model/addNewScienceQuery.php: -------------------------------------------------------------------------------- 1 | 44 | -------------------------------------------------------------------------------- /web/model/update.php: -------------------------------------------------------------------------------- 1 | $value)); 25 | $cpt++; 26 | } 27 | 28 | foreach ($updateCol as $line) 29 | { 30 | $nameCol = $line[0]; 31 | $value = $line[1]; 32 | 33 | $SETvar = $SETvar . $comma . $nameCol . ' = :new' . $nameCol . $cpt; 34 | $comma = ', '; 35 | $nameCol = 'new' . $nameCol . $cpt; 36 | $arrayValues = array_merge($arrayValues, array($nameCol => $value)); 37 | $cpt++; 38 | } 39 | 40 | # SQL request 41 | try 42 | { 43 | $req = $bdd->prepare("UPDATE $tableName SET $SETvar WHERE $WHEREvar $optional"); 44 | $req->execute($arrayValues); 45 | $req->closeCursor(); 46 | $execution = TRUE; 47 | } 48 | catch (Exception $e) 49 | { 50 | $execution = FALSE; 51 | // Error in log 52 | error_log($e->getMessage(), 0); 53 | } 54 | 55 | return $execution; 56 | } 57 | ?> 58 | -------------------------------------------------------------------------------- /web/css/addLinkInWiki.php: -------------------------------------------------------------------------------- 1 | 10 | 11 | .body 12 | { 13 | display: flex; 14 | flex-direction: column; 15 | justify-content: center; 16 | align-items: center; 17 | min-height: 100vh; 18 | color: #f9f9ff; 19 | } 20 | 21 | .background 22 | { 23 | position: fixed; 24 | top: 0; 25 | left: 0; 26 | margin: 0; 27 | width: 100%; 28 | height: 100vh; 29 | z-index: -1; 30 | background: url('../images/background/dark.png') center no-repeat; 31 | background-size: cover; 32 | } 33 | 34 | .subBackground 35 | { 36 | position: fixed; 37 | top: 0; 38 | left: 0; 39 | margin: 0; 40 | width: 100%; 41 | height: 100vh; 42 | z-index: -1; 43 | } 44 | 45 | .window 46 | { 47 | display: flex; 48 | flex-direction: row; 49 | justify-content: center; 50 | align-items: center; 51 | border-radius: 3px; 52 | background-color: rgba(0,0,0,0.4); 53 | width: 60%; 54 | padding: 10px; 55 | color: rgb(230,230,230); 56 | margin-bottom: 5vh; 57 | font-size: 25px; 58 | } 59 | 60 | .emoticon 61 | { 62 | position: relative; 63 | background-image: url(../images/Desapoinhat.png); 64 | width: 30%; 65 | height: 200px; 66 | background-size: contain; 67 | background-repeat: no-repeat; 68 | background-position: center; 69 | margin-right: 50px; 70 | } 71 | 72 | 75 | -------------------------------------------------------------------------------- /web/css/deleteAccount.php: -------------------------------------------------------------------------------- 1 | 10 | 11 | .body 12 | { 13 | display: flex; 14 | flex-direction: column; 15 | justify-content: center; 16 | align-items: center; 17 | min-height: 100vh; 18 | color: #f9f9ff; 19 | } 20 | 21 | .background 22 | { 23 | position: fixed; 24 | top: 0; 25 | left: 0; 26 | margin: 0; 27 | width: 100%; 28 | height: 100vh; 29 | z-index: -1; 30 | background: url('../images/background/dark.png') center no-repeat; 31 | background-size: cover; 32 | } 33 | 34 | .subBackground 35 | { 36 | position: fixed; 37 | top: 0; 38 | left: 0; 39 | margin: 0; 40 | width: 100%; 41 | height: 100vh; 42 | z-index: -1; 43 | } 44 | 45 | .window 46 | { 47 | display: flex; 48 | flex-direction: row; 49 | justify-content: center; 50 | align-items: center; 51 | border-radius: 3px; 52 | background-color: rgba(0,0,0,0.4); 53 | width: 60%; 54 | padding: 10px; 55 | color: rgb(230,230,230); 56 | margin-bottom: 5vh; 57 | font-size: 25px; 58 | } 59 | 60 | .emoticon 61 | { 62 | position: relative; 63 | background-image: url(../images/Desapoinhat.png); 64 | width: 30%; 65 | height: 200px; 66 | background-size: contain; 67 | background-repeat: no-repeat; 68 | background-position: center; 69 | margin-right: 50px; 70 | } 71 | 72 | 75 | -------------------------------------------------------------------------------- /database_demo/users_table_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `users_table_serge` ( 5 | `id` int(11) NOT NULL AUTO_INCREMENT, 6 | `users` text COLLATE utf8mb4_bin NOT NULL, 7 | `email` text COLLATE utf8mb4_bin NOT NULL, 8 | `phone_number` text COLLATE utf8mb4_bin DEFAULT NULL, 9 | `password` text COLLATE utf8mb4_bin NOT NULL, 10 | `salt` text COLLATE utf8mb4_bin NOT NULL, 11 | `signup_date` int(11) NOT NULL, 12 | `result_by_email` BOOLEAN NOT NULL DEFAULT 1, 13 | `last_mail` int(11) DEFAULT NULL, 14 | `send_condition` varchar(15) COLLATE utf8mb4_bin NOT NULL DEFAULT 'link_limit', 15 | `frequency` int(11) DEFAULT NULL, 16 | `link_limit` int(11) DEFAULT 30, 17 | `selected_days` text COLLATE utf8mb4_bin DEFAULT NULL, 18 | `selected_hour` int(11) DEFAULT NULL, 19 | `mail_design` varchar(15) COLLATE utf8mb4_bin NOT NULL DEFAULT 'masterword', 20 | `language` varchar(2) COLLATE utf8mb4_bin DEFAULT 'EN', 21 | `record_read` BOOLEAN NOT NULL DEFAULT 1, 22 | `history_lifetime` int(11) DEFAULT 12, 23 | `background_result` varchar(15) COLLATE utf8mb4_bin NOT NULL DEFAULT 'Skyscrapers', 24 | `alert_by_sms` BOOLEAN NOT NULL DEFAULT 0, 25 | `premium_expiration_date` int(11) DEFAULT 0, 26 | `email_validation` BOOLEAN NOT NULL DEFAULT 0, 27 | `sms_credits` int(11) DEFAULT 0, 28 | `token` varchar(8) COLLATE utf8mb4_bin NOT NULL, 29 | `add_source_status` text COLLATE utf8mb4_bin DEFAULT NULL, 30 | PRIMARY KEY (id) 31 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 32 | 33 | SET NAMES utf8mb4; 34 | -------------------------------------------------------------------------------- /database_demo/captcha_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `captcha_serge` ( 5 | `name` text CHARACTER SET utf8 6 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 7 | 8 | INSERT INTO `captcha_serge` (`name`) VALUES 9 | ('A'), 10 | ('a'), 11 | ('Z'), 12 | ('z'), 13 | ('e'), 14 | ('E'), 15 | ('r'), 16 | ('R'), 17 | ('t'), 18 | ('T'), 19 | ('y'), 20 | ('Y'), 21 | ('u'), 22 | ('U'), 23 | ('i'), 24 | ('I'), 25 | ('O'), 26 | ('o'), 27 | ('P'), 28 | ('p'), 29 | ('Q'), 30 | ('q'), 31 | ('S'), 32 | ('s'), 33 | ('d'), 34 | ('D'), 35 | ('F'), 36 | ('f'), 37 | ('g'), 38 | ('G'), 39 | ('H'), 40 | ('h'), 41 | ('j'), 42 | ('J'), 43 | ('k'), 44 | ('K'), 45 | ('l'), 46 | ('L'), 47 | ('m'), 48 | ('M'), 49 | ('w'), 50 | ('W'), 51 | ('x'), 52 | ('X'), 53 | ('c'), 54 | ('C'), 55 | ('v'), 56 | ('V'), 57 | ('b'), 58 | ('B'), 59 | ('n'), 60 | ('N'), 61 | ('A'), 62 | ('a'), 63 | ('Z'), 64 | ('z'), 65 | ('e'), 66 | ('E'), 67 | ('r'), 68 | ('R'), 69 | ('t'), 70 | ('T'), 71 | ('y'), 72 | ('Y'), 73 | ('u'), 74 | ('U'), 75 | ('i'), 76 | ('I'), 77 | ('O'), 78 | ('o'), 79 | ('P'), 80 | ('p'), 81 | ('Q'), 82 | ('q'), 83 | ('S'), 84 | ('s'), 85 | ('d'), 86 | ('D'), 87 | ('F'), 88 | ('f'), 89 | ('g'), 90 | ('G'), 91 | ('H'), 92 | ('h'), 93 | ('j'), 94 | ('J'), 95 | ('k'), 96 | ('K'), 97 | ('l'), 98 | ('L'), 99 | ('m'), 100 | ('M'), 101 | ('w'), 102 | ('W'), 103 | ('x'), 104 | ('X'), 105 | ('c'), 106 | ('C'), 107 | ('v'), 108 | ('V'), 109 | ('b'), 110 | ('B'), 111 | ('n'), 112 | ('N'); 113 | 114 | SET NAMES utf8mb4; 115 | -------------------------------------------------------------------------------- /web/controller/searchEngine.php: -------------------------------------------------------------------------------- 1 | $search, 34 | 'searchBoolean' => $searchBoolean, 35 | 'searchSOUNDEX' => $searchSOUNDEX)); 36 | 37 | $searchSort = '&search=' . $search; 38 | } 39 | else 40 | { 41 | $search = ''; 42 | $searchBoolean = ''; 43 | $searchSOUNDEX = ''; 44 | 45 | # WARNING sensitive variable [SQLI] 46 | $SELECTRESULT = $SELECTRESULT . $OPTIONALCOND; 47 | $QUERYRESULT = $SELECTRESULT . ') ' . $ORDERBY; 48 | } 49 | ?> 50 | -------------------------------------------------------------------------------- /web/controller/workinprogress.php: -------------------------------------------------------------------------------- 1 | 50 | -------------------------------------------------------------------------------- /web/controller/deleteAccount.php: -------------------------------------------------------------------------------- 1 | 62 | -------------------------------------------------------------------------------- /web/view/body/bug.php: -------------------------------------------------------------------------------- 1 |
2 |
3 | 7 |
8 |

9 |
10 | 15 |
16 | 17 | 18 |
19 | 20 |

21 | 22 |

23 | 24 | 25 |

26 |
27 | 28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 | 37 | 38 | 39 |
40 |
41 | 44 |
45 | -------------------------------------------------------------------------------- /web/.htaccess: -------------------------------------------------------------------------------- 1 | Options +FollowSymlinks 2 | 3 | RewriteEngine on 4 | 5 | RewriteCond %{REQUEST_FILENAME}\.php -f 6 | RewriteCond %{ENV:REDIRECT_STATUS} ^$ 7 | RewriteRule ^(.+)$ $1.php [L] 8 | RewriteRule ^rss/(.+)$ rss.php?token=$1 [L] 9 | 10 | php_value upload_max_filesize 200M 11 | php_value post_max_size 200M 12 | 13 | php_value max_execution_time 2000 14 | php_value max_input_time 2000 15 | 16 | ## Expire headers 17 | 18 | ExpiresActive On 19 | ExpiresDefault "access plus 7200 seconds" 20 | ExpiresByType image/jpg "access plus 1 week" 21 | ExpiresByType image/jpeg "access plus 1 week" 22 | ExpiresByType image/png "access plus 1 week" 23 | ExpiresByType image/gif "access plus 1 week" 24 | ExpiresByType image/svg+xml "access plus 1 week" 25 | AddType image/x-icon .ico 26 | ExpiresByType image/ico "access plus 1 week" 27 | ExpiresByType image/icon "access plus 1 week" 28 | ExpiresByType image/x-icon "access plus 1 week" 29 | ExpiresByType text/css "access plus 1 week" 30 | ExpiresByType text/javascript "access plus 1 week" 31 | ExpiresByType text/html "access plus 7200 seconds" 32 | ExpiresByType application/xhtml+xml "access plus 7200 seconds" 33 | ExpiresByType application/javascript "access plus 1 week" 34 | ExpiresByType application/x-javascript "access plus 1 week" 35 | 36 | 37 | 38 | 39 | 40 | Header set Cache-Control "max-age=2592000, public" 41 | 42 | 43 | 44 | Header set Cache-Control "max-age=604800, public" 45 | 46 | 47 | 48 | Header set Cache-Control "max-age=216000, private" 49 | 50 | 51 | 52 | Header set Cache-Control "max-age=600, private, must-revalidate" 53 | 54 | 55 | 56 | -------------------------------------------------------------------------------- /web/controller/redirect.php: -------------------------------------------------------------------------------- 1 | 58 | -------------------------------------------------------------------------------- /toolbox.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf8 -*- 2 | 3 | """Collection of useful little tools for SERGE""" 4 | 5 | import cgi 6 | import logging 7 | import traceback 8 | from HTMLParser import HTMLParser 9 | from logging.handlers import RotatingFileHandler 10 | 11 | 12 | def cemeteriesOfErrors(*exc_info): 13 | """Error hook whose the purpose is to write the traceback in the error log""" 14 | 15 | ######### LOGGER CALL 16 | logger_info = logging.getLogger("info_log") 17 | logger_error = logging.getLogger("error_log") 18 | 19 | colderror = "".join(traceback.format_exception(*exc_info)) 20 | logger_error.critical(colderror+"\n\n") 21 | logger_error.critical("SERGE END : CRITICAL FAILURE\n") 22 | 23 | 24 | def loggerConfig(): 25 | """The purpose of this function is to create and configure two loggers for SERGE""" 26 | 27 | ######### LOGGER CONFIG 28 | formatter_error = logging.Formatter("%(asctime)s -- %(levelname)s -- %(message)s") 29 | formatter_info = logging.Formatter("%(asctime)s -- %(levelname)s -- %(message)s") 30 | 31 | logger_error = logging.getLogger("error_log") 32 | handler_error = logging.handlers.RotatingFileHandler("logs/serge_error_log.txt", mode="a", maxBytes=10000, backupCount=1, encoding="utf8") 33 | handler_error.setFormatter(formatter_error) 34 | logger_error.setLevel(logging.ERROR) 35 | logger_error.addHandler(handler_error) 36 | 37 | logger_info = logging.getLogger("info_log") 38 | handler_info = logging.handlers.RotatingFileHandler("logs/serge_info_log.txt", mode="a", maxBytes=5000000, backupCount=1, encoding="utf8") 39 | handler_info.setFormatter(formatter_info) 40 | logger_info.setLevel(logging.INFO) 41 | logger_info.addHandler(handler_info) 42 | 43 | logger_error.info("SERGE ERROR LOG") 44 | logger_info.info("SERGE INFO LOG ") 45 | 46 | 47 | def escaping(string): 48 | """The purpose of this function is the escaping of special characters like & in contents titles.""" 49 | 50 | h = HTMLParser() 51 | stringEscaped = cgi.escape(h.unescape(string.strip())).encode('utf8', 'xmlcharrefreplace').decode('utf8') 52 | 53 | return stringEscaped 54 | -------------------------------------------------------------------------------- /web/css/workinprogress.php: -------------------------------------------------------------------------------- 1 | 10 | 11 | .background 12 | { 13 | position: fixed; 14 | top: 0; 15 | left: 0; 16 | margin: 0; 17 | width: 100%; 18 | height: 100vh; 19 | z-index: -1; 20 | background: url('../images/background/Space02.jpg') center no-repeat; 21 | background-size: cover; 22 | } 23 | 24 | .subBackground 25 | { 26 | position: fixed; 27 | top: 0; 28 | left: 0; 29 | margin: 0; 30 | width: 100%; 31 | height: 100vh; 32 | z-index: -1; 33 | background-color: rgba(0, 0, 0, 0.1); 34 | } 35 | 36 | .body 37 | { 38 | display: flex; 39 | flex-direction: column; 40 | justify-content: center; 41 | align-items: center; 42 | min-height: calc(100vh - 75px); 43 | color: #f9f9ff; 44 | text-shadow: 0 0 3px rgba(0, 0, 0, 0.8); 45 | text-transform: uppercase; 46 | font-size: 30px; 47 | font-family: ubuntu; 48 | letter-spacing: 1px; 49 | } 50 | 51 | #timer 52 | { 53 | font-size: 75px; 54 | } 55 | 56 | .name 57 | { 58 | font-size: 55px; 59 | margin-top: 20px; 60 | } 61 | 62 | form 63 | { 64 | display: flex; 65 | flex-direction: row; 66 | justify-content: center; 67 | align-items: center; 68 | margin-top: 10px; 69 | } 70 | 71 | input 72 | { 73 | width: 350px; 74 | height: 22px; 75 | border-radius: 3px; 76 | border: 1px solid rgba(255,255,255, 0.15); 77 | padding: 4px; 78 | background-color: rgba(0,0,0,0.4); 79 | color: #f9f9ff; 80 | } 81 | 82 | input::placeholder 83 | { 84 | color: rgb(190,190,190); 85 | } 86 | 87 | .submit 88 | { 89 | width: 35px; 90 | height: 35px; 91 | border: 1px solid rgba(255,255,255, 0.15); 92 | background: url('../images/>.png') center no-repeat; 93 | background-size: contain; 94 | background-color: rgba(84,26,102, 0.55); 95 | cursor: pointer; 96 | color: rgb(230,230,230); 97 | border-radius: 50%; 98 | font-weight: bold; 99 | font-size: 0; 100 | } 101 | 102 | 105 | -------------------------------------------------------------------------------- /web/model/read.php: -------------------------------------------------------------------------------- 1 | " = ", 10 | "l" => " LIKE ", 11 | "nl" => " NOT LIKE ", 12 | ">=" => " >= ", 13 | ">" => " > ", 14 | "<" => " < ", 15 | "IN" => " IN ", 16 | "<>" => " <> ", 17 | "REGEXP" => " REGEXP "); 18 | 19 | if (!empty($checkCol)) 20 | { 21 | $WHEREvar = ''; 22 | foreach ($checkCol as $line) 23 | { 24 | $op = $op_array[$line[1]]; 25 | $nameCol = $line[0]; 26 | $value = $line[2]; 27 | $connector = ' ' . $line[3] . ' '; 28 | 29 | if (is_array($value)) 30 | { 31 | $cptArray = 0; 32 | $comma = ''; 33 | $WHEREvar = $WHEREvar . $nameCol . $op . '('; 34 | 35 | foreach ($value as $arrayVariable) 36 | { 37 | $WHEREvar = $WHEREvar . $comma . ':' . $nameCol . $cpt . $cptArray; 38 | $arrayValues = array_merge($arrayValues, array($nameCol . $cpt . $cptArray => $arrayVariable)); 39 | $comma = ','; 40 | 41 | $cptArray++; 42 | } 43 | $WHEREvar = $WHEREvar . ')' . $connector; 44 | } 45 | else 46 | { 47 | $WHEREvar = $WHEREvar . $nameCol . $op . '(:' . $nameCol . $cpt . ')' . $connector; 48 | $arrayValues = array_merge($arrayValues, array($nameCol . $cpt => $value)); 49 | } 50 | $cpt++; 51 | } 52 | } 53 | 54 | if (empty($selectedCol)) 55 | { 56 | $selectedCol = 'id'; 57 | $check = TRUE; 58 | } 59 | 60 | # SQL request 61 | try 62 | { 63 | $req = $bdd->prepare("SELECT $selectedCol FROM $tableName WHERE $WHEREvar $optional"); 64 | $req->execute($arrayValues); 65 | $result = $req->fetchAll(); 66 | $req->closeCursor(); 67 | } 68 | catch (Exception $e) 69 | { 70 | // Error in log 71 | error_log($e->getMessage(), 0); 72 | } 73 | 74 | if (empty($result)) 75 | { 76 | $result = array(); 77 | } 78 | 79 | if (empty($result) && $check) 80 | { 81 | $result = FALSE; 82 | } 83 | elseif ($check) 84 | { 85 | $result = TRUE; 86 | } 87 | 88 | return $result; 89 | } 90 | ?> 91 | -------------------------------------------------------------------------------- /web/view/footer/footer.php: -------------------------------------------------------------------------------- 1 | 52 | -------------------------------------------------------------------------------- /web/controller/dataProcessing.php: -------------------------------------------------------------------------------- 1 | 68 | -------------------------------------------------------------------------------- /web/controller/rss.php: -------------------------------------------------------------------------------- 1 | ', $_SERVER['REQUEST_TIME'], '')); 19 | $user = read('users_table_serge', 'id, users', $checkCol, '', $bdd); 20 | $user = $user[0] ?? ''; 21 | } 22 | 23 | preg_match("/[sp]$/", $data['token'], $resultType); 24 | 25 | if (!empty($user)) 26 | { 27 | if ($resultType[0] === 's') 28 | { 29 | // read available results 30 | $checkCol = array(array('owners', 'l', ',' . $user['id'] . ',', '')); 31 | $results = read('result_science_serge', 'title, link, date', $checkCol, 'ORDER BY date DESC LIMIT 30', $bdd); 32 | $description = 'Scientifique publication'; 33 | } 34 | elseif ($resultType[0] === 'p') 35 | { 36 | // read available results 37 | $checkCol = array(array('owners', 'l', ',' . $user['id'] . ',', '')); 38 | $results = read('result_patents_serge', 'title, link, date', $checkCol, 'ORDER BY date DESC LIMIT 30', $bdd); 39 | $description = 'Patents'; 40 | } 41 | elseif (empty($results)) 42 | { 43 | // read available results 44 | $checkCol = array(array('owners', 'l', ',' . $user['id'] . ',', '')); 45 | $results = read('result_news_serge', 'title, link, date', $checkCol, 'ORDER BY date DESC LIMIT 30', $bdd); 46 | $description = 'General news'; 47 | } 48 | 49 | if (!empty($recordLink)) 50 | { 51 | $result['link'] = urlencode($result['link']); 52 | } 53 | 54 | echo 55 | ' 56 | 57 | 58 | Serge : RSS ' . $user['users'] . ' 59 | http://serge.eu/ 60 | ' . $description . ''; 61 | 62 | foreach ($results as $result) 63 | { 64 | echo ' 65 | 66 | ' . htmlspecialchars($result['title']) . ' 67 | ' . htmlspecialchars($result['link']) . ' 68 | 69 | ' . date("D, d M Y H:i:s O", $result['date']) . ' 70 | ' . htmlspecialchars($result['link']) . ' 71 | '; 72 | } 73 | 74 | echo ' 75 | 76 | '; 77 | } 78 | else 79 | { 80 | echo 'You need to be a premium user to access to this functionality'; 81 | } 82 | ?> 83 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # SERGE : Serge Explore Research and Generate Email 2 | 3 | Free Beta version 4 | 5 | Serge is a free and Open Source tool for industrial and scientific watch. Serge operates on three types of informations : news, scientific publications and patents. 6 | 7 | * News : All online medias with RSS flux 8 | * Scientific Publications : the latest papers of Arxiv, DOAJ, PLOS and HAL 9 | * Patents : World Intellectual Property Organization (WIPO) latest Patents 10 | 11 | Serge explores RSS flux of the sources in order to search your keywords (and expressions) and provides you the latest papers automatically. You can choose medias to follow and keywords to apply at each medias. Serge will retrieve titles and links of each papers. The results will display on a dedicate webpage for free or send by e-mail, RSS flux and SMS with payment access. 12 | 13 | With Serge you can find and create a "Watch pack". A watch pack is a set of medias with keywords already configured. You can begin by adding a watch pack in order to have an easy configuration of Serge. 14 | 15 | Become a Beta tester with full access for free at [vigiserge.eu](https://vigiserge.eu/) 16 | 17 | You can check the user's guide [here](https://github.com/ABHC/SERGE/wiki/User's-Guide) 18 | 19 | --- 20 | 21 | # SERGE : Serge Explore Recherche et Génère des Emails 22 | 23 | En Beta gratuite 24 | 25 | Serge est un outil Libre et Open Source de veille industrielle et scientifique. Serge opère sur trois types d'informations: l'actualité, les publications scientifiques et les brevets. 26 | 27 | * Actu : Tous les médias en ligne avec flux RSS 28 | * Publications Scientifiques: les derniers articles d'Arxiv, DOAJ, PLOS et HAL 29 | * Brevets : les derniers brevets de l'Organisation Mondiale de la Propriété Intellectuelle (OMPI) 30 | 31 | Serge explore les flux RSS des sources afin de rechercher vos mots-clefs (et expressions) et vous fournit automatiquement les derniers articles. Vous pouvez choisir les médias à suivre et les mots-clefs à appliquer à chaque média. Serge récupérera les titres et les liens de chaque article. Les résultats seront affichés sur une page web dédiée gratuitement ou envoyés par e-mail, flux RSS et SMS avec accès payant. 32 | 33 | Avec Serge vous pouvez trouver et créer un "pack de veille". Un pack de veille est un ensemble de médias avec des mots-clefs déjà configurés. Vous pouvez commencer par ajouter un pack de veille, afin d'avoir une configuration facile de Serge. 34 | 35 | Devenez un Beta testeur avec un accès complet gratuit sur [vigiserge.eu](https://vigiserge.eu/) 36 | 37 | Vous pouvez consulter le guide de l'utilisateur [ici](https://github.com/ABHC/SERGE/wiki/Guide-d'utilisation) 38 | -------------------------------------------------------------------------------- /web/images/iconFuncStats.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 24 | 25 | 27 | image/svg+xml 28 | 30 | 31 | 32 | 33 | 34 | 36 | 60 | 66 | 67 | -------------------------------------------------------------------------------- /database_demo/equivalence_science_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `equivalence_science_serge` ( 5 | `id` int(11) NOT NULL AUTO_INCREMENT, 6 | `apikey` int(11), 7 | `type` text COLLATE utf8mb4_bin NOT NULL, 8 | `basename` text COLLATE utf8mb4_bin NOT NULL, 9 | `name` text COLLATE utf8mb4_bin NOT NULL, 10 | `link` text COLLATE utf8mb4_bin NOT NULL, 11 | `prelink` text COLLATE utf8mb4_bin NOT NULL, 12 | `postlink` text COLLATE utf8mb4_bin NOT NULL, 13 | `AND` text COLLATE utf8mb4_bin DEFAULT NULL, 14 | `OR` text COLLATE utf8mb4_bin DEFAULT NULL, 15 | `NOT` text COLLATE utf8mb4_bin DEFAULT NULL, 16 | `(` text COLLATE utf8mb4_bin DEFAULT NULL, 17 | `)` text COLLATE utf8mb4_bin DEFAULT NULL, 18 | `quote` text COLLATE utf8mb4_bin DEFAULT NULL, 19 | `title` text COLLATE utf8mb4_bin DEFAULT NULL, 20 | `author` text COLLATE utf8mb4_bin DEFAULT NULL, 21 | `abstract` text COLLATE utf8mb4_bin DEFAULT NULL, 22 | `publisher` text COLLATE utf8mb4_bin DEFAULT NULL, 23 | `category` text COLLATE utf8mb4_bin DEFAULT NULL, 24 | `all` text COLLATE utf8mb4_bin DEFAULT NULL, 25 | `active` int(11) NOT NULL, 26 | PRIMARY KEY (id) 27 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 28 | 29 | SET NAMES utf8mb4; 30 | 31 | INSERT INTO `equivalence_science_serge` (`id`, `apikey`, `type`, `basename`, `name`, `link`, `prelink`, `postlink`, `AND`, `OR`, `NOT`, `(`, `)`, `quote`, `title`, `author`, `abstract`, `publisher`, `category`, `all`, `active`) VALUES 32 | (1, NULL, 'RSS', 'arxiv', 'ArXiv.org', 'http://arxiv.org/','http://export.arxiv.org/api/query?search_query=', '&sortBy=lastUpdatedDate&start=0&max_results=20', '+AND+', '+OR+', '+ANDNOT+', '%28', '%29', '%22', 'ti:', 'au:', 'abs:', 'jr:', 'cat:', 'all:', 1), 33 | (2, NULL, 'JSON', 'doaj', 'DOAJ - Directory of Open Access Journals', 'https://doaj.org/', 'https://doaj.org/api/v1/search/articles/', '?pageSize=20&sort=last_updated%3Adesc', ' AND ', ' OR ', ' AND NOT ', '%28', '%29', '%22', 'bibjson.title', 'bibjson.author.name', 'bibjson.abstract', 'bibjson.publisher', 'bibjson.subject.term', 'bibjson.abstract', 1), 34 | (3, NULL, 'RSS', 'hal', 'HAL - Archives Ouvertes', 'http://api.archives-ouvertes.fr', 'http://api.archives-ouvertes.fr/search/?q=', '&wt=rss&rows=20', '+AND+', '+OR+', '+NOT+', '(', ')', NULL, 'title_autocomplete:', 'authFullName_t:', 'abstract_t:', 'journalTitle_t:', 'text:', 'text:', 1), 35 | (4, NULL, 'RSS', 'plos', 'PLOS - Public Library Of Science', 'http://journals.plos.org', 'http://journals.plos.org/plosone/search/feed/atom?resultsPerPage=30&q=', '&sortOrder=DATE_NEWEST_FIRST&page=1', '+AND+', '+OR+', '+NOT+', '%28', '%29', NULL, 'title%3A', 'author%3A', 'abstract%3A', 'everything%3A', 'subject%3A', 'everything%3A', 1); 36 | -------------------------------------------------------------------------------- /web/images/iconFuncWiki.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 24 | 25 | 27 | image/svg+xml 28 | 30 | 31 | 32 | 33 | 34 | 36 | 60 | W 71 | 72 | -------------------------------------------------------------------------------- /web/images/dot.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 24 | 46 | 48 | 49 | 51 | image/svg+xml 52 | 54 | 55 | 56 | 57 | 58 | 63 | 69 | 75 | 76 | 77 | -------------------------------------------------------------------------------- /web/css/nav.php: -------------------------------------------------------------------------------- 1 | .nav 2 | { 3 | display: flex; 4 | justify-content: space-around; 5 | margin: 0; 6 | height: 75px; 7 | } 8 | 9 | .navBlockContainer 10 | { 11 | display: flex; 12 | justify-content: flex-end; 13 | } 14 | 15 | .navBlock 16 | { 17 | display: flex; 18 | justify-content: flex-start; 19 | align-items: center; 20 | padding-right: 10px; 21 | flex: 1; 22 | background-color: rgba(0, 0, 0, 0.6); 23 | border-bottom: 1px solid rgba(255,255,255,0.25); 24 | text-decoration: none; 25 | min-width: 150px; 26 | } 27 | 28 | .navBlock:hover 29 | { 30 | background: none; 31 | color: rgb(255, 255, 255); 32 | border-bottom: 1px solid rgba(255,255,255,0); 33 | } 34 | 35 | .navCairnDevicesLogo 36 | { 37 | width: 70px; 38 | height: 70px; 39 | margin-right: 10px; 40 | margin-left: 10px; 41 | background: url(../images/SERGE_logo_norm_nav.png) center no-repeat; 42 | background-size: cover; 43 | } 44 | 45 | .navResultSergeLogo 46 | { 47 | width: 70px; 48 | height: 53px; 49 | margin-right: 10px; 50 | margin-left: 10px; 51 | background: url(../images/navResultIco.png) no-repeat; 52 | background-size: contain; 53 | } 54 | 55 | .navSergeSettingLogo 56 | { 57 | width: 92px; 58 | height: 55px; 59 | margin-right: 10px; 60 | margin-left: 10px; 61 | background: url(../images/navSettingsIco.png) no-repeat; 62 | background-size: contain; 63 | } 64 | 65 | .navWikiLogo 66 | { 67 | width: 60px; 68 | height: 44px; 69 | margin-right: 10px; 70 | margin-left: 10px; 71 | background: url(../images/navWikiIco.png) no-repeat; 72 | background-size: contain; 73 | } 74 | 75 | .navTitle 76 | { 77 | font-size: 15px; 78 | text-decoration: none; 79 | color: rgb(240, 240, 240); 80 | text-shadow: 0 0 2px rgba(0, 0, 0, 0.8); 81 | } 82 | 83 | .navlogo 84 | { 85 | display: flex; 86 | justify-content: flex-start; 87 | align-items: center; 88 | flex: 1; 89 | background-color: rgba(0, 0, 0, 0.6); 90 | border-bottom: 1px solid rgba(255,255,255,0.25); 91 | text-decoration: none; 92 | } 93 | 94 | .navBlock.active 95 | { 96 | background: none; 97 | color: rgb(255, 255, 255); 98 | border-bottom: none; 99 | } 100 | 101 | @media all and (max-width: 1000px) 102 | { 103 | .nav 104 | { 105 | height: 140px; 106 | } 107 | 108 | .navTitle 109 | { 110 | font-size: 25px; 111 | text-align: center; 112 | } 113 | 114 | .navlogo > .navTitle 115 | { 116 | width: 60%; 117 | } 118 | 119 | .navCairnDevicesLogo 120 | { 121 | width: 90px; 122 | height: 90px; 123 | margin-right: 5px; 124 | } 125 | 126 | .navResultSergeLogo 127 | { 128 | width: 124px; 129 | } 130 | 131 | .navSergeSettingLogo 132 | { 133 | width: 79px; 134 | height: 79px; 135 | } 136 | 137 | .navWikiLogo 138 | { 139 | width: 95px; 140 | height: 79px; 141 | } 142 | } 143 | -------------------------------------------------------------------------------- /web/images/tick.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 24 | 46 | 48 | 49 | 51 | image/svg+xml 52 | 54 | 55 | 56 | 57 | 58 | 63 | 74 | 75 | 76 | -------------------------------------------------------------------------------- /web/images/pictogrammes/pictoMdp.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 24 | 43 | 45 | 46 | 48 | image/svg+xml 49 | 51 | 52 | 53 | 54 | 55 | 60 | *** 71 | 72 | 73 | -------------------------------------------------------------------------------- /failDetectorPack.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | 3 | ######### IMPORT CLASSICAL MODULES 4 | import re 5 | import sys 6 | from urlparse import urlparse 7 | from validators import url as vurl 8 | 9 | ######### IMPORT FROM SERGE MAIN 10 | from handshake import databaseConnection 11 | 12 | 13 | def vurlExt(link): 14 | resultV = vurl(link) 15 | regex = re.compile(u"https?:\/\/.+\..+https?:?\/\/", re.UNICODE | re.IGNORECASE) 16 | pattern = re.compile(regex) 17 | resultExt = pattern.match(link) 18 | resultExt = not resultExt 19 | 20 | result = resultV and resultExt 21 | 22 | return result 23 | 24 | 25 | def httpsCase(link): 26 | 27 | ######### HTTPS CASE 28 | split_link = link.split("https") 29 | alter_link = split_link[len(split_link)-1] 30 | alter_link = alter_link.replace("://", "").replace("//", "") 31 | alter_link = "https://"+alter_link 32 | 33 | checklink = vurlExt(alter_link) 34 | 35 | if checklink is True: 36 | return (alter_link) 37 | 38 | 39 | def httpCase(link): 40 | 41 | ######### HTTP CASE 42 | split_link = link.split("http") 43 | alter_link = split_link[len(split_link)-1] 44 | alter_link = alter_link.replace("://", "").replace("s//", "").replace("//", "") 45 | alter_link = "http://"+alter_link 46 | 47 | checklink = vurlExt(alter_link) 48 | 49 | if checklink is True: 50 | return (alter_link) 51 | 52 | 53 | def wwwCase(link): 54 | 55 | ######### WWW CASE 56 | split_link = link.split("www.") 57 | alter_link = split_link[len(split_link)-1] 58 | alter_link = alter_link.replace("://", "").replace("//", "") 59 | alter_link = "www."+alter_link 60 | 61 | checklink = vurlExt(alter_link) 62 | 63 | if checklink is True: 64 | return (alter_link) 65 | 66 | 67 | def domainCase(link, id_source): 68 | 69 | ########### CONNECTION TO SERGE DATABASE 70 | database = databaseConnection() 71 | 72 | ######### MISSING DOMAIN CASE 73 | query_domain = "SELECT link FROM rss_serge WHERE id = %s " 74 | 75 | call_domain = database.cursor() 76 | call_domain.execute(query_domain, (id_source, )) 77 | rss_link = call_domain.fetchone() 78 | call_domain.close() 79 | 80 | rss_link = rss_link[0] 81 | 82 | parsed = urlparse(rss_link) 83 | protocol = parsed.scheme 84 | domain = parsed.netloc 85 | link = link.strip("/") 86 | alter_link = protocol+"://"+domain+"/"+link 87 | 88 | checklink = vurlExt(alter_link) 89 | 90 | if checklink is True: 91 | return (alter_link) 92 | 93 | 94 | def failUniversalCorrectorKit(link, id_source): 95 | 96 | checklink = vurlExt(link) 97 | 98 | if checklink is False: 99 | 100 | all_cases = [httpsCase(link), httpCase(link), wwwCase(link), domainCase(link, id_source)] 101 | 102 | for case in all_cases: 103 | 104 | alter_link = case 105 | 106 | if alter_link is not None: 107 | return(alter_link) 108 | 109 | elif checklink is True: 110 | return(link) 111 | -------------------------------------------------------------------------------- /web/controller/bug.php: -------------------------------------------------------------------------------- 1 | ' . var_get_t('errorMessageCaptcha', $bdd) . '
'; 52 | } 53 | elseif (empty($data['email']) && !empty($data['bugDescription'])) 54 | { 55 | $errorMessage = 'error ' . var_get_t('Bad email', $bdd) . '
'; 56 | } 57 | elseif (empty($data['bugDescription']) && !empty($data['email'])) 58 | { 59 | $errorMessage = 'error ' . var_get_t('Bad description', $bdd) . '
'; 60 | } 61 | 62 | if (empty($_SESSION['email']) && !empty($data['email'])) 63 | { 64 | $email = $data['email']; 65 | } 66 | 67 | # Generate captcha 68 | include('model/captcha.php'); 69 | 70 | $cpt = 1; 71 | $captcha_val = ''; 72 | 73 | while ($cpt < 5) 74 | { 75 | $nb_captcha = rand(1, 52); 76 | $captcha_name = 'images/captcha/'.$nb_captcha.'.png'; 77 | copy($captcha_name, 'images/captcha/captcha'.$cpt.'.png'); 78 | $captcha_val = $captcha_val.$captcha[$nb_captcha-1]; 79 | 80 | $cpt++; 81 | } 82 | 83 | $_SESSION['captcha'] = hash('sha256', $captcha_val); 84 | 85 | include('view/nav/nav.php'); 86 | 87 | include('view/body/bug.php'); 88 | 89 | include('view/footer/footer.php'); 90 | 91 | ?> 92 | -------------------------------------------------------------------------------- /handshake.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf8 -*- 2 | 3 | """insertSQL contains some functions for handshaking with Serge database""" 4 | 5 | ######### IMPORT CLASSICAL MODULES 6 | import MySQLdb 7 | import smtplib 8 | import time 9 | from email.mime.multipart import MIMEMultipart 10 | from email.mime.text import MIMEText 11 | 12 | 13 | def databaseConnection(): 14 | """Connexion to Serge database""" 15 | 16 | passSQL = open("/var/www/Serge/permission/password.txt", "r") 17 | passSQL = passSQL.read().strip() 18 | 19 | database = MySQLdb.connect(host="localhost", user="Serge", passwd=passSQL, db="Serge", use_unicode=1, charset="utf8mb4") 20 | 21 | return database 22 | 23 | 24 | def highwayToMail(register, newsletter, priority, pydate): 25 | """Function for emails sending""" 26 | 27 | ########### CONNECTION TO SERGE DATABASE 28 | database = databaseConnection() 29 | 30 | ######### PREMIUM STATUS CHECKING 31 | query_status_checking = "SELECT premium_expiration_date FROM users_table_serge WHERE id = %s" 32 | 33 | call_users = database.cursor() 34 | call_users.execute(query_status_checking, (register,)) 35 | expiration_date = call_users.fetchone() 36 | call_users.close() 37 | 38 | verif_time = time.time() 39 | 40 | if expiration_date > verif_time : 41 | 42 | ######### SERGE MAIL 43 | sergemail = open("/var/www/Serge/permission/sergemail.txt", "r") 44 | fromaddr = sergemail.read().strip() 45 | sergemail.close 46 | 47 | ######### ADRESSES AND LANGUAGE RECOVERY 48 | query_user_infos = "SELECT email, language FROM users_table_serge WHERE id = %s" 49 | 50 | call_users = database.cursor() 51 | call_users.execute(query_user_infos, (register,)) 52 | user_infos = call_users.fetchone() 53 | call_users.close() 54 | 55 | toaddr = user_infos[0] 56 | 57 | ######### VARIABLES FOR MAIL FORMATTING BY LANGUAGE 58 | pydate = " "+pydate 59 | if priority == "NORMAL": 60 | subject_FR = "[SERGE] Veille Industrielle et Technologique"+pydate 61 | subject_EN = "[SERGE] News monitoring and Technological watch"+pydate 62 | elif priority == "HIGH": 63 | subject_FR = "[ALERTE SERGE] Informations Prioritaires"+pydate 64 | subject_EN = "[SERGE] Prioritary Informations"+pydate 65 | 66 | try: 67 | exec("translate_subject"+"="+"subject_"+user_infos[1]) 68 | except NameError: 69 | translate_subject = subject_EN 70 | 71 | ######### CONTENT WRITING IN EMAIL 72 | msg = MIMEText(newsletter, 'html') 73 | 74 | msg['From'] = fromaddr 75 | msg['To'] = toaddr 76 | msg['Subject'] = translate_subject 77 | 78 | passmail = open("permission/passmail.txt", "r") 79 | mdp_mail = passmail.read().strip() 80 | passmail.close() 81 | 82 | mailserver = open("permission/mailserver.txt", "r") 83 | mailserveraddr = mailserver.read().strip() 84 | mailserver.close() 85 | 86 | ######### EMAIL SERVER CONNEXION 87 | server = smtplib.SMTP(mailserveraddr, 5025) 88 | server.starttls() 89 | server.login(fromaddr, mdp_mail) 90 | text = msg.as_string() 91 | server.sendmail(fromaddr, toaddr, text) 92 | server.quit() 93 | -------------------------------------------------------------------------------- /web/images/iconFuncRss.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 24 | 25 | 27 | image/svg+xml 28 | 30 | 31 | 32 | 33 | 34 | 36 | 61 | 66 | 67 | -------------------------------------------------------------------------------- /web/images/iconFuncMail.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 24 | 25 | 27 | image/svg+xml 28 | 30 | 31 | 32 | 33 | 34 | 36 | 61 | 68 | 74 | 80 | 81 | -------------------------------------------------------------------------------- /web/model/updateSearchIndex.php: -------------------------------------------------------------------------------- 1 | prepare("SELECT id, title, link, `date`, $keywordQueryId FROM $tableName WHERE search_index IS NULL AND owners LIKE :user"); 11 | $req->execute(array( 12 | 'user' => '%,' . $_SESSION['id'] . '%')); 13 | $result = $req->fetchAll(); 14 | $req->closeCursor(); 15 | 16 | foreach ($result as $line) 17 | { 18 | if(!empty($tableNameQuery)) 19 | { 20 | # Add keyword in Index 21 | $keywordQueryIds = explode(',', $line[$keywordQueryId]); 22 | $keywordQueryIndex= ''; 23 | 24 | foreach ($keywordQueryIds as $id) 25 | { 26 | $req = $bdd->prepare("SELECT $queryColumn FROM $tableNameQuery WHERE id = :id"); 27 | $req->execute(array( 28 | 'id' => $id)); 29 | $result = $req->fetch(); 30 | $req->closeCursor(); 31 | 32 | if ($type === 'sciences') 33 | { 34 | $step1 = preg_replace("/(%28|%29|%22|AND\+|OR\+|NOTAND\+[^+]+(\+|$))/", "", $result[$queryColumn]); 35 | $step2 = preg_replace("/[^:\+]+:/", "", $step1); 36 | $result[$queryColumn] = preg_replace("/\+/", " ", $step2); 37 | } 38 | elseif ($type === 'patents') 39 | { 40 | $step1 = urldecode($result[$queryColumn]); 41 | $step2 = preg_replace("/(AND|OR)/", "", $step1); 42 | $result[$queryColumn] = preg_replace("/[^:\ ]+:/", "", $step2); 43 | } 44 | 45 | $keywordQueryIndex = $keywordQueryIndex. ' ' . $result[$queryColumn]; 46 | } 47 | 48 | # Link studies 49 | $linkKeywords = preg_replace("/([^A-za-z0-9]|https)/", " ", $line['link']); 50 | preg_match_all("/\w{5,}/", $linkKeywords, $linkKeywords_array); 51 | $linkKeywords_array = array_unique($linkKeywords_array[0]); 52 | $linkKeywords = implode(' ', $linkKeywords_array); 53 | $title = $linkKeywords . ' '; 54 | } 55 | 56 | $title = $title . $line['title'] . ' ' . $keywordQueryIndex; 57 | 58 | $wordArray = explode(' ', $title); 59 | $titleIndexLOWER = ''; 60 | $titleIndexSOUNDEX = ''; 61 | $titleIndexDELACCENT = ''; 62 | $titleIndexPERMUTE = ''; 63 | 64 | foreach($wordArray as $word) 65 | { 66 | $titleIndexLOWER = $titleIndexLOWER . ' ' . mb_strtolower($word); 67 | $titleIndexDELACCENT = $titleIndexDELACCENT . ' ' . mb_strtolower(del_accent($word)); 68 | $titleIndexSOUNDEX = $titleIndexSOUNDEX . ' ' . soundex($word); 69 | } 70 | 71 | $dateIndex = htmlspecialchars(date("d/m/o", $line['date'])); 72 | $titleIndexLOWER = htmlspecialchars($titleIndexLOWER); 73 | $titleIndexDELACCENT = htmlspecialchars($titleIndexDELACCENT); 74 | 75 | $searchIndex = $dateIndex . ' ' . $titleIndexLOWER . ' ' . $titleIndexDELACCENT . ' ' . $titleIndexSOUNDEX; 76 | 77 | // Update search index 78 | $req = $bdd->prepare("UPDATE $tableName SET search_index = :search WHERE id = :id"); 79 | $req->execute(array( 80 | 'search' => $searchIndex, 81 | 'id' => $line['id'])); 82 | $req->closeCursor(); 83 | } 84 | ?> 85 | -------------------------------------------------------------------------------- /sergenet.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | 3 | """sergenet contains all the functions related to internet connexion.""" 4 | 5 | ######### IMPORT CLASSICAL MODULES 6 | import requests 7 | import logging 8 | 9 | 10 | def aLinkToThePast(link, content_type): 11 | """Function for standardized requests to feed and internet pages.""" 12 | 13 | ######### LOGGER CALL 14 | logger_info = logging.getLogger("info_log") 15 | 16 | try: 17 | if content_type == 'fullcontent': 18 | req = requests.get(link, headers={'User-Agent': "Serge Browser"}, timeout=15) 19 | req.encoding = "utf8" 20 | content_link = req.text 21 | elif content_type == 'etag': 22 | content_link = requests.head(link, headers={'User-Agent': "Serge Browser"}, timeout=15).headers.get('etag') 23 | elif content_type == 'favicon': 24 | req = requests.get(link, stream=True) 25 | content_link = req.raw 26 | 27 | logger_info.info("READ : "+link+"\n") 28 | content_link_error = False 29 | except requests.exceptions.ConnectionError: 30 | link = link.replace("http://", "").replace("http://", "") 31 | logger_info.warning("CONNECTION ERROR AT "+link+"\n") 32 | logger_info.warning("Please check the availability of the feed and the link\n \n") 33 | content_link = None 34 | content_link_error = True 35 | except requests.exceptions.HTTPError: 36 | link = link.replace("http://", "").replace("https://", "") 37 | logger_info.warning("Error in the access "+link+" (HTTP protocol error) \n") 38 | logger_info.warning("Please check the availability of the feed\n \n") 39 | content_link = None 40 | content_link_error = True 41 | except (requests.exceptions.URLRequired, requests.exceptions.MissingSchema) as e: 42 | link = link.replace("http://", "").replace("https://", "") 43 | logger_info.warning("Error in the access "+link+" (Link is not an URL) \n") 44 | logger_info.warning("Please check the link\n \n") 45 | content_link = None 46 | content_link_error = True 47 | except requests.exceptions.TooManyRedirects: 48 | link = link.replace("http://", "").replace("https://", "") 49 | logger_info.warning("Error in the access "+link+" (Too Many Redirects error) \n") 50 | logger_info.warning("Please check the link\n \n") 51 | content_link = None 52 | content_link_error = True 53 | except requests.exceptions.ConnectTimeout: 54 | link = link.replace("http://", "").replace("https://", "") 55 | logger_info.warning("Error in the access "+link+" (server don't respond ---> ConnectTimeout) \n") 56 | logger_info.warning("Please check the availability of the feed\n \n") 57 | content_link = None 58 | content_link_error = True 59 | except requests.exceptions.ReadTimeout: 60 | link = link.replace("http://", "").replace("https://", "") 61 | logger_info.warning("Error in the access "+link+" (server don't respond ---> ReadTimeout) \n") 62 | logger_info.warning("Please check the availability of the feed\n \n") 63 | content_link = None 64 | content_link_error = True 65 | except requests.exceptions.InvalidURL: 66 | link = link.replace("http://", "").replace("https://", "") 67 | logger_info.warning("Failed to parse "+link+" (InvalidURL exception) \n") 68 | logger_info.warning("Please check the link\n \n") 69 | content_link = None 70 | content_link_error = True 71 | 72 | req_results = (content_link, content_link_error) 73 | 74 | return req_results 75 | -------------------------------------------------------------------------------- /web/images/iconFuncSMS.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 24 | 25 | 27 | image/svg+xml 28 | 30 | 31 | 32 | 33 | 34 | 36 | 60 | 67 | 72 | SMS 83 | 84 | -------------------------------------------------------------------------------- /web/images/pictogrammes/pictoWallpaper.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 24 | 43 | 45 | 46 | 48 | image/svg+xml 49 | 51 | 52 | 53 | 54 | 55 | 60 | 69 | 75 | 81 | 87 | 88 | 89 | -------------------------------------------------------------------------------- /web/view/body/purchase.php: -------------------------------------------------------------------------------- 1 |
2 |
3 | 4 | 8 |
9 |
10 | 11 |
12 | 17 |

18 |

19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 | 54 | 58 |
59 |

Payment system choice :


60 |
61 | 62 | 63 | Stripe payment system   74 |
75 |
76 | 81 |
82 | 83 |
84 |
85 | 86 |

87 |

88 | 89 |

90 | 91 |
92 |
93 | 97 |
98 | -------------------------------------------------------------------------------- /web/images/pictogrammes/redcross.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 24 | 46 | 48 | 49 | 51 | image/svg+xml 52 | 54 | 55 | 56 | 57 | 58 | 63 | 69 | 75 | 76 | 77 | -------------------------------------------------------------------------------- /database_demo/language_serge.sql: -------------------------------------------------------------------------------- 1 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 2 | SET time_zone = "+00:00"; 3 | 4 | CREATE TABLE `language_serge` ( 5 | `code` text COLLATE utf8mb4_bin NOT NULL, 6 | `name` text COLLATE utf8mb4_bin DEFAULT NULL 7 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 8 | 9 | SET NAMES utf8mb4; 10 | 11 | INSERT INTO `language_serge` (`code`, `name`) VALUES 12 | ('aa', 'Afar'), 13 | ('ab', 'Abkhazian'), 14 | ('af', 'Afrikaans'), 15 | ('ak', 'Akan'), 16 | ('am', 'Amharic'), 17 | ('ar', 'Arabic'), 18 | ('as', 'Assamese'), 19 | ('ay', 'Aymara'), 20 | ('az', 'Azerbaijani'), 21 | ('ba', 'Bashkir'), 22 | ('be', 'Belarusian'), 23 | ('bg', 'Bulgarian'), 24 | ('bm', 'Bambara'), 25 | ('bn', 'Bengali'), 26 | ('bo', 'Tibetan'), 27 | ('br', 'Breton'), 28 | ('bs', 'Bosnian'), 29 | ('ca', 'Catalan'), 30 | ('ce', 'Chechen'), 31 | ('co', 'Corsican'), 32 | ('cs', 'Czech'), 33 | ('cv', 'Chuvash'), 34 | ('cy', 'Welsh'), 35 | ('da', 'Danish'), 36 | ('de', 'German'), 37 | ('dv', 'Divehi'), 38 | ('dz', 'Dzongkha'), 39 | ('ee', 'Ewe'), 40 | ('el', 'Greek'), 41 | ('en', 'English'), 42 | ('eo', 'Esperanto'), 43 | ('es', 'Spanish'), 44 | ('et', 'Estonian'), 45 | ('eu', 'Basque'), 46 | ('fa', 'Persian'), 47 | ('ff', 'Fulah'), 48 | ('fi', 'Finnish'), 49 | ('fj', 'Fijian'), 50 | ('fo', 'Faroese'), 51 | ('fr', 'French'), 52 | ('fy', 'Western Frisian'), 53 | ('ga', 'Irish'), 54 | ('gd', 'Scottish Gaelic'), 55 | ('gl', 'Galician'), 56 | ('gn', 'Guarani'), 57 | ('gu', 'Gujarati'), 58 | ('ha', 'Hausa'), 59 | ('he', 'Hebrew'), 60 | ('hi', 'Hindi'), 61 | ('hr', 'Croatian'), 62 | ('ht', 'Haitian'), 63 | ('hu', 'Hungarian'), 64 | ('hy', 'Armenian'), 65 | ('ia', 'Interlingua'), 66 | ('id', 'Indonesian'), 67 | ('ie', 'Interlingue'), 68 | ('ig', 'Igbo'), 69 | ('ii', 'Sichuan Yi'), 70 | ('is', 'Icelandic'), 71 | ('it', 'Italian'), 72 | ('iu', 'Inuktitut'), 73 | ('ja', 'Japanese'), 74 | ('jv', 'Javanese'), 75 | ('ka', 'Georgian'), 76 | ('kg', 'Kongo'), 77 | ('kk', 'Kazakh'), 78 | ('kl', 'Kalaallisut'), 79 | ('km', 'Khmer'), 80 | ('kn', 'Kannada'), 81 | ('ko', 'Korean'), 82 | ('ks', 'Kashmiri'), 83 | ('ku', 'Kurdish'), 84 | ('kv', 'Komi'), 85 | ('kw', 'Cornish'), 86 | ('ky', 'Kirghiz'), 87 | ('la', 'Latin'), 88 | ('lb', 'Luxembourgish'), 89 | ('lg', 'Ganda'), 90 | ('li', 'Limburgish'), 91 | ('ln', 'Lingala'), 92 | ('lo', 'Lao'), 93 | ('lt', 'Lithuanian'), 94 | ('lu', 'Luba-Katanga'), 95 | ('lv', 'Latvian'), 96 | ('mh', 'Marshallese'), 97 | ('mi', 'Māori'), 98 | ('mk', 'Macedonian'), 99 | ('ml', 'Malayalam'), 100 | ('mn', 'Mongolian'), 101 | ('mr', 'Marathi'), 102 | ('ms', 'Malay'), 103 | ('mt', 'Maltese'), 104 | ('my', 'Burmese'), 105 | ('nb', 'Norwegian Bokmål'), 106 | ('nd', 'North Ndebele'), 107 | ('ne', 'Nepali'), 108 | ('nl', 'Dutch'), 109 | ('nn', 'Norwegian Nynorsk'), 110 | ('no', 'Norwegian'), 111 | ('oc', 'Occitan'), 112 | ('oj', 'Ojibwa'), 113 | ('or', 'Oriya'), 114 | ('os', 'Ossetian'), 115 | ('pa', 'Panjabi'), 116 | ('pi', 'Pāli'), 117 | ('pl', 'Polish'), 118 | ('pt', 'Portuguese'), 119 | ('rm', 'Romansh'), 120 | ('ro', 'Romanian'), 121 | ('ru', 'Russian'), 122 | ('rw', 'Kinyarwanda'), 123 | ('sa', 'Sanskrit'), 124 | ('sh', 'Serbo-croate'), 125 | ('si', 'Sinhalese'), 126 | ('sk', 'Slovak'), 127 | ('sl', 'Slovene'), 128 | ('sm', 'Samoan'), 129 | ('sn', 'Shona'), 130 | ('so', 'Somali'), 131 | ('sq', 'Albanian'), 132 | ('sr', 'Serbian'), 133 | ('ss', 'Swati'), 134 | ('su', 'Sundanese'), 135 | ('sv', 'Swedish'), 136 | ('sw', 'Swahili'), 137 | ('ta', 'Tamil'), 138 | ('th', 'Thai'), 139 | ('ti', 'Tigrinya'), 140 | ('tk', 'Turkmen'), 141 | ('tl', 'Tagalog'), 142 | ('tn', 'Tswana'), 143 | ('to', 'Tonga'), 144 | ('tr', 'Turkish'), 145 | ('ts', 'Tsonga'), 146 | ('tt', 'Tatar'), 147 | ('tw', 'Twi'), 148 | ('ug', 'Uighur'), 149 | ('uk', 'Ukrainian'), 150 | ('uz', 'Uzbek'), 151 | ('vi', 'Viêt Namese'), 152 | ('yi', 'Yiddish'), 153 | ('yo', 'Yoruba'), 154 | ('za', 'Zhuang'), 155 | ('zh', 'Chinese'), 156 | ('zu', 'Zulu'); 157 | -------------------------------------------------------------------------------- /web/model/addNewKeyword.php: -------------------------------------------------------------------------------- 1 | ' . $ERROR_MESSAGE; 53 | } 54 | else 55 | { 56 | // Add source in the end of source list for current user 57 | if ($sourceId == '0') 58 | { 59 | $newSourceForAdding = ','; 60 | foreach ($ownerSources as $ownerSourcesList) 61 | { 62 | if (!preg_match("/\|" . $_SESSION['id'] . ":[,0-9,]*," . $ownerSourcesList['id'] . ",[,0-9,]*\|/", $applicableOwners)) 63 | { 64 | $newSourceForAdding = $newSourceForAdding . $ownerSourcesList['id'] . ','; 65 | $active = $active + 1; 66 | } 67 | } 68 | $applicableOwners = $applicableOwners . '|'; 69 | } 70 | else 71 | { 72 | $newSourceForAdding = ',' . $sourceId . ',|'; 73 | $active = $active + 1; 74 | } 75 | $newOwner = preg_replace("/,*\|$/", $newSourceForAdding, $userApplicable_owners_sources[0]); 76 | $applicableOwners = preg_replace("/\|" . $_SESSION['id'] . ":[,0-9,]*,\|/", $newOwner, $applicableOwners); 77 | } 78 | } 79 | else 80 | { 81 | // Add user and source in applicable_owners_sources 82 | if ($sourceId == '0') 83 | { 84 | $newOwner = '|' . $_SESSION['id'] . ':,'; 85 | foreach ($ownerSources as $ownerSourcesList) 86 | { 87 | $newOwner = $newOwner . $ownerSourcesList['id'] . ','; 88 | $active = $active + 1; 89 | } 90 | $newOwner = $newOwner . '|'; 91 | } 92 | else 93 | { 94 | $newOwner = '|' . $_SESSION['id'] . ':,' . $sourceId . ',|'; 95 | $active = $active + 1; 96 | } 97 | $applicableOwners = preg_replace("/\|$/", $newOwner,$applicableOwners); 98 | } 99 | 100 | if ($updateBDD) 101 | { 102 | $updateCol = array(array('applicable_owners_sources', $applicableOwners), 103 | array('active', $active)); 104 | $checkCol = array(array('id', '=', $result['id'], '')); 105 | $execution = update('keyword_news_serge', $updateCol, $checkCol, '', $bdd); 106 | } 107 | } 108 | 109 | return $ERROR_MESSAGE; 110 | } 111 | ?> 112 | --------------------------------------------------------------------------------