Commit ff199197 authored by Thierry BUGEAT's avatar Thierry BUGEAT

Cordova migration. 1st commit.

parent 9a1d5428
---------------------------------------------------------
# myFeeds 1.4.0 (2015-12-04)
### Severe Bug(s)
- #45 Remove usage of Google Feeds API
---------------------------------------------------------
# Important message 2015.12.02
Due to the usage of deprecated Google Feeds API, versions
of myFeeds prior to 1.3.x no longer works.
Sorry for the inconvenience.
Please download version 1.4.0
---------------------------------------------------------
# myFeeds 1.3.1 (2015-11-24)
### Bug(s)
- Bug in news display when animations are off
---------------------------------------------------------
# myFeeds 1.3.0 (2015-11-24)
### New feature(s)
- #18 Add Tiny Tiny RSS online account
- #36 Add landscape orientation
- #39 Add animation option
### Improvement(s)
- #36 Update settings screen theme
- #37 Update Firefox OS 1.4 theme
- #38 Update Russian translations
- Increase UI performances
### Misc
- #40 Add vibration on buttons next and previous entries
- #35 Add local storage for future desktop version
- #34 Add proxy (The Old Reader) for future desktop version
---------------------------------------------------------
# myFeeds 1.2.0 (2015-10-24)
### New feature(s):
- #13 Add AOL Reader online account
- #30 Export subscriptions as OPML file
- #29 Add Russian language (Thanks to Пётр Жоря)
- #33 Display next & previous news titles at bottom of page
### Improvement(s):
- #32 Count keywords
### Bug(s)
- #31 Display previoulsy loaded images in offline mode
---------------------------------------------------------
# myFeeds 1.1.1 (2015-10-10)
### Improvement(s):
- Update date localization in main entry screen
---------------------------------------------------------
# myFeeds 1.1.0 (2015-10-06)
### New feature(s):
- #9 Add buttons next & previous news
### Improvement(s):
- #6 Update themes icones
- #15 Sort keywords by alphabetical order
- #26 Dates and times localization
- #25 Update subscriptions when application start
- #23 Add GPL licence
- #24 Add copyright in sources files
- #28 Add CHANGELOG file
### Bug(s):
- #7 Bug: Some photos are not displayed
- #27 Incorrect feeds last update date
---------------------------------------------------------
# myFeeds 1.0.1
### Improvement(s):
- Keep scrolling position after synchro
- Load only visibles images
---------------------------------------------------------
This diff is collapsed.
# myFeeds 1.4.0 (2015-12-04): RSS reader for Firefox OS
This project is now hosted by Framasoft.
The main GIT repository URL is now :
https://git.framasoft.org/thierry-bugeat/myFeeds
![myFeeds](http://thierry.bugeat.free.fr/myFeeds/images/myFeeds/features/scope.jpg)
[Visit website for more informations](http://thierry.bugeat.com/myFeeds/)
## How to contribute if you are NOT a developer ?
The easiest way to help me is to contribute to translations. I'm alone and not able to do that by myself. If you are ready to "lost" 1 hour, you can download "app.properties" (locales/en/app.properties) file and send me the result of your translations at the following email: myFeeds(AT)bugeat.com with your firstname and lastname for credits.
## Comment contribuer si vous n'êtes PAS développeur?
La voie la plus simple est de participer aux traductions. Je suis seul et pas capable de faire cela par moi-même. Si vous êtes prêts à "perdre" 1 heure, vous pouvez télécharger le fichier "app.properties" (locales/en/app.properties) et m'envoyer le résultât de vos traductions à l'adresse mail suivante: myFeeds(AT)bugeat.com avec votre nom et prénom pour vous mentionner dans les crédits.
## How to contribute if you are developer ?
This project is now hosted by Framasoft. The Github repository is only a mirror. If you want to contribute, fork this project from url on https://git.framasoft.org/thierry-bugeat/myFeeds. (no registration needed, you can sign in with your Github account)
## Comment contribuer si vous êtes développeur ?
Ce projet est maintenant hébergé par Framasoft. Le dépôt Github n'est qu'un mirroir. Si vous souhaitez contribuer, forkez ce projet depuis l'url https://git.framasoft.org/thierry-bugeat/myFeeds. (l'inscription n'est pas nécessaire et vous pouvez vous connecter avec votre compte Github)
![myFeeds](http://thierry.bugeat.free.fr/myFeeds/images/myFeeds/features/myFeeds-desktop-version.png)
#!/bin/sh
# ============================================================
# --- Get values "version" and "id" from file "config.xml" ---
# ============================================================
VERSION=`cat config.xml| sed -n 's/.*version="\([0-9]\.[0-9]*\.[0-9]*\).*/\1/p'`
ID=`cat config.xml| sed -n 's/.*id="\([a-z]*\.[a-z]*\.[a-z]*\).*/\1/p'`
APP_NAME=myFeeds
# ============================
# --- Build and rename APK ---
# ============================
cordova build android
cp platforms/android/build/outputs/apk/android-debug.apk ${APP_NAME}_${VERSION}.apk
# =============================
# --- Update or Replace APK ---
# =============================
echo ""
echo "Connect your device then..."
read -p "Update APK (u) or Delete and Replace APK (r) ? " choice
case "$choice" in
r|R ) INSTALL=replace;;
u|U ) INSTALL=update;;
* ) exit;;
esac
if [ "$INSTALL" = "replace" ];
then
# Unintall previous version
adb shell pm uninstall -k $ID
# Install APK
adb install ${APP_NAME}_${VERSION}.apk
else
# Update APK
adb install -r ${APP_NAME}_${VERSION}.apk
fi
<?xml version='1.0' encoding='utf-8'?>
<widget id="com.bugeat.myfeeds" version="1.5.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>myFeeds</name>
<description>
RSS & ATOM feeds reader
</description>
<author email="myfeeds@bugeat.com" href="http://thierry.bugeat.com/myfeeds">
Thierry BUGEAT
</author>
<icon src="www/img/logo.png" />
<content src="index.html" />
<plugin name="cordova-plugin-whitelist" spec="1" />
<access origin="*" />
<allow-navigation href="*" />
<access origin="*" />
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-intent href="tel:*" />
<allow-intent href="sms:*" />
<allow-intent href="mailto:*" />
<allow-intent href="geo:*" />
<platform name="android">
<allow-intent href="market:*" />
</platform>
<platform name="ios">
<allow-intent href="itms:*" />
<allow-intent href="itms-apps:*" />
</platform>
<platform name="firefoxos">
<permission name="systemXHR" privileged="true" description="load data from server" />
</platform>
</widget>
<!--
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
#
-->
# Cordova Hooks
Cordova Hooks represent special scripts which could be added by application and plugin developers or even by your own build system to customize cordova commands. See Hooks Guide for more details: http://cordova.apache.org/docs/en/edge/guide_appdev_hooks_index.md.html#Hooks%20Guide.
<!--
Copyright 2015 Thierry BUGEAT
This file is part of myFeeds.
myFeeds is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
myFeeds is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with myFeeds. If not, see <http://www.gnu.org/licenses/>.
-->
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, user-scalable=no">
<meta name="theme-color" content="#CD6723" id="theme-color">
<title data-l10n-id="app-title">my Feeds</title>
<link rel="icon" type="image/png" href="images/icon-128.png">
<link href="style/ffos1.4.css" type="text/css" rel="stylesheet">
<link href="style/vars.css" type="text/css" rel="stylesheet">
<link href="style/colors.css" type="text/css" rel="stylesheet">
<link href="style/fonts.css" type="text/css" rel="stylesheet">
<link href="style/gaia-icons.css" type="text/css" rel="stylesheet">
<link href="style/font-awesome.css" type="text/css" rel="stylesheet">
<link href="style/header.css" type="text/css" rel="stylesheet">
<link href="style/subheader.css" type="text/css" rel="stylesheet">
<link href="style/footer.css" type="text/css" rel="stylesheet">
<link href="style/browser.css" type="text/css" rel="stylesheet">
<link href="style/feeds-list.css" type="text/css" rel="stylesheet">
<link href="style/find-feeds.css" type="text/css" rel="stylesheet">
<link href="style/settings.css" type="text/css" rel="stylesheet">
<link href="style/style.css" type="text/css" rel="stylesheet">
<link href="style/entries-list.css" type="text/css" rel="stylesheet">
<link href="style/switches.css" type="text/css" rel="stylesheet">
<link href="style/buttons.css" type="text/css" rel="stylesheet">
<link href="style/input_areas.css" type="text/css" rel="stylesheet">
<link href="style/main-entry.css" type="text/css" rel="stylesheet">
</head>
<body>
<div id="loading"></div>
<!-- ================= -->
<!-- Find feeds screen -->
<!-- ================= -->
<div role="region" data-type="sidebar" id="find-feeds-container">
<section role="myHeader">
<header class="mySystemHeader">
<h1 data-l10n-id="add-feed">Add Feed</h1>
</header>
</section>
<section role="mySubHeader">
<header class="mySystemHeader">
<form id="findFeeds" action="#" class="_online_">
<input type="text" required="required" placeholder="http://" id="findFeedsText">
<button type="reset" id="findFeedsReset"><span data-icon="delete"></span></button>
<button type="submit" id="findFeedsSubmit"><span data-icon="search"></span></button>
</form>
</header>
</section>
<div id="find-feeds" class="scrollable"></div>
<section role="myFooter" class="">
<header>
<button id="findFeedsClose"><span data-icon="close"></span></button>
</header>
</section>
</div>
<!-- ==================== -->
<!-- Subscriptions screen -->
<!-- ==================== -->
<div role="region" data-type="sidebar" id="feeds-list-container">
<section role="myHeader">
<header class="mySystemHeader">
<h1 data-l10n-id="my-subscriptions">my Subscriptions</h1>
</header>
</section>
<div id="feeds-list" class="scrollable"></div>
<section role="myFooter" class="">
<header>
<button id="closeFeedsList" class="_startAnimation_"><span data-icon="close"></span></button>
<button id="findFeedsOpen" class="_online_"><span data-icon="add"></span></button>
<button id="topupFeedsList"><span data-icon="topup"></span></button>
</header>
</section>
</div>
<!-- =========== -->
<!-- Main screen -->
<!-- =========== -->
<div id="main">
<div id="feeds-entries-container">
<section role="myHeader">
<header>
<button id="nextDay"><span data-icon="back"></span></button>
<h1 data-l10n-id="app-title">my Feeds</h1>
<button id="previousDay"><span data-icon="forward"></span></button>
</header>
</section>
<section role="mySubHeader">
<header class="mySystemHeader">
<h2 id="feedsEntriesNbDaysAgo"></h2>
<span id="displayGrid" class="icone grid"></span>
<span id="displayList" class="icone list"></span>
<span id="displayCard" class="icone card"></span>
</header>
</section>
<div id="feeds-entries" class="scrollable"></div>
<section role="mySubHeader" id="formSearchEntries" class="_hide">
<header class="mySystemHeader">
<form action="#">
<input type="text" required="required" placeholder="search" id="inputSearchEntries">
<button type="reset" id="resetSearchEntries"><span data-icon="delete"></span></button>
<button id="addKeyword"><span data-icon="add"></span></button>
</form>
</header>
</section>
<section role="myFooter" class="">
<header>
<button id="menu" class="_startAnimation_"><span data-icon="menu"></span></button>
<button id="sync" class="_online_"><span data-icon="sync"></span></button>
<button id="topup"><span data-icon="topup"></span></button>
<button id="searchEntries"><span data-icon="search"></span></button>
<button id="settingsOpen" class="_startAnimation_"><span data-icon="settings"></span></button>
</header>
</section>
</div>
<!-- =============== -->
<!-- One news screen -->
<!-- =============== -->
<div id="main-entry-container">
<section role="myHeader">
<header>
<h1 data-l10n-id="my-news">my News</h1>
</header>
</section>
<div id="main-entry" class="scrollable">
<div id="browser"></div>
</div>
<section role="mySubEntry">
<header class="mySystemHeader">
<span><div id="nextEntryTitle"></div></span>
<span><div id="previousEntryTitle"></div></span>
</header>
</section>
<section role="myFooter" class="">
<header>
<button id="closeMainEntry"><span data-icon="close"></span></button>
<button id="share"><span data-icon="share"></span></button>
<button id="nextEntry"><span data-icon="back"></span></button>
<button id="previousEntry"><span data-icon="forward"></span></button>
</header>
</section>
</div>
</div>
<!-- =============== -->
<!-- Settings screen -->
<!-- =============== -->
<div role="region" data-type="sidebar" id="settings-container">
<section role="myHeader">
<header class="mySystemHeader">
<h1 data-l10n-id="my-settings">my Settings</h1>
</header>
</section>
<div id="settings" class="scrollable"></div>
<section role="myFooter" class="">
<header>
<button id="settingsClose" class="_startAnimation_"><span data-icon="close"></span></button>
</header>
</section>
</div>
</body>
<!-- Inline CSS -->
<script type="text/javascript" src="style/inline.css.js"></script>
<!-- App localization -->
<script src="libs/l10n.js"></script>
<link rel="resource" type="application/l10n" href="locales/locales.ini" />
<script type="text/javascript" src="locales/locales.js"></script>
<!-- Libs -->
<script type="text/javascript" src="libs/myCore.js"></script>
<!-- classes -->
<script type="text/javascript" src="scripts/classes/MyFeeds.class.js"></script>
<script type="text/javascript" src="scripts/classes/MyUi.class.js"></script>
<script type="text/javascript" src="scripts/classes/MyFeeds/Feedly.class.js"></script>
<script type="text/javascript" src="scripts/classes/MyFeeds/TheOldReader.class.js"></script>
<script type="text/javascript" src="scripts/classes/MyFeeds/TinyTinyRss.class.js"></script>
<script type="text/javascript" src="scripts/classes/MyFeeds/AolReader.class.js"></script>
<script type="text/javascript" src="scripts/classes/MyFeeds/SimplePie.class.js"></script>
<script type="text/javascript" src="scripts/gestures.js"></script>
<script type="text/javascript" src="scripts/app.js"></script>
</html>
{
"prepare_queue": {
"installed": [],
"uninstalled": []
},
"config_munge": {
"files": {}
},
"installed_plugins": {
"cordova-plugin-whitelist": {
"PACKAGE_NAME": "com.bugeat.myfeeds"
},
"cordova-plugin-device": {
"PACKAGE_NAME": "com.bugeat.myfeeds"
},
"cordova-plugin-vibration": {
"PACKAGE_NAME": "com.bugeat.myfeeds"
},
"cordova-plugin-file": {
"PACKAGE_NAME": "com.bugeat.myfeeds"
},
"cordova-plugin-network-information": {
"PACKAGE_NAME": "com.bugeat.myfeeds"
},
"cordova-plugin-inappbrowser": {
"PACKAGE_NAME": "com.bugeat.myfeeds"
}
},