Update content of files

This commit is contained in:
GitHub Action 2024-03-31 16:41:38 +00:00
parent 7d7b46de48
commit b9526d9dec
2 changed files with 81 additions and 149 deletions

View file

@ -237,6 +237,26 @@ var Main = {
e.preventDefault();
closePopup(Aj.state.$headerMenu);
},
openSimplePopup: function($popup) {
var onEnterPress = function(e) {
if (e.keyCode == Keys.RETURN) {
e.stopImmediatePropagation();
closePopup($popup);
}
};
var onClose = function(e) {
e.stopImmediatePropagation();
closePopup($popup);
};
openPopup($popup, {
onOpen: function() {
$(document).on('keydown', onEnterPress);
},
onClose: function() {
$(document).off('keydown', onEnterPress);
}
});
},
eAuctionUnavailable: function(e) {
e.preventDefault();
var username = $(this).attr('data-username');
@ -262,56 +282,17 @@ var Main = {
eHowitworks: function(e) {
e.preventDefault();
e.stopImmediatePropagation();
var onEnterPress = function(e) {
if (e.keyCode == Keys.RETURN) {
e.stopImmediatePropagation();
closePopup(Aj.state.$howitworksPopup);
}
};
openPopup(Aj.state.$howitworksPopup, {
onOpen: function() {
$(document).on('keydown', onEnterPress);
},
onClose: function() {
$(document).off('keydown', onEnterPress);
}
});
Main.openSimplePopup(Aj.state.$howitworksPopup);
},
eHowofferworks: function(e) {
e.preventDefault();
e.stopImmediatePropagation();
var onEnterPress = function(e) {
if (e.keyCode == Keys.RETURN) {
e.stopImmediatePropagation();
closePopup(Aj.state.$howofferworksPopup);
}
};
openPopup(Aj.state.$howofferworksPopup, {
onOpen: function() {
$(document).on('keydown', onEnterPress);
},
onClose: function() {
$(document).off('keydown', onEnterPress);
}
});
Main.openSimplePopup(Aj.state.$howofferworksPopup);
},
eBotsAbout: function(e) {
e.preventDefault();
e.stopImmediatePropagation();
var onEnterPress = function(e) {
if (e.keyCode == Keys.RETURN) {
e.stopImmediatePropagation();
closePopup(Aj.state.$botsaboutPopup);
}
};
openPopup(Aj.state.$botsaboutPopup, {
onOpen: function() {
$(document).on('keydown', onEnterPress);
},
onClose: function() {
$(document).off('keydown', onEnterPress);
}
});
Main.openSimplePopup(Aj.state.$botsaboutPopup);
},
amountFieldValue: function($form, field) {
var $fieldEl = field ? $form.field(field) : $form;
@ -684,9 +665,14 @@ var Wallet = {
sendTransaction: function(options) {
if (Aj.globalState.tonConnectVersion == 2) {
var tonConnectUI = Aj.globalState.tonConnectUI;
var sendTransaction = function(transaction) {
var sendTransaction = function(data) {
var transaction = data.transaction;
tonConnectUI.sendTransaction(transaction).then(function(transaction) {
options.onConfirm && options.onConfirm(true);
if (data.confirm_method) {
var params = $.extend({boc: transaction.boc}, data.confirm_params);
Aj.apiRequest(data.confirm_method, params);
}
}).catch(function(){});
};
if (!tonConnectUI.connected) {
@ -697,10 +683,10 @@ var Wallet = {
if (result.error) {
return showAlert(result.error);
}
sendTransaction(result.transaction);
sendTransaction(result);
});
} else if (options.transaction) {
sendTransaction(options.transaction);
sendTransaction(options);
}
} else {
QR.showPopup(options);
@ -2392,15 +2378,17 @@ var Ads = {
init: function() {
Aj.onLoad(function(state) {
var cont = Aj.ajContainer;
$(cont).on('click.curPage', '.js-pay-for-ads', Ads.ePayForAds);
$(cont).on('click.curPage', '.js-howtopay-ton', Ads.eHowToPayTon);
$(cont).on('click.curPage', '.js-get-ad-rewards', Ads.eGetAdRewards);
state.$payForAdsPopup = $('.js-pay-for-ads-popup');
state.$howToPayTonPopup = $('.js-how-to-pay-ton-popup');
state.$howToGetRewardsPopup = $('.js-how-to-get-rewards-popup');
$(cont).on('click.curPage', '.js-more-funds-btn', Ads.eAddMoreFunds);
$(cont).on('click.curPage', '.js-recharge-btn', Ads.eRechargeAccount);
state.$rechargeForm = $('.js-recharge-form', cont);
state.$searchField = $('.js-account-search-field', cont);
Main.initForm(state.$rechargeForm);
state.$rechargeForm.on('submit', Ads.eSearchSubmit);
state.$rechargeForm.field('query').on('input', Ads.eSearchInput);
state.$rechargeForm.field('query').on('change', Ads.eSearchChange);
$('.js-form-clear', state.$rechargeForm).on('click', Ads.eSearchClear);
state.$rechargeBtn = $('.js-recharge-btn', cont);
state.updLastReq = +Date.now();
if (state.needUpdate) {
@ -2410,13 +2398,24 @@ var Ads = {
Aj.onUnload(function(state) {
clearTimeout(state.updStateTo);
state.needUpdate = false;
Main.destroyForm(state.$giftPremiumForm);
state.$rechargeForm.off('submit', Ads.eSearchSubmit);
state.$rechargeForm.field('query').off('input', Ads.eSearchInput);
state.$rechargeForm.field('query').off('change', Ads.eSearchChange);
$('.js-form-clear', state.$rechargeForm).off('click', Ads.eSearchClear);
Main.destroyForm(state.$rechargeForm);
});
},
ePayForAds: function(e) {
e.preventDefault();
e.stopImmediatePropagation();
Main.openSimplePopup(Aj.state.$payForAdsPopup);
},
eHowToPayTon: function(e) {
e.preventDefault();
e.stopImmediatePropagation();
Main.openSimplePopup(Aj.state.$howToPayTonPopup);
},
eGetAdRewards: function(e) {
e.preventDefault();
e.stopImmediatePropagation();
Main.openSimplePopup(Aj.state.$howToGetRewardsPopup);
},
updateState: function() {
var now = +Date.now();
if (document.hasFocus() ||
@ -2451,97 +2450,6 @@ var Ads = {
}
}
},
eSearchInput: function(e) {
var $field = Aj.state.$searchField;
$('.js-search-field-error').html('');
$field.removeClass('error');
},
eSearchChange: function(e) {
Ads.searchSubmit();
},
eSearchClear: function(e) {
var $form = Aj.state.$rechargeForm;
var $field = Aj.state.$searchField;
var $btn = Aj.state.$rechargeBtn;
$form.field('account').value('');
$form.field('query').value('').prop('disabled', false);
$btn.prop('disabled', true);
$field.removeClass('found');
$('.js-search-field-error').html('');
$field.removeClass('error');
Ads.updateUrl();
$form.field('query').focus();
},
eSearchSubmit: function(e) {
e.preventDefault();
Ads.searchSubmit();
},
searchSubmit: function() {
var $form = Aj.state.$rechargeForm;
var account = $form.field('account').value();
var query = $form.field('query').value();
if (!query.length) {
$form.field('query').focus();
return;
}
Aj.state.$searchField.addClass('loading').removeClass('play').redraw().addClass('play');
Aj.showProgress();
Aj.apiRequest('searchAdsAccount', {
query: account || query
}, function(result) {
Aj.hideProgress();
Ads.updateResult(result);
Aj.state.$searchField.removeClass('loading');
});
},
updateResult: function(result) {
var $form = Aj.state.$rechargeForm;
var $field = Aj.state.$searchField;
var $btn = Aj.state.$rechargeBtn;
if (result.error) {
$('.js-search-field-error').html(result.error);
$field.addClass('error').removeClass('found');
$form.field('query').prop('disabled', false);
} else {
$('.js-search-field-error').html('');
$field.removeClass('error');
if (result.found) {
if (result.found.photo) {
$('.js-account-search-photo', $field).html(result.found.photo);
}
if (result.found.name) {
var $form = Aj.state.$rechargeForm;
$form.field('query').value(uncleanHTML(result.found.name));
}
$form.field('account').value(result.found.account);
$field.addClass('found');
$form.field('query').prop('disabled', true);
$btn.prop('disabled', false);
} else {
$form.field('account').value('');
$field.removeClass('found');
$form.field('query').prop('disabled', false);
$btn.prop('disabled', true);
}
}
Ads.updateUrl();
},
updateUrl: function() {
var new_url = '';
var $form = Aj.state.$rechargeForm;
var account = $form.field('account').value();
if (account) {
new_url += '&account=' + encodeURIComponent(account);
}
if (new_url) {
new_url = '?' + new_url.substr(1);
}
var loc = Aj.location(), path = loc.pathname + loc.search;
if (!new_url) {
new_url = loc.pathname;
}
Aj.setLocation(new_url, path != '/ads');
},
updateHistory: function(html) {
$('.js-premium-history').replaceWith(html);
},
@ -2592,7 +2500,11 @@ var Ads = {
if (result.error) {
return showAlert(result.error);
}
Aj.location('/ads');
if (result.redirect_to) {
Aj.reload();
} else {
}
});
}
};

View file

@ -86,6 +86,9 @@ This Privacy Policy…">
<p>Telegram is a communication service. You provide your mobile number and basic account data (which may include profile name, profile picture and about information) to create a Telegram account.</p>
<p>To make it easier for your contacts and other people to reach you and recognize who you are, the screen name you choose, your profile pictures, and your <a href="https://telegram.org/faq#usernames-and-t-me">username</a> (should you choose to set one) on Telegram are always public. We don&#39;t want to know your real name, gender, age or what you like. </p>
<p>We do <strong>not</strong> require your screen name to be your real name. Note that users who have you in their contacts will see you by the name they saved and not by your screen name. This way your mother can have the public name &#39;Johnny Depp&#39; while appearing as &#39;Mom&#39; to you and as &#39;Boss&#39; to her underlings at work (or the other way around, depending on how these relationships are structured).</p>
<h4><a class="anchor" name="3-1-1-optional-data" href="#3-1-1-optional-data"><i class="anchor-icon"></i></a>3.1.1. Optional Data</h4>
<p>You can add your birthday (with or without the year) to your Telegram profile if you wish to do so. You can granularly choose which users are able to see it on your profile (by default, your Contacts), and they will be shown a reminder on the day. We may use data about your age to determine your eligibility for accessing age-specific content.</p>
<p><a href="https://telegram.org/blog/telegram-business">Telegram Business</a> subscribers can add a fixed location and a list of opening hours to their profile, to help clients identify and engage with their business more efficiently on Telegram. If you choose to add it to your profile, this information is always public.</p>
<h4><a class="anchor" name="3-2-your-email-address" href="#3-2-your-email-address"><i class="anchor-icon"></i></a>3.2. Your Email Address</h4>
<p>When you enable 2-step-verification for your account or store documents using the Telegram Passport feature, you can opt to set up a password recovery email. This address will only be used to send you a password recovery code if you forget it. That&#39;s right: no marketing or “we miss you” bullshit.</p>
<p>From September 2022, we may ask some users to provide an email address to receive login codes via email instead of SMS (with an option to use &#39;Sign in With Google&#39; / &#39;Sign in with Apple&#39;). In this case, we will receive an email address which will be stored separately from the recovery email, and will only be used to send you authentication codes when you log in to your account. The login email address will be stored until it is changed or the account is deleted.</p>
@ -143,6 +146,9 @@ This Privacy Policy…">
<li>By participating in a group with a bot.</li>
<li>By pressing buttons in messages sent by a bot.</li>
<li>By paying for goods and services via bots (see <a href="#7-third-party-payment-services">section 7</a> below).</li>
<li>By sending a <a href="https://telegram.org/blog/shared-media-join-requests-and-more#join-requests-for-groups-and-channels">join request</a> to a group or channel.</li>
<li>By using Telegram Business features that connect a chatbot to your account.</li>
<li>By opening a chat with a Telegram Business account controlled by a chatbot (see <a href="#6-5-telegram-business-chatbots">section 6.5</a> below).</li>
</ul>
<h4><a class="anchor" name="6-3-what-data-bots-receive" href="#6-3-what-data-bots-receive"><i class="anchor-icon"></i></a>6.3. What Data Bots Receive</h4>
<p>In any of the above cases, the developers of an automated user (bot) can get your public account data (see <a href="#3-1-basic-account-data">section 3.1</a> above): your screen name, username and profile picture(s).</p>
@ -153,9 +159,18 @@ This Privacy Policy…">
<li>If the bot is a member of the same group with you, it may know you are a member.</li>
<li>When you start your message with the username of an <a href="https://telegram.org/blog/inline-bots">inline bot</a> (e.g. <a href="https://t.me/gif">@gif</a>) the interface transforms so that everything you type becomes a query to that bot. This query is sent to the bot so that it can provide its service. We will warn you about this the first time you use an inline bot.</li>
<li>Bots added to groups can operate in two modes: with access to messages in the group or <a href="https://core.telegram.org/bots#privacy-mode">without access</a>. If the bot has access to messages, it can see everything that happens in the group. The interface clearly shows whether or not a bot has access to messages in groups.</li>
<li>To facilitate text localization, bots you <a href="#6-2-how-bots-can-receive-data">interact</a> with (including via chats managed by <a href="#6-5-telegram-business-chatbots">Telegram Business Chatbots</a>), may receive your interface language based on your app or operating system language settings. Note that if you update your language settings, bots may continue to receive your previous language for some time.</li>
</ul>
<h4><a class="anchor" name="6-4-bots-are-not-maintained-by-telegram" href="#6-4-bots-are-not-maintained-by-telegram"><i class="anchor-icon"></i></a>6.4. Bots Are Not Maintained by Telegram</h4>
<p>Other than our own bots, no other bots or third-party bot developers are affiliated with Telegram. They are completely independent from us. They should ask you for your permission before they access your data or you make it available to them.</p>
<h4><a class="anchor" name="6-5-telegram-business-chatbots" href="#6-5-telegram-business-chatbots"><i class="anchor-icon"></i></a>6.5. Telegram Business Chatbots</h4>
<p><a href="https://telegram.org/blog/telegram-business">Telegram Business</a> subscribers can connect third-party bots to their Telegram account, to help them automatically process and respond to messages from users.</p>
<h4><a class="anchor" name="6-5-1-communicating-with-a-business-chatbot" href="#6-5-1-communicating-with-a-business-chatbot"><i class="anchor-icon"></i></a>6.5.1. Communicating with a Business Chatbot</h4>
<p>Telegram users have been able to communicate with bots, including bots run by businesses, since 2015. With the introduction of Telegram Business, users can also seamlessly interface with bots in private chats with Telegram Business users who have connected a chatbot to their account.</p>
<p>If you message a Business user who connected a chatbot to their account, depending on their settings, you may be effectively communicating with a bot, and it will receive basic data about you as detailed in <a href="#6-3-what-data-bots-receive">section 6.3</a> above.</p>
<h4><a class="anchor" name="6-5-2-using-a-business-chatbot-to-manage-your-chats" href="#6-5-2-using-a-business-chatbot-to-manage-your-chats"><i class="anchor-icon"></i></a>6.5.2. Using a Business Chatbot to Manage Your Chats</h4>
<p>If you connect a third-party bot to your account via Telegram Business, the bot will have access to basic information about your account (see <a href="#6-3-what-data-bots-receive">section 6.3</a> above), and will be able to message you privately. Additionally, the bot will have access to all messages, media and files contained in the private chats you allow it to manage. Lastly, if you grant it permission to do so (and only in the private chats you assigned to it), the bot will be able to send messages and perform other actions on your behalf. </p>
<p>You can alter or revoke the bots permissions, including the list of chats it can access, at any time from [PATH] on official Telegram clients.</p>
<h3><a class="anchor" name="7-third-party-payment-services" href="#7-third-party-payment-services"><i class="anchor-icon"></i></a>7. Third Party Payment Services</h3>
<h4><a class="anchor" name="7-1-payment-information" href="#7-1-payment-information"><i class="anchor-icon"></i></a>7.1. Payment Information</h4>
<p>The <a href="https://core.telegram.org/bots/payments">Payment Platform for Bots</a> is available to users as of <a href="https://telegram.org/blog/payments">Telegram 4.0</a>. Telegram does not process payments from users and instead relies on different payment providers around the world. It is the payment providers that handle and store your credit card details. Neither Telegram nor the merchants on the platform (bot developers) have access to this information. Although we work with payment providers they are completely independent from Telegram. Please study their relevant privacy policies before making your data available to them. </p>
@ -169,7 +184,7 @@ This Privacy Policy…">
<p>Due to the fact that Telegram doesn&#39;t store any credit card details or transaction information, it is impossible for us to handle complaints or cashbacks any disputed payments are the responsibility of the bot developers, payment providers, and banks that participated in the exchange.</p>
<h3><a class="anchor" name="8-who-your-personal-data-may-be-shared-with" href="#8-who-your-personal-data-may-be-shared-with"><i class="anchor-icon"></i></a>8. Who Your Personal Data May Be Shared With</h3>
<h4><a class="anchor" name="8-1-other-telegram-users" href="#8-1-other-telegram-users"><i class="anchor-icon"></i></a>8.1. Other Telegram Users</h4>
<p>Other users of our Services with whom you choose to communicate with and share certain information, who may be located outside the EEA. Note that by entering into the Terms of Service and choosing to communicate with such other users of Telegram, you are instructing us to transfer your personal data, on your behalf, to those users in accordance with this Privacy Policy. We employ all appropriate technical and organizational measures (including encryption of your personal data) to ensure a level of security for your personal data that is appropriate to the risk. </p>
<p>Other users of our Services with whom you choose to communicate with and share certain information, who may be located outside the EEA. Note that by entering into the Terms of Service and choosing to communicate with such other users of Telegram, you are instructing us to transfer your personal data, on your behalf, to those users in accordance with this Privacy Policy. We employ all appropriate technical and organizational measures (including encryption of your personal data) to ensure a level of security for your personal data that is appropriate to the risk. However, note that if you chat with others and share data with them, they become capable of sharing such data further with third parties without your knowledge or consent, and Telegram has no way to prevent this.</p>
<h4><a class="anchor" name="8-2-telegrams-group-companies" href="#8-2-telegrams-group-companies"><i class="anchor-icon"></i></a>8.2. Telegrams Group Companies</h4>
<p>To provide, improve and support our Services, we may share your personal data with: <em>(1)</em> our parent company, Telegram Group Inc, located in the British Virgin Islands, <em>(2)</em> Telegraph Inc., a group member also located in the BVI; and <em>(3)</em> Telegram FZ-LLC, a group member located in Dubai. We will implement appropriate safeguards to protect the security and integrity of that personal data. This will take the form of standard contract clauses approved by the European Commission in an agreement between us and our relevant group companies. If you would like more information regarding these clauses, please contact our EEA representative using the details in <a href="#1-4-eea-representative">section 1.4</a> above.</p>
<h4><a class="anchor" name="8-3-law-enforcement-authorities" href="#8-3-law-enforcement-authorities"><i class="anchor-icon"></i></a>8.3. Law Enforcement Authorities</h4>
@ -223,7 +238,7 @@ This Privacy Policy…">
</ul>
<p><strong>September 8, 2022</strong></p>
<ul>
<li>Expanded <a href="https://telegram.org/privacy#3-2-your-email-address">3.2. Your Email Address</a> with information on login emails, available as of Telegram 9.0</li>
<li>Expanded <a href="https://telegram.org/privacy#3-2-your-email-address">3.2. Your Email Address</a> with information on login emails.</li>
</ul>
<p><strong>February 3, 2022</strong></p>
<ul>
@ -234,6 +249,11 @@ This Privacy Policy…">
<li>Updated 1.4, 9.2 and 12 to update the details of Telegrams EEA representative for GDPR matters.</li>
<li>Updated 8.2 to mention Telegraph Inc., a member of the Telegram group of companies.</li>
</ul>
<p><strong>March 31, 2024</strong></p>
<ul>
<li>Added <a href="#3-1-1-optional-data">3.1.1. Optional Data</a>.</li>
<li>Added information about <a href="/blog/telegram-business#chatbots-for-businesses">Telegram Buisness chatbots</a> to the <a href="#6-bot-messages">Bot Messages</a> section (6.2, 6.3, 6.5).</li>
</ul>
<p>Important changes made to this Privacy Policy will be notified to you via Telegram. </p>
<h3><a class="anchor" name="12-further-information" href="#12-further-information"><i class="anchor-icon"></i></a>12. Further Information</h3>
<p>If you have any questions please feel free to explore our <a href="https://telegram.org/faq">FAQ</a> or contact Telegram&#39;s Volunteer Support in-app via <em>Settings &gt; Ask a Question</em>.</p>